This skill should be used when the user says "document project", "generate docs", "create documentation", "write docs", "arness code document", "arn-code-document-project", "document this feature", "document this fix", or wants to generate developer documentation for a completed feature or bug fix. Reads plan artifacts, spec files, execution reports, and git diff to produce accurate documentation. Do NOT use this for general-purpose documentation — this is specifically for Arness pipeline projects.
79
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Generate developer documentation for a completed feature or bug fix by reading plan artifacts, spec files, execution reports, and git diff to produce accurate, reference-heavy documentation.
Pipeline position:
arn-code-execute-plan -> arn-code-review-implementation -> **arn-code-document-project** -> arn-code-shipThis skill produces a single documentation file (or directory for complex projects) that captures what was actually built, how it diverges from the original plan, and where to find everything in the codebase.
## Arness section to find:
Template version and Template updates fields are present in the ## Arness section, run the template version check procedure from ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-save-plan/references/template-versioning.md before proceeding. If these fields are not present, treat as legacy and skip.PROJECT_NAME if not provided in the trigger message.<plans-dir>/<PROJECT_NAME>/reports/.arness/docs/Read these files from <plans-dir>/<PROJECT_NAME>/:
plans/PHASE_*.md -- acceptance criteria, expected filesreports/ -- implementation reports, testing reportsIf reports are missing, warn the user that the project may not have been fully executed yet and:
Ask (using AskUserQuestion):
"Some reports are missing. The project may not have been fully executed yet. Proceed with available data?"
Options:
Find the original specification:
Spec: line referencing the spec file path<specs-dir>/ against the project nameIf no spec is found, proceed without it (some projects may not have specs).
If Git is available (check ## Arness config or run git rev-parse --is-inside-work-tree):
git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@', falling back to main), then find the merge base: git merge-base HEAD <default-branch>git diff --stat <merge-base>..HEADgit diff --name-status <merge-base>..HEADFocus on key entry points -- don't read every changed file. Prioritize:
If Git is not available, skip this step and rely on report data only.
Compare what was planned (INTRODUCTION.md, phase plans, spec) with what was built (reports, git diff):
bugsFixed in reports)Use the template from ${CLAUDE_PLUGIN_ROOT}/skills/arn-code-document-project/references/doc-template.md.
Single file for simple projects (fewer than 15 changed files AND 3 or fewer phases):
<docs-dir>/<PROJECT_NAME>.mdDirectory for complex projects:
<docs-dir>/<PROJECT_NAME>/README.md with subtopic files as neededDoc name is derived from the project name (lowercase, hyphens).
After writing:
Suggest next step: "Run /arn-code-ship to commit your changes and create a pull request."
## Arness config missing in CLAUDE.md -- inform the user: "Arness is not configured for this project yet. Run /arn-implementing or /arn-shipping to get started — it will set everything up automatically."/arn-code-save-plan and /arn-code-execute-plan first./arn-code-execute-plan to generate reports.mkdir -p.7f87870
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.