{"slug":"agent-impl-notes-log","title":"agent-impl-notes-log","summary":"Keep a running impl-notes file next to the phase meeting log while a subagent executes a task, recording design decisions, intentional deviations from spec, tradeoffs, and open questions as they happen rather than after the fact. Use at the start of any non-trivial subagent dispa","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-15T18:24:08.305118Z","repo":{"url":"https://github.com/wei18/apple-dev-skills","stars":18,"forks":0,"license":"MIT","updatedAt":"2026-09-14T03:05:05Z"},"bodyHtml":"<hr>\n<h2>name: agent-impl-notes-log\ndescription: \"Keep a running impl-notes file next to the phase meeting log while a subagent executes a task, recording design decisions, intentional deviations from spec, tradeoffs, and open questions as they happen rather than after the fact. Use at the start of any non-trivial subagent dispatch (multi-file change, ambiguous spec, new dependency or module, refactor), when ambiguity is hit mid-task, or before deviating from spec. Not the post-hoc meeting log (session-to-meeting-log); the two coexist.\"\nargument-hint: \"[topic]\"</h2>\n<h1>Agent Implementation Notes — Running Log</h1>\n<p>Invoke with a topic argument (frontmatter <a href=\"https://code.claude.com/docs/en/skills#pass-arguments-to-skills\"><code>argument-hint: \"[topic]\"</code></a>).</p>\n<h2>Purpose</h2>\n<p>The phase meeting log (<code>meetings/{date}_{topic}.md</code>) is summative — written after work completes. By that point, dozens of micro-decisions made mid-flight are already lost to the commit diff. An impl-notes log fills that gap: a <strong>concurrent record</strong> of decisions, deviations, tradeoffs, and unresolved questions, written as they happen.</p>\n<h2>When to invoke</h2>\n<p>Subagent MUST invoke this skill at the start of any dispatch matching ANY of:</p>\n<ul>\n<li>Implements behavior whose spec has known ambiguity (e.g., <code>// UNCONFIRMED</code> markers, \"Unconfirmed ?\" prerequisites).</li>\n<li>Introduces a new dependency, target, or module.</li>\n<li>Refactors existing code beyond a one-line fix.</li>\n<li>Any M- or L-size task by your workflow's task-sizing convention, if it has one (touches ≥2 files, adds new behavior, or gets a spec/plan before code).</li>\n</ul>\n<p>Subagent MAY skip this skill for trivial one-line fixes, pure typo corrections, or documentation copy edits.</p>\n<h2>File layout</h2>\n<p>Path: <code>meetings/{YYYY-MM-DD}_{topic}.impl-notes.md</code></p>\n<p>Paired naming with the phase meeting log. If the phase log is <code>meetings/2026-05-20_phase-11-foo.md</code>, the impl-notes is <code>meetings/2026-05-20_phase-11-foo.impl-notes.md</code>.</p>\n<p>If multiple subagents work on the same topic on the same day, append a numeric suffix: <code>meetings/2026-05-20_topic.impl-notes.2.md</code>.</p>\n<h2>File format</h2>\n<pre><code># Impl Notes — {topic} ({date})\n\nStatus: IN_PROGRESS\nOwner: {subagent type, e.g. \"Senior Developer\"}\nDispatched by: Leader\nStarted: {ISO timestamp}\n\n## 設計決定 (Design decisions)\n\n_What you chose when the spec was ambiguous. Include the spec reference._\n\n- **{decision name}** — Spec `docs/design.md §X.Y` says \"...\". Ambiguous on Z. Chose **A** because [reason]. Alternative was B (see §折衷).\n\n## 偏離 (Deviations)\n\n_Intentional deviations from the documented spec. Include the spec reference and the why._\n\n- **{deviation name}** — Spec says X. Implemented as Y because [reason]. Downstream impact: [what changes for callers / tests / docs].\n\n## 折衷 (Tradeoffs)\n\n_Alternatives considered and the reasoning for the current pick._\n\n- **{tradeoff topic}** — Considered: [A, B, C]. Picked **B** because [reason]. Rejected A because [reason]; rejected C because [reason].\n\n## 未決 (Open questions)\n\n_Things you want Leader / User to confirm. Be specific. Block on these before final report if they're load-bearing._\n\n- **{question}** — [specific question]. Default behavior I picked: [X]. Risk if I'm wrong: [impact].\n</code></pre>\n<h2>How to update</h2>\n<ul>\n<li><strong>Update incrementally</strong> — write the entry as you make the decision, NOT in a batch at the end. The whole point is to capture context that fades.</li>\n<li><strong>Keep entries terse but self-contained</strong> — one bullet should be readable months later without re-reading the diff.</li>\n<li><strong>Cite spec sections</strong> by section number (<code>§How.4.7</code>) so Leader can verify against the source.</li>\n<li><strong>Cross-link related entries</strong> if a 折衷 decision later becomes a 偏離.</li>\n<li><strong>Don't duplicate the diff</strong> — the file is for context, not code listings.</li>\n</ul>\n<h2>Status transitions</h2>\n<ul>\n<li><code>IN_PROGRESS</code> — work ongoing; file may be edited any time.</li>\n<li><code>COMPLETE</code> — work finished, ready for Leader review. Set this before reporting back.</li>\n<li><code>BLOCKED</code> — work paused awaiting Leader/User answer to an §未決 item. Required when an open question is load-bearing.</li>\n</ul>\n<h2>Subagent dispatch contract (Leader-side)</h2>\n<p>When Leader dispatches a subagent matching the invoke criteria, the dispatch prompt MUST include:</p>\n<blockquote>\n<p>Create <code>meetings/{date}_{topic}.impl-notes.md</code> at the start of your work using the <code>collaboration-skills:agent-impl-notes-log</code> skill format (or have it preloaded via the agent definition's <a href=\"https://code.claude.com/docs/en/sub-agents#preload-skills-into-subagents\"><code>skills:</code> field</a>). Update it incrementally — design decisions, deviations, tradeoffs, open questions. Mark <code>Status: COMPLETE</code> before final report. Include the file path in your report.</p>\n</blockquote>\n<p>Subagent's final report MUST link the impl-notes file. Leader reads it before merging the work to verify decisions match Leader's intent.</p>\n<h2>Anti-patterns</h2>\n<ul>\n<li><strong>Writing impl-notes at the end as a batch</strong> — defeats the purpose; you've already forgotten the context.</li>\n<li><strong>Logging every minor edit</strong> — file is for <em>decisions</em>, not edit history. Trivial mechanical fixes belong in the commit, not here.</li>\n<li><strong>Using this file instead of the phase meeting log</strong> — the two coexist. Phase log is summative, impl-notes is concurrent. Phase log gets archived when sealed; impl-notes can be referenced from the phase log.</li>\n<li><strong>Sealing the file without resolving 未決 items</strong> — open questions must be answered (by Leader/User) or moved to a backlog before status flips to COMPLETE.</li>\n</ul>\n<h2>Related skills</h2>\n<ul>\n<li><code>session-to-meeting-log</code>: produces the post-hoc phase meeting log; the two artifacts pair.</li>\n<li><code>leader-developer-handoff-contract</code>: defines the dispatch contract; impl-notes is one of its outputs.</li>\n<li><code>subagent-review-cycles</code>: when a subagent's work returns for review, Leader reviews the impl-notes alongside the diff.</li>\n</ul>\n","files":[{"path":"SKILL.md","sizeBytes":5790,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-15T18:25:20.773292Z","sha256":"F26BE3DA94E76AF55C7A6368E1C33F85E6B646D53F302068FE9230233FF57103","sizeBytes":2770},"review":null,"source":{"repositoryUrl":"https://github.com/wei18/apple-dev-skills","path":"collaboration-skills/skills/agent-impl-notes-log","license":"MIT","commit":"7ea7e617dac99dcabcde232336718b1281ad1af7","subtreeSha":"41965CCE352EA68F646F6BAFE1F123AB2FA13E86C5BAE0E9A5EF07DD2CBC8CEF","lastSyncedAt":"2026-09-28T20:56:10.519428Z"},"reviewedAt":"2026-09-15T18:29:12.155928Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/wei18/apple-dev-skills/tree/main/collaboration-skills/skills/agent-impl-notes-log"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install wei18-apple-dev-skills@llmmart"},{"target":"git","command":"git clone https://github.com/wei18/apple-dev-skills.git"}]}