document — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited document (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Generate or update engineering documentation for: $ARGUMENTS
This skill writes docs that are dual-audience: engineers reading on GitHub AND Claude agents reading the repo. Apply the rules below without exception.
why-not-mechanizable: skill workflow guidance; each step requires understanding the surrounding context (repo, task shape, prior state).
Parse the first word of $ARGUMENTS as the subcommand:
explain <topic> - create/update docs/explanation/<topic>.md (the why and how it fits together) (review-time: see section note)reference <topic> - create/update docs/reference/<topic>.md (lookup tables, env vars, schemas, enums) (review-time: see section note)how-to <task> - create/update docs/how-to/<task>.md (a recipe to do one thing) (review-time: see section note)tutorial <topic> - create/update docs/tutorials/<topic>.md (learning path, onboarding) (review-time: see section note)adr "<title>" - draft the next-numbered ADR in docs/adr/ (review-time: see section note)diagram <type> <topic> - add or update a mermaid diagram inside the matching doc (review-time: see section note)audit - read every docs/**/*.md, compare against current code, produce a drift report (read-only, no edits) (review-time: see section note)bootstrap - create the full docs/ skeleton in a repo that has none yet (uses ~/.claude/templates/docs-readme.md and ~/.claude/templates/adr.md) (review-time: see section note)If no subcommand matches, ask the user which one they meant before writing anything.
If a topic does not clearly fit one quadrant, ask. Do not split a single topic across quadrants.
| Quadrant | Use when... | Don't use when... |
|---|---|---|
| explanation | Reader asks why does this exist or how does this fit together | They want to do a concrete task |
| reference | Reader needs to look up an exact value, name, or signature | They want narrative context |
| how-to | Reader has a goal and needs steps | They are still trying to understand the concept |
| tutorial | Reader is new and learning end-to-end | They already know the system |
(review-time: see section note)(review-time: see section note)src/foo/bar.ts). Link, do not paste. Inline code blocks longer than 15 lines are forbidden - link to the file instead. (review-time: see section note)(review-time: see section note)rules/diagrams.md. The /diagram skill picks format and writes the source. (review-time: see section note)(review-time: see section note)(review-time: see section note)(review-time: see section note)Status: Supersedes NNNN. Never edit the body of an Accepted ADR. (review-time: see section note)(review-time: see section note)(review-time: see section note)(review-time: see section note)Mermaid is the default. Use `mermaid fenced blocks - GitHub renders natively. Diagram type by purpose:
flowchart TD for high-level architecture and decision trees (review-time: see section note)sequenceDiagram for request flows, auth flows, async messaging (review-time: see section note)erDiagram for data models (review-time: see section note)stateDiagram-v2 for state machines (order status, sync status) (review-time: see section note)flowchart LR with subgraphs for C4-context (services, queues, datastores) (review-time: see section note)Keep node labels short. Long descriptions go in adjacent prose. One diagram per doc maximum unless the doc is explicitly an architecture overview.
Switch to drawio when the diagram needs custom shapes, cloud icons, >2 swimlanes, multi-layer architecture, or precise layout. Source lives at docs/diagrams/<topic>.drawio with a committed PNG at docs/diagrams/<topic>.png (GitHub previews need the PNG; maintainers need the source). Embed via:

*Source: [`<topic>.drawio`](diagrams/<topic>.drawio)*Use the /diagram skill (or mcp__drawio__* tools directly) to author drawio diagrams. Full policy in rules/diagrams.md.
<repo>/
docs/
README.md # index grouped by Diataxis quadrant
explanation/
reference/
how-to/
tutorials/
adr/
README.md # ADR index, table of {NNNN, title, status, date}
NNNN-<slug>.md
diagrams/ # optional shared .mmd snippets, only if reusedWhen adr "<title>":
docs/adr/ for highest existing number. New file = NNNN-<kebab-title>.md, zero-padded to 4 digits. (review-time: see section note)~/.claude/templates/adr.md as the body. Fill <Title>, today's date, status Proposed. (review-time: see section note)docs/adr/README.md table. (review-time: see section note)(review-time: see section note)When audit:
docs/**/*.md. (review-time: see section note)Glob/Read. Report missing files. (review-time: see section note)Status is one of {Proposed, Accepted, Superseded by NNNN, Deprecated}. Flag malformed ADRs. (review-time: see section note)docs/reference/*.md, scan referenced enums/configs (e.g. src/**/enums/*.ts) and report mismatches between doc tables and code. (review-time: see section note)(review-time: see section note)docs/**/*.md not linked from docs/README.md. (review-time: see section note)(review-time: see section note)After bootstrapping or significant doc changes, update the repo's CLAUDE.md so it points to docs/README.md in its Documentation section. This keeps Claude's auto-discovery working.
markdownlint-cli2 docs/**/*.md if the repo has it configured (check for .markdownlint* files). (review-time: see section note)(review-time: see section note)(review-time: see section note)(review-time: see section note)If any check fails, fix it before reporting done.
(review-time: see section note)(review-time: see section note)docs/ in the current repo. (review-time: see section note)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.