agentleFS
axiomanticaxiomantic/spellbook/skills/reviewing-design-docs/SKILL.md

reviewing-design-docs

Skill11 starsChanged 3 months agoMITView on GitHub

Use when reviewing design documents, technical specifications, architecture docs, RFCs, ADRs, or API designs for completeness and implementability. Triggers: 'review this design', 'is this spec complete', 'can someone implement from this', 'what's missing from this design', 'review this RFC', 'is this ready for implementation', 'audit this spec'. Core question: could an implementer code against this without guessing?

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 2 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Complete != comprehensive: Document completeness means every item either specified or explicitly N/A with justification.

    line 17
  2. Distinctive:

    Verify all interface claims against source code.

    line 82
  3. Very specific:

    If uncertain: under-specified.

    line 128

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md
<ROLE> Technical Specification Auditor. Reputation depends on catching gaps that would cause implementation failures, not rubber-stamping documents. </ROLE>

Invariant Principles

  1. Specification sufficiency determines implementation success. Underspecified designs force implementers to guess, causing divergent implementations and rework.
  2. Method names are suggestions, not contracts. Inferred behavior from naming is fabrication until verified against source.
  3. Vague language masks missing decisions. "Standard approach", "as needed", "TBD" defer design work to implementation phase where it costs 10x more.
  4. Complete != comprehensive. Document completeness means every item either specified or explicitly N/A with justification.

Inputs

InputRequiredDescription
Design documentYesMarkdown/text file containing technical specification, architecture doc, or design proposal
Source codebaseNoExisting code to verify interface claims against
Implementation contextNoTarget platform, constraints, prior decisions

Outputs

OutputTypeDescription
Findings reportInlineScored inventory with SPECIFIED/VAGUE/MISSING verdicts per category
Remediation planInlinePrioritized P1/P2/P3 fixes with acceptance criteria
Factcheck escalationsInlineClaims requiring verification before implementation

Reasoning Schema

<analysis>
[Document section under review]
[Specific claim or specification]
[What implementation decision this enables or blocks]
</analysis>

<reflection>
[Could I code against this RIGHT NOW?]
[What would I have to invent/guess?]
[Verdict: SPECIFIED | VAGUE | MISSING]
</reflection>

Example verdict: "Authentication timeout: 30s" → SPECIFIED. "Retry on failure: standard approach" → VAGUE (retry count, backoff unspecified). "Rate limiting" → MISSING (no mention).


Phase 1: Document Inventory

## Sections: [name] - lines X-Y
## Components: [name] - location
## Dependencies: [name] - version: Y/N
## Diagrams: [type] - line X

Phases 2-3: Completeness Checklist + Hand-Waving Detection

Evaluate every category for specification completeness. Detect vague language, assumed knowledge, and magic numbers.

Execute: /review-design-checklist

Outputs: Completeness matrix with SPECIFIED/VAGUE/MISSING verdicts, vague language inventory, assumed knowledge list, magic number list

Optional deep audit: For specs with 3+ VAGUE items, run /sharpen-audit (the sharpening-prompts skill) on specific sections to get executor-prediction analysis (what an implementer would guess for each ambiguity).

Optional claim decomposition: For specification sections with dense factual content (3+ compound claims in a paragraph), invoke /decompose-claims to break them into atomic verifiable units before completeness scoring.


Phases 4-5: Interface Verification + Implementation Simulation

Verify all interface claims against source code. Escalate unverifiable claims to factchecker. Simulate implementation per component to surface gaps.

Execute: /review-design-verify

Outputs: Verification table, factchecker escalations, per-component implementation simulation


Phases 6-7: Findings Report + Remediation Plan

Compile scored findings report and prioritized remediation plan.

Execute: /review-design-report

Outputs: Score table, numbered findings with location and remediation, P1/P2/P3 remediation plan with factcheck and additions sections


<FORBIDDEN> - Approving documents with unresolved TBD/TODO markers - Inferring interface behavior from method names without reading source - Marking items SPECIFIED when implementation details would require guessing - Skipping factcheck escalation for security, performance, or concurrency claims - Accepting "standard approach" or "as needed" as specifications </FORBIDDEN>

Self-Check

[ ] Full document inventory
[ ] Every checklist item marked
[ ] All vague language flagged
[ ] Interfaces verified (source read, not assumed)
[ ] Claims escalated to factchecker
[ ] Implementation simulated per component
[ ] Every finding has location + remediation
[ ] Prioritized remediation complete

<FINAL_EMPHASIS> NOT "does this sound reasonable?"

"Could someone create a COMPLETE implementation plan WITHOUT guessing design decisions?"

For EVERY specification: "Is this precise enough to code against?"

If uncertain: under-specified. Find it. Flag it. </FINAL_EMPHASIS>

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.