User asks for design, planning, or approach exploration before implementation. Covers new features, components, refactors, or architecture decisions. Creates design docs and proposes approaches with trade-offs.
日本語の概要は準備中です。原文の説明を表示しています。
Use when implementing features, fixing bugs, or refactoring code that may invalidate existing docs. Detects stale documentation by matching the code diff against in-repo doc files and applies targeted updates. Relevant when code changes rename, remove, or add APIs, fields, config keys, or CLI flags. Also applies when the user says "update docs", "check docs", or "are the docs stale", or when reviewing a branch for documentation accuracy.
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Code changes can silently invalidate documentation. A renamed function, a changed API signature, a removed configuration option, each can leave docs describing behavior that no longer exists. This skill detects that drift by matching the code diff against in-repo documentation and updating docs whose descriptions contradict the new code.
Follow these steps in order. Do not skip steps.
DEFAULT_BRANCH=$(git rev-parse --abbrev-ref origin/HEAD | cut -d/ -f2)
git diff $(git merge-base HEAD "$DEFAULT_BRANCH")..HEAD --no-color
Record the list of files changed in the PR:
git diff --name-only $(git merge-base HEAD "$DEFAULT_BRANCH")..HEAD
If the diff is empty, output NO_DOCS_UPDATED and stop.
Explore the repository structure to identify where documentation lives. Different repos organize docs differently — look for dedicated doc directories, standalone files like README.md at any level, and any other files whose primary purpose is documentation.
Search broadly — include diagram and config files that live alongside docs:
find . -type f \( -name "*.md" -o -name "*.rst" -o -name "*.adoc" \
-o -name "*.txt" -o -name "*.mmd" -o -name "*.puml" \
-o -name "*.yaml" -o -name "*.yml" \) \
! -path "./.git/*" ! -path "./.forge/*" ! -path "./vendor/*" \
! -path "./node_modules/*" \
| head -500
Then filter the results:
If no documentation files exist in the repo, output NO_DOCS_FOUND
and stop.
Go through every changed file in the PR. For each file, extract
identifiers from the modified lines (lines starting with + or -)
and from diff hunk headers (@@ lines). Write them down as a numbered
checklist — one entry per changed file, with all identifiers from that
file.
Use the most specific form of each identifier. CLI flag names, configuration keys, full function names, and type names are good — they match only relevant docs. Avoid generic short words that would match hundreds of unrelated files. If a generic term is the only identifier available for a change, include it, but prefer specific forms when they exist.
Do not skip files. Do not prioritize some files over others. Every changed file gets an entry in the checklist.
Write a shell script that takes the identifiers from step 3 and greps for each one across the documentation files from step 2. Run the script in a single Bash call:
for id in "identifier1" "identifier2" "identifier3"; do
matches=$(grep -rlFi "$id" <doc_files> 2>/dev/null)
if [ -n "$matches" ]; then
echo "MATCH: $id -> $matches"
fi
done
Include every identifier from every checklist entry in the for
loop. The script handles the searching mechanically — no identifiers
are skipped.
From the script output, collect all matched doc files into a candidate list.
Pass 1 — Quick scan. For each candidate, view only the lines
that matched the grep (use grep -n to see them in context). Based
on the matching lines alone, give a quick verdict:
- path/to/doc.md -> possibly stale (describes behavior that changed)
- path/to/other.md -> not stale (mentions identifier in passing)
Every candidate must have a verdict. Do not skip candidates.
Pass 2 — Deep read. Only for candidates marked "possibly stale" in pass 1. Read the full file alongside the relevant section of the diff. Confirm whether the doc is actually stale. Check the file header for auto-generation markers — if the file is generated from source, skip it.
When evaluating:
This step catches stale references that grep cannot find because documentation often uses prose names that differ from code identifiers, and new code introduces identifiers that don't exist in any doc yet.
Always read the repository's README. Also read any main index or overview files at the root of doc directories. Read each file fully and compare it against the diff. Determine whether it describes any behavior, flow, or feature that the code changes affected. If it does, add it to the list of confirmed stale docs.
Also scan the discovered documentation files for any that may cover the same area as the changed code, based on your understanding of what the diff does. You don't need to read every file — use file names and paths to decide which ones are worth checking.
For each doc confirmed stale:
Do not commit automatically. Instead, present the user with a summary of every file you updated and what changed in each one. Let the user review the changes and decide whether to commit.
If docs were updated:
DOCS_UPDATED
Updated:
- [path/to/doc.md] Brief description of what was updated and why
- [path/to/other.rst] Brief description
If no docs needed updating:
NO_DOCS_UPDATED
If no doc files found:
NO_DOCS_FOUND
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
User asks for design, planning, or approach exploration before implementation. Covers new features, components, refactors, or architecture decisions. Creates design docs and proposes approaches with trade-offs.
日本語の概要は準備中です。原文の説明を表示しています。
Use when starting work in a repository under repositories/ that may lack CI configuration. Detects missing CI workflows (GitHub Actions, GitLab CI, CircleCI) and alerts the user to add one. Skips repos marked as research-only.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user asks to measure command execution time or optimize a feedback loop. Records explicit measurements and recommends faster alternatives such as unit tests versus integration tests. It is opt-in; it does not run on every command.
日本語の概要は準備中です。原文の説明を表示しています。
Team conventions for Python development — credentials, API clients, LLM response parsing, testing patterns, and data pipeline structure. Covers dotenv loading, retry logic, secret validation, and pipeline anti-patterns.
日本語の概要は準備中です。原文の説明を表示しています。
Measurement-driven code refactoring — profile before changing, measure after, keep only if metrics improve. Covers complexity reduction, extraction patterns, and bulk refactoring for mechanical changes across many files.
日本語の概要は準備中です。原文の説明を表示しています。
Scan projects for credential leaks, secrets in code, insecure patterns, LLM API key exposure, PII leakage to external AI services, and .env/.gitignore misconfigurations. Especially useful for data and API integrations, regardless of implementation language.
日本語の概要は準備中です。原文の説明を表示しています。