Write documentation using proven patterns - ADRs, API reference, runbooks, READMEs
Creates technical documentation using proven patterns (ADRs, API references, runbooks, READMEs) with proper structure and examples. Use when you need to document architecture decisions, APIs, operational procedures, or project setup.
/plugin marketplace add tachyon-beep/skillpacks/plugin install muna-technical-writer@foundryside-marketplace[document_type] [topic_or_system]You are creating technical documentation using proven patterns that ensure findability and usability.
Structure determines findability. Well-structured docs get used; poorly structured docs get ignored.
Every abstract concept needs a concrete, runnable example. Every audience needs information in their language.
If document type is unclear, determine:
| Document Type | Use When | Key Sections |
|---|---|---|
| ADR | Recording architecture/technology decisions | Context, Decision, Alternatives, Consequences |
| API Reference | Documenting REST/GraphQL APIs | Auth, Rate Limiting, Pagination, Endpoints, Errors |
| Runbook | Operational procedures | Prerequisites, Safety, Procedure, Verification, Rollback |
| README (Simple) | Small utilities (<100 lines) | Installation, Usage, Options |
| README (Standard) | Most projects | Features, Installation, Quick Start, Usage, Config |
Use for: Technology choices, architecture patterns, trade-off decisions
# ADR-NNN: [Short Title]
**Status**: [Proposed | Accepted | Deprecated]
**Date**: YYYY-MM-DD
**Deciders**: [Names/roles]
## Summary
[One-paragraph summary]
## Context
[Problem being solved, constraints, requirements]
## Decision
We will [decision statement].
## Alternatives Considered
### Alternative 1: [Name]
**Pros**: [List]
**Cons**: [List]
**Why rejected**: [Specific reason]
## Consequences
### Positive
- [Good outcome 1]
### Negative
- [Trade-off 1]
## References
- [Links]
Use for: REST APIs, GraphQL APIs, SDK interfaces
Required Sections:
Per Endpoint:
#### [Action] [Resource]
**Endpoint**: `GET /resource/{id}`
**Parameters**:
- `id` (string, required): Resource identifier
**Example Request**:
```bash
curl -X GET "https://api.example.com/v1/resource/123" \
-H "Authorization: Bearer token..."
Success Response (200 OK):
{
"id": "123",
"name": "Example"
}
Error Responses:
401 Unauthorized: Invalid token404 Not Found: Resource doesn't exist
## Runbook Pattern
**Use for**: Deployment, incident response, maintenance, recovery
**Required Sections**:
1. Purpose & Owner
2. Prerequisites (access, tools, knowledge)
3. Safety Checks (stop conditions)
4. Procedure (numbered steps with commands)
5. Verification (success criteria)
6. Rollback (recovery steps)
7. Troubleshooting (common issues)
8. Escalation (who to contact)
**Per Step**:
```markdown
### Step N: [Action]
**Purpose**: [What this achieves]
```bash
# Command to run
Expected Result: [What you should see]
If this fails: [Troubleshooting]
## README Pattern
**Simple** (utilities, scripts):
- What it does (one sentence)
- Installation
- Usage example
- Options
**Standard** (applications, libraries):
- Description
- Features
- Installation (prerequisites, steps)
- Quick Start
- Usage (basic, advanced)
- Configuration
- Documentation links
- Contributing
- License
## Writing Process
### Step 1: Determine Type and Audience
Ask:
- What document type fits this content?
- Who will read this?
- What should they do after reading?
### Step 2: Apply Pattern
Use the appropriate pattern structure above.
### Step 3: Apply Clarity Rules
**Active Voice**: "Run tests" not "tests should be run"
**Concrete Examples**: Every instruction has runnable example
**Scannable Structure**: Headings, bullets, tables, code blocks
**Progressive Disclosure**: Essentials first, details expandable
### Step 4: Verify Completeness
**ADR**: Has alternatives? Has consequences (positive AND negative)?
**API**: Has auth? Rate limiting? Pagination? Error codes?
**Runbook**: Has prerequisites? Rollback? Troubleshooting?
**README**: Has installation? Usage example? Is it runnable?
## Output Format
Create documentation in the appropriate pattern, then provide:
```markdown
## Documentation Created
**Type**: [ADR/API/Runbook/README]
**File**: [Path where saved]
**Audience**: [Who this is for]
### Completeness Check
- [x] [Required section 1]
- [x] [Required section 2]
- [ ] [Optional section - not applicable because...]
### Review Recommendations
- [Any follow-up needed]
import glob
# For security documentation
security_pack = glob.glob("plugins/ordis-security-architect/plugin.json")
if security_pack:
print("Available: ordis-security-architect for threat model documentation")
# For diagram conventions
diagram_ref = glob.glob("plugins/muna-technical-writer/skills/using-technical-writer/diagram-conventions.md")
if diagram_ref:
print("Available: diagram-conventions.md for architecture diagrams")
This command covers:
Not covered: