documentation-architect
Transform documentation from any starting point into professional, comprehensive documentation packages using the Diátaxis framework. 7 commands: init (create structure), inventory (catalog sources), plan (create WBS), generate (create docs), sync (update from code reality), analyze (quality audit), readme (manage README/CHANGELOG). Integrates with speckit-generator for implementation-to-docs workflow. Supports specs, ADRs, RFCs as input with code walkthrough for syncing docs to reality.
$ Installer
git clone https://github.com/ddunnock/claude-plugins /tmp/claude-plugins && cp -r /tmp/claude-plugins/skills/documentation-architect ~/.claude/skills/claude-plugins// tip: Run this command in your terminal to install the skill
name: documentation-architect description: > Transform documentation from any starting point into professional, comprehensive documentation packages using the Diátaxis framework. 7 commands: init (create structure), inventory (catalog sources), plan (create WBS), generate (create docs), sync (update from code reality), analyze (quality audit), readme (manage README/CHANGELOG). Integrates with speckit-generator for implementation-to-docs workflow. Supports specs, ADRs, RFCs as input with code walkthrough for syncing docs to reality.
Documentation Architect
Create comprehensive, professional documentation using the Diátaxis framework. Works with any starting point: greenfield projects, existing specs/ADRs/RFCs, or scattered documentation.
Critical: Read GUARDRAILS.md First
Before any command, Claude MUST read and internalize the behavioral constraints in GUARDRAILS.md.
Key Guardrails Summary:
| # | Guardrail | Brief |
|---|---|---|
| 1 | No assumptions without approval | Every inference requires confirmation |
| 2 | No proceeding without confirmation | User controls progression |
| 3 | Source-grounded content | Every claim cites its source |
| 4 | Mandatory document review loop | Every document individually reviewed |
| 5 | Mandatory change logging | All changes tracked |
| 6 | Mandatory cascade analysis | Cross-document impact assessed |
| 7 | Idempotent operations | Safe to run at any project stage |
Commands
| Command | Purpose | When to Use |
|---|---|---|
/docs.init | Create docs/ structure and memory files | Starting documentation |
/docs.inventory | Catalog and classify sources | After init or adding sources |
/docs.plan | Create documentation WBS | Before generating docs |
/docs.generate | Execute plan, create docs | When plan is ready |
/docs.sync | Walk code, sync with reality | After implementation |
/docs.analyze | Quality audit (read-only) | Before release, CI/CD |
/docs.readme | Manage README.md, CHANGELOG.md | Project root files |
Quick Start
New project:
/docs.init → /docs.inventory → /docs.plan → /docs.generate
After speckit implementation:
/docs.sync → review discrepancies → update docs
Quality check before release:
/docs.analyze → address findings → /docs.readme --changelog VERSION
The Diátaxis Framework
Documentation organized around four user needs:
PRACTICAL THEORETICAL
┌─────────────────────────────┬─────────────────────────────┐
│ │ │
LEARNING │ TUTORIALS │ EXPLANATION │
│ "Help me learn" │ "Help me understand why" │
│ │ │
├─────────────────────────────┼─────────────────────────────┤
│ │ │
WORKING │ HOW-TO GUIDES │ REFERENCE │
│ "Help me do X" │ "Give me the facts" │
│ │ │
└─────────────────────────────┴─────────────────────────────┘
See references/diataxis-framework.md for detailed guidance.
/docs.init
Purpose: Establish documentation foundation.
Workflow:
- Check existing state (docs/, .claude/memory/docs-*.md)
- Detect project type (library, CLI, app, service)
- Create docs/ structure with Diátaxis layout
- Create documentation memory files
- Present summary and next steps
Outputs:
docs/
├── index.md
├── user/
│ ├── getting-started/
│ ├── guides/
│ ├── concepts/
│ └── reference/
├── developer/
│ ├── architecture/
│ ├── contributing/
│ └── reference/api/
└── _meta/
├── inventory.md
├── plan.md
└── progress.md
.claude/memory/
├── docs-constitution.md
├── docs-terminology.md
└── docs-sources.md
Integration: Auto-suggested after /speckit.init
See references/command-workflows/init-workflow.md for details.
/docs.inventory
Purpose: Catalog and classify documentation sources.
Workflow:
- Scan source locations (.claude/resources/, codebase, uploads)
- Classify by type (SPEC, ADR, RFC, CODE, DOC)
- Map to Diátaxis quadrants
- Estimate token counts for chunking
- Identify coverage gaps
Source Types:
| Type | Description | Example |
|---|---|---|
| SPEC | Requirements, features | requirements.md, PRD |
| ADR | Architecture decisions | ADR-001-auth.md |
| RFC | Proposals, designs | RFC-002-api.md |
| CODE | Docstrings, comments | Python/TS files |
| DOC | Existing documentation | README, guides |
Outputs: docs/_meta/inventory.md, updated docs-sources.md
See references/command-workflows/inventory-workflow.md for details.
/docs.plan
Purpose: Create documentation plan (Work Breakdown Structure).
Modes:
/docs.plan- Plan from inventory/docs.plan --from-speckit- Use speckit artifacts as input
Workflow:
- Load inventory
- Analyze sources for documentation needs
- Map to Diátaxis quadrants
- Design target structure
- Create prioritized WBS
- Define phases and gates
WBS Item Structure:
| ID | Document | Quadrant | Priority | Sources | Dependencies |
|----|----------|----------|----------|---------|--------------|
| WBS-001 | quickstart.md | Tutorial | HIGH | SRC-001 | None |
| WBS-002 | authentication.md | How-To | HIGH | SRC-002,SRC-003 | WBS-001 |
Outputs: docs/_meta/plan.md
See references/command-workflows/plan-workflow.md for details.
/docs.generate
Purpose: Execute plan to create documentation.
Selection Options:
/docs.generate- All pending items/docs.generate WBS-001- Specific item/docs.generate "Phase 1"- Items in phase/docs.generate --user- User docs only/docs.generate --dev- Developer docs only
Workflow:
- Load plan WBS items
- Resolve dependencies
- For each item:
- Load sources
- Apply Diátaxis guidelines
- Generate document
- Document Review Loop (mandatory)
- Log changes
- Cascade analysis
- Update memory files
- Phase gate check
Document Review Loop (per document):
Generate → Present Review → Collect Feedback
↓
[Approved] → Update Memory → Next
[Changes] → Apply → Log → Cascade → Re-present
Outputs: Generated docs in docs/user/ and docs/developer/
See references/command-workflows/generate-workflow.md for details.
/docs.sync
Purpose: Walk codebase, sync documentation with implementation reality.
Key Insight: Documentation drifts from reality during implementation. This command bridges that gap by treating code as source of truth.
Modes:
/docs.sync- Incremental sync (changed files)/docs.sync --walkthrough- Full code exploration/docs.sync --component auth- Specific component
Workflow:
- Code walkthrough (analyze implementation)
- Extract reality (APIs, configs, behavior)
- Compare to existing documentation
- Generate discrepancy report
- Present update options per finding:
- Auto-update: Apply simple fixes
- Manual review: Complex changes
- Skip: Acknowledge, don't change
- Code issue: Doc is correct, code needs fix
- Update memory files with code snapshot
Discrepancy Types:
| Type | Severity | Example |
|---|---|---|
| MISSING | HIGH | Public API not documented |
| INCORRECT | HIGH | Doc says 201, code returns 200 |
| OUTDATED | MEDIUM | References deprecated endpoint |
| UNDOCUMENTED | MEDIUM | Public function lacks docstring |
Outputs:
docs/_meta/sync-report.md.claude/memory/docs-codebase-snapshot.md- Updated documentation
Integration: Suggested after /speckit.implement
See references/command-workflows/sync-workflow.md for details.
/docs.analyze
Purpose: Read-only audit of documentation quality.
Characteristics:
- Read-only: Never modifies files
- Deterministic: Same input = same output
- Stable IDs: Finding IDs consistent across runs
Checks:
- Document quality scores
- Diátaxis coverage matrix
- Broken links, orphan pages
- TODO/placeholder markers
- User journey coverage
Quality Metrics:
| Metric | Weight | Criteria |
|---|---|---|
| Accuracy | 25% | Claims verified, sources cited |
| Clarity | 25% | Scannable, examples present |
| Completeness | 25% | All sections, no TODOs |
| Structure | 25% | Follows quadrant template |
Outputs: docs/_meta/analysis-report.md
See references/command-workflows/analyze-workflow.md for details.
/docs.readme
Purpose: Direct management of README.md and CHANGELOG.md.
Modes:
/docs.readme- Update README.md/docs.readme --init- Create from scratch/docs.readme --changelog VERSION- Add changelog entry
README Best Practices:
# Project Name
> One-line description
## Installation
## Quick Start
## Features
## Documentation (links to docs/)
## Contributing
## License
CHANGELOG Format (Keep a Changelog):
## [Unreleased]
### Added / Changed / Fixed
## [1.0.0] - YYYY-MM-DD
### Added
- Initial release
Outputs: README.md, CHANGELOG.md (with user review)
See references/command-workflows/readme-workflow.md for details.
speckit-generator Integration
| After speckit Command | Suggested docs Action |
|---|---|
/speckit.init | /docs.init |
/speckit.plan | /docs.plan --from-speckit |
/speckit.tasks | /docs.inventory |
/speckit.implement | /docs.sync |
See references/speckit-integration.md for integration details.
docs/ Output Structure
docs/
├── index.md # Landing page
│
├── user/ # USER-FACING
│ ├── getting-started/ # Tutorials
│ │ ├── quickstart.md
│ │ └── installation.md
│ ├── guides/ # How-To
│ │ └── [task].md
│ ├── concepts/ # Explanations
│ │ └── [concept].md
│ └── reference/ # Reference
│ └── configuration.md
│
├── developer/ # DEVELOPER-FACING
│ ├── architecture/ # Design, ADRs
│ │ ├── overview.md
│ │ └── decisions/
│ ├── contributing/ # Contribution guides
│ │ └── getting-started.md
│ └── reference/ # API/Technical
│ └── api/
│
└── _meta/ # Metadata (not published)
├── inventory.md
├── plan.md
├── progress.md
├── change-log.md
├── sync-report.md
└── analysis-report.md
Memory Files
| File | Purpose | Created By |
|---|---|---|
docs-constitution.md | Documentation principles | /docs.init |
docs-sources.md | Source registry | /docs.inventory |
docs-terminology.md | Term definitions | /docs.generate |
docs-codebase-snapshot.md | Code state snapshot | /docs.sync |
Idempotency Guarantees
| Command | Behavior |
|---|---|
/docs.init | Skips existing, updates changed, preserves customizations |
/docs.inventory | Re-scans, updates registry, adds new, never removes |
/docs.plan | Detects existing, offers update/regenerate |
/docs.generate | Preserves completed, regenerates pending |
/docs.sync | Always safe, produces comparison, user chooses |
/docs.analyze | Read-only, stable IDs |
/docs.readme | Proposes changes, user approves |
Scripts
| Script | Purpose | Used By |
|---|---|---|
scripts/analyze_docs.py | Quality analysis | /docs.analyze |
scripts/doc_research.py | Research competitors | /docs.inventory |
scripts/generate_wbs.py | Generate WBS | /docs.plan |
scripts/validate_docs.py | Validation checks | /docs.analyze |
scripts/sync_codebase.py | Code walkthrough | /docs.sync |
scripts/readme_generator.py | README/CHANGELOG | /docs.readme |
References
| Document | Purpose |
|---|---|
GUARDRAILS.md | Behavioral constraints |
references/diataxis-framework.md | Quadrant guidelines |
references/chunking-strategy.md | Large source handling |
references/source-tracking.md | Citation protocols |
references/quality-criteria.md | Assessment rubrics |
references/speckit-integration.md | speckit workflow |
references/command-workflows/*.md | Command details |
Anti-Patterns
| Anti-Pattern | Correct Approach |
|---|---|
| Mixed quadrant content | Separate by user need |
| No quickstart | 5-minute first experience |
| Scattered explanations | Dedicated concepts section |
| Reference-only docs | Full quadrant coverage |
| Docs drift from code | Use /docs.sync after implementation |
| Generating without sources | Register sources first |
| Proceeding without confirmation | Wait for user approval |
Repository
