content/skills/development-workflows/implementation-notes/SKILL.md
Use when implementing a multi-step spec, PRD, design doc, GitHub issue, or approved plan where decisions, deviations, and tradeoffs accumulate during coding. Maintain a live implementation-notes.md alongside the work capturing design decisions (choices made where the spec was ambiguous), intentional deviations from the spec, alternatives considered and rejection criteria, and open questions for human review. Use proactively the moment implementation of a written spec begins, before the first edit. Triggers include 实施记录, 实现笔记, 决策日志, 边写边记, 按这个 spec 实现, 按这个计划做, implementation log, decision log, spec divergence, implement this plan. Do NOT use for single-file fixes, pure investigation, one-off scripts, work without a written spec to deviate from, or simple tasks where one commit captures the reasoning.
npx skillsauth add bahayonghang/my-claude-code-settings implementation-notesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Maintain a live implementation-notes.md while implementing a written spec, so that design decisions, intentional deviations, alternatives considered, and open questions stay visible during review instead of being reverse-engineered from the diff.
A spec is never complete. As you implement, you will make choices the spec did not name. The diff records what you did. Commit messages record what changed. Neither captures why this option over the alternative, which spec line you knowingly departed from, or which question you still need a human to answer. This file does.
The goal is not to write more documentation. It is to give yourself a legitimate place to record the judgment calls you would otherwise either bury silently in code or interrupt the user to ask about.
Start before the first edit, when all of the following are true:
If no written spec exists yet, stop and invoke writing-plans first. This skill does not replace planning; it captures what happens after planning meets reality.
Do not start this file for:
If you start the file and realize the work is too small, delete it. An empty notes file is worse than no file.
Default location: implementation-notes.md at the root of the spec. If the spec lives inside the repo and the root is reserved for other use, place it at .notes/<spec-slug>.md.
If the spec is in a PR, the notes file ships with the change in the same PR.
Every entry under each section must answer something the diff cannot. Each entry is one to three sentences. Link to file paths, line ranges, or commit SHAs where useful.
Choices made where the spec was ambiguous or silent. Record the choice point and why this option was picked over a named alternative.
cache/store.py:42."Places where the implementation intentionally departs from the spec. Quote the spec line, then state the change and the reason.
retries: 5. Implemented with retries: 3 because the upstream rate-limits at 4 req/s and 5 retries blows the budget. See client.py:88."Alternatives considered and rejected. Include the rejection criterion so a reviewer does not waste cycles re-evaluating the same option.
spec.md:14). In-process queue is sufficient at current scale (<1k req/min)."Items that need a human to answer before merge. Phrase each so a reviewer can answer yes/no or pick one from a short list.
## 2026-05-20 session 2 is the only timestamp needed.[reconstructed] and treat the reasoning as low-confidence.| Anti-pattern | Counter-rule |
|---|---|
| Chronological log — "added function X, then function Y, then ran tests" | If an entry could be reconstructed from git log --stat, delete it. Only write what the diff alone cannot explain. |
| End-of-session backfill — writing the whole file at the end | Append at the moment of the decision. A note written hours later is fiction dressed as fact. |
| Over-triggering — maintaining notes for a one-commit fix | Gate at the start of work. If the spec is under ~50 lines or the work fits in one commit, skip this skill and put the reasoning in the commit body. |
Append entries as decisions land. Do not batch. Do not "clean up later." The file is meant to be a low-friction scratchpad that produces a high-signal artifact precisely because it is written in-flight.
A session that adds zero entries is fine if no real decisions were made. Padding the file is worse than leaving it empty.
writing-plans: This skill activates after a plan exists. If no plan, run writing-plans first.subagent-driven-development: When subagents implement tasks, the parent maintains this file. Subagents report their decisions back; the parent appends. Never let multiple subagents write to this file concurrently — entries will conflict and reasoning will get lost.git-commit: When a notes entry maps one-to-one to a commit, the commit body should link to the entry (e.g., See implementation-notes.md "Retry count deviation"). Do not duplicate the reasoning in both places.session-wrap: When wrapping a session, the "Key decisions" section should pull from this file rather than from memory. If the notes file is empty, that is the truthful answer.code-auditor / PR review: Reviewers should read this file before reading the diff. It frames what the diff is trying to do.# Implementation notes — <spec name>
Spec: <link or path>
Started: <YYYY-MM-DD>
## Decisions
- (none yet)
## Deviations
- (none yet)
## Tradeoffs
- (none yet)
## Open questions
- (none yet)
Keep the four headings even when empty. The empty heading is a question to yourself at the next decision point.
Before requesting review:
git log --stat alone.Deviations entry quotes the spec line it departs from.Open questions entry is phrased so a reviewer can answer yes/no or pick one.tools
文献深度解读助手,像研究生导师一样交互式解读 Zotero 库中的学术论文,面向计算机科学、深度学习、自动化等方向(个人向)。当用户提供文献题目、DOI、PDF 或要求解读某篇论文时触发,通过 Zotero MCP 优先获取全文,并根据用户意图自动选择快速筛选、导师深读或研究复盘模式。完整深读时先完成叙事类型判断、阅读前预检、novelty 校准和作者思考路径重建,再整体概览,并基于图例、正文和表格逐图详细解读(Zotero MCP 无法提取 PDF 图片,解读基于文字信息,必要时提醒上传图片)。适用于:(1)快速判断文献是否值得深读 (2)深入理解某篇论文 (3)学习文章中的方法和技术 (4)批判性分析研究设计 (5)寻找研究灵感。需要多篇论文综合、对比或找研究空白,或 arXiv/DOI 批量规范化时,改用 paper-workbench。
development
Review Codex, Claude, OpenAI, or other agent skill directories as reusable capability packages. Use when asked to audit, review, improve, score, rewrite, debrand, package, or document a SKILL.md, skill package, marketplace skill, or agent skill directory, especially when the user wants a comprehensive findings-first report with concrete patch recommendations and validation steps.
development
Turn vague or complex Codex tasks into strong `/goal` commands with outcome, verification, constraints, boundaries, iteration policy, completion evidence, and pause/block conditions. Use when the user asks for Codex goal instructions, Goal 指令, 目标指令, `/goal` prompts, 中文 Goal 模板, plan-to-goal interviews, success criteria, verification commands, or bounded agent work definitions.
tools
Write, debug, and validate ast-grep structural code search rules. Use this skill when the user needs syntax-aware code search, AST pattern matching, structural refactor discovery, language-construct queries, or searches that plain text tools like rg can miss, such as finding functions with particular descendants, calls inside specific contexts, missing error handling, React hook shapes, decorators, or other Tree-sitter-backed code structures.