.claude/skills/reverse-document/SKILL.md
Generates missing design or architecture documentation by working backwards from existing code or prototypes. Use when documentation is missing for existing code or when the user mentions documenting existing implementation or reverse engineering docs.
npx skillsauth add tranhieutt/software_development_department reverse-documentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill analyzes existing implementation (code, prototypes, systems) and generates appropriate design or architecture documentation. Use this when:
Format: /reverse-document <type> <path>
Type options:
design → Generate a product design document (PRD section)architecture → Generate an Architecture Decision Record (ADR)concept → Generate a concept document from prototypePath: Directory or file to analyze
src/api/auth/ → All combat-related codesrc/core/event-system.cpp → Specific fileprototypes/stealth-mech/ → Prototype directoryExamples:
/reverse-document design src/api/payment
/reverse-document architecture src/core/entity-component
/reverse-document concept prototypes/vehicle-combat
Read and understand the code/prototype:
For design docs (PRD):
For architecture docs (ADR):
For concept docs (prototype analysis):
DO NOT just describe the code. ASK about intent:
Design questions:
Architecture questions:
Concept questions:
Before drafting, show what you discovered:
I've analyzed src/api/auth/. Here's what I found:
MECHANICS IMPLEMENTED:
- 3-hit combo system with timing windows
- Guard-break mechanic (heavy attack vs blocking enemy)
- Stamina system (depletes on attack/dodge, regens when idle)
- Stagger system (builds up, triggers vulnerable state)
FORMULAS DISCOVERED:
- Damage = Base * (1 + StrengthScaling * Level)
- Stagger buildup = AttackStaggerValue / (Enemy.Poise * 0.5)
- Stamina cost = BaseStaminaCost * (1 - EfficiencyBonus)
UNCLEAR INTENT AREAS:
1. Stamina system — pacing or resource management?
2. Stagger — core pillar or supporting feature?
3. Damage scaling — power fantasy or needs tuning?
Before I draft the design doc, could you clarify these points?
Wait for user to clarify intent before drafting.
Based on type, use appropriate template:
| Type | Template | Output Path |
|------|----------|-------------|
| design | templates/design-doc-from-implementation.md | design/docs/[system-name].md |
| architecture | templates/architecture-doc-from-code.md | docs/architecture/[decision-name].md |
| concept | templates/concept-doc-from-prototype.md | prototypes/[name]/CONCEPT.md or design/concepts/[name].md |
Draft structure:
Collaborative protocol:
I've drafted the combat system design doc based on your code and clarifications.
[Show key sections: Overview, Mechanics, Formulas, Design Intent]
ADDITIONS I MADE:
- Documented stamina as "pacing mechanic" per your clarification
- Added edge cases not in code (what if stamina hits 0 mid-combo?)
- Flagged balance concern: exponential damage scaling at high levels
SECTIONS MARKED AS INCOMPLETE:
- "Enemy AI interaction with stagger" (not fully implemented yet)
- "Weapon variety and scaling" (only sword implemented so far)
May I write this to design/docs/combat-system.md?
Wait for approval. User may request changes before writing.
When approved, write the file with special markers:
---
status: reverse-documented
date: 2026-02-13
verified-by: [User name]
---
# Combat System Design
> **Note**: This document was reverse-engineered from the existing implementation.
> It captures current behavior and clarified design intent. Some sections may be
> incomplete where implementation is partial or intent was unclear.
[Rest of document...]
After writing, suggest next steps:
✅ Written to design/docs/combat-system.md
FOLLOW-UP RECOMMENDED:
1. Run /balance-check on combat formulas (exponential scaling concern)
2. Create ADR for stamina system architecture decision
3. Implement missing edge cases:
- Stamina depletion mid-combo behavior
- Stagger state during dodge
4. Extend design doc when weapon variety is implemented
Would you like me to tackle any of these now?
| If analyzing... | Use template... | Because... |
|----------------|-----------------|------------|
| src/api/* | design-doc-from-implementation.md | Business mechanics → PRD |
| src/core/*, src/ai/* | architecture-doc-from-code.md | Core systems → ADR |
| prototypes/* | concept-doc-from-prototype.md | Experiments → concept doc |
| src/networking/* | architecture-doc-from-code.md | Technical systems → ADR |
| src/ui/* | design-doc-from-implementation.md | UI/UX → design spec |
User: /reverse-document design src/api/auth
Agent: I'll analyze your combat implementation to create a design doc.
[Reads code, discovers mechanics, formulas]
Agent: I've analyzed src/api/auth/. Here's what I found:
[Shows mechanics, formulas, unclear areas]
Before drafting, could you clarify:
1. Stamina system intent?
2. Is stagger a core pillar?
3. Damage scaling — intentional or needs tuning?
User: 1. Stamina is for pacing, prevent button mashing
2. Stagger is core — I want deliberate combat
3. Yeah, exponential is too much, should be linear
Agent: Perfect, that clarifies the vision. Let me draft the design doc.
[Shows draft with clarified intent]
May I write this to design/docs/combat-system.md?
User: Yes, write it.
Agent: ✅ Written to design/docs/combat-system.md
✅ Marked as [REVERSE-DOCUMENTED]
✅ Flagged damage scaling for rebalancing
Next steps:
- Update damage formula to linear scaling
- Run /balance-check to validate progression curve
- Document stagger as core pillar in product-pillars.md
This skill follows the collaborative design principle:
Never assume intent. Always ask before documenting "why".
design → PRD, architecture → ADR, concept → concept docdesign/docs/[system].md?" (or architecture/concept path)Deliver exactly:
design, architecture, or concept (based on argument)design/specs/[name].md or docs/technical/[name].mdtesting
Generates high-fidelity architecture diagrams, sequence flows, and component maps for SDD projects. Use when finalizing a design phase, documenting system architecture, or visualizing agentic workflows. Default style: Style 6 (Claude Official).
data-ai
Provides vector database and semantic search patterns for Pinecone, Weaviate, Qdrant, Milvus, and pgvector in RAG and recommendation systems. Use when implementing vector search or when the user mentions vector database, semantic search, embeddings, or similarity search.
development
Updates docs/technical/CODEMAP.md by scanning the current codebase structure. Run after a significant feature merge, refactor, or when CODEMAP feels stale.
development
Unlocks the codebase after a release freeze or incident freeze period to resume normal development. Use when a freeze period ends or when the user mentions unfreezing or lifting the code freeze.