From arn-code
Generates developer documentation for completed Arness pipeline projects by reading plan artifacts, specs, execution reports, and git diffs. Use after implementation for accurate feature or bug fix docs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/arn-code:arn-code-document-projectThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
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.
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-ship
This 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.npx claudepluginhub appsvortex/arness --plugin arn-codeAudits existing docs and generates full project documentation in docs/ including architecture.md, getting-started.md, development.md, API refs, and ADRs. For onboarding and context sharing.