This skill should be used when creating a new .md file, completing an analysis or audit, deciding whether to archive or delete docs, or when uncertain if something should be documented. Covers document types, naming conventions, the "Link Test", and when to extract patterns to skills.
Provides documentation lifecycle management by determining when to create, archive, or delete docs, applying naming conventions, and extracting repeatable patterns to skills. Use when creating .md files, completing audits, or uncertain about documentation decisions.
/plugin marketplace add ImproperSubset/hh-agentics/plugin install cc-governance@hh-agenticsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Maintain clean, useful documentation by following clear guidelines for what to create, how to name it, where to put it, and when to archive or delete it.
Invoke this skill when:
Timeline:
T0: Create ANALYSIS.md during investigation
T1: Create FIX_PLAN.md with proposed changes
T2: Implement fixes, create skills encoding patterns
T3: Create ANOTHER_ANALYSIS.md for different issue
T4: Months later...
↓
docs/ directory has 20+ files
↓
Generic names: ANALYSIS.md, AUDIT.md, PLAN.md
No dates, no clear relevance
↓
Can't tell what's current vs historical
Can't tell what's useful vs clutter
↓
New developers overwhelmed
Nobody links to these docs
Nobody maintains them
Result: Documentation becomes write-only. Nobody reads it, nobody trusts it.
Purpose: Timeless reference documentation that developers actively use
Characteristics:
Naming: {topic}-guide.md
Location: docs/guides/
Lifecycle: Keep forever, update as needed
Test: "Would a new developer need this to work on the project?"
Purpose: Explain system design, structure, and "why" decisions
Characteristics:
Naming: {COMPONENT}_ARCHITECTURE.md or {COMPONENT}_DESIGN.md
Location: docs/architecture/
Lifecycle: Keep forever, update when architecture changes
Test: "Does this explain why the system is structured this way?"
Purpose: Document important decisions to prevent re-litigation
Characteristics:
Naming: YYYY-MM-DD-{decision-title}.md
Location: docs/decisions/
Lifecycle: Keep forever (shows evolution of thinking)
Test: "Would this prevent someone from proposing we re-do something we already tried?"
Template:
# {Title of Decision}
**Date:** YYYY-MM-DD
**Status:** Accepted | Superseded by ADR-XXX
**Context:** What problem are we solving?
**Decision:** What did we decide to do?
**Alternatives Considered:**
- Option A: Pros/Cons
- Option B: Pros/Cons
**Consequences:** What are the implications?
**References:** Links to related issues, PRs, discussions
Purpose: Encode repeatable patterns and workflows
Characteristics:
Naming: {descriptive-name}/SKILL.md
Location: .claude/skills/{skill-name}/
Lifecycle: Keep forever, update as patterns evolve
Test: "Will I do this task more than once? Does it have clear steps?"
Purpose: Document completed investigations and fixes
Characteristics:
Naming: YYYY-MM-DD-{audit-name}.md
Location: docs/archive/ (if kept at all)
Lifecycle:
Test: "Does this provide context that isn't captured elsewhere?"
Purpose: Temporary analysis during active development
Characteristics:
Naming: YYYY-MM-DD-WIP-{topic}.md or just work in memory/notes
Location: Root directory (temporary) or don't create at all
Lifecycle:
Test: "Will this still be useful a month from now?" (If no, delete it)
Purpose: Persistent tracking of active work and deferred ideas across sessions
There are TWO tracking locations - project-specific and cross-project:
docs/tracking/)For work tied to a specific project:
Files:
docs/tracking/ACTIVE.md - Current work in progress for THIS projectdocs/tracking/BACKLOG.md - Deferred ideas for THIS projectUse when:
~/git/hh-meta/tracking/)For ideas, notes, and backlog that span projects or aren't project-specific:
Files:
tracking/IDEAS.md - Future features, exploration ideas, "what if" thoughtstracking/BACKLOG.md - Deferred work with context for later pickuptracking/PROJECTS.md - Active projects overview and statustracking/NOTES.md - Learnings, decisions, patterns discoveredUse when:
Is this tied to a specific project's codebase?
↓ YES → Project tracking (docs/tracking/)
↓ NO
Is this a general idea, learning, or cross-cutting concern?
↓ YES → Cross-project tracking (~/git/hh-meta/tracking/)
↓ UNCLEAR → ASK THE USER where it should go
IMPORTANT: When unclear whether something is project-specific or cross-project, ASK the user: "Should I track this in the project's docs/tracking/ or in hh-meta for cross-project visibility?"
Characteristics:
Lifecycle: Permanent files, content updated as work progresses
Test: "Is this tracking active work or deferred ideas?" (If yes, use tracking docs)
New information/analysis → Should this be documented?
↓
Q1: Is this a repeatable pattern/workflow?
↓ YES
→ Create SKILL
→ Delete working notes
↓ NO
Q2: Is this explaining HOW to do something?
↓ YES
→ Create GUIDE (docs/guides/)
→ Permanent
↓ NO
Q3: Is this explaining WHY the system is designed this way?
↓ YES
→ Create ARCHITECTURE doc (docs/architecture/)
→ Permanent
↓ NO
Q4: Is this a decision we might re-litigate?
↓ YES
→ Create ADR (docs/decisions/YYYY-MM-DD-*.md)
→ Permanent
↓ NO
Q5: Is this tracking active work or deferred ideas?
↓ YES
→ Q5a: Is this project-specific?
↓ YES → Update docs/tracking/ (ACTIVE.md or BACKLOG.md)
↓ NO → Update ~/git/hh-meta/tracking/ (IDEAS, BACKLOG, NOTES, or PROJECTS)
↓ UNCLEAR → ASK USER where it should go
→ Persistent across sessions
↓ NO
Q6: Is this just organizing thoughts or temporary analysis?
↓ YES
→ Don't create file OR create WIP doc
→ Delete after extracting to skill/guide/ADR
→ NEVER commit working docs to repo
↓ NO
→ Don't document it
/
├── README.md # Project overview
├── CONTRIBUTING.md # Development guidelines
├── CLAUDE.md # AI assistant guidance
│
├── docs/
│ ├── README.md # INDEX of all documentation
│ │
│ ├── guides/ # Active reference (HOW)
│ │ ├── styling-guide.md
│ │ ├── api-guide.md
│ │ └── testing-guide.md
│ │
│ ├── architecture/ # System design (WHY structure)
│ │ ├── component-architecture.md
│ │ └── data-flow-design.md
│ │
│ ├── decisions/ # ADRs (WHY decisions)
│ │ ├── 2025-11-15-approach-selection.md
│ │ └── 2025-12-01-cache-strategy.md
│ │
│ ├── tracking/ # Session continuity
│ │ ├── ACTIVE.md # Current work in progress
│ │ └── BACKLOG.md # Deferred ideas (access on demand)
│ │
│ └── archive/ # Historical (optional)
│ └── 2025-10-15-performance-audit.md
│
└── .claude/skills/ # Repeatable patterns
├── README.md # Skills index
├── documentation-management/ ← This skill!
└── ...
Pattern: {topic}-guide.md
Examples:
dialog-compatibility-guide.mdperformance-update-guide.mdtemplate-authoring-guide.mdWhy: Descriptive, timeless, sorts alphabetically by topic
Pattern: {component}-architecture.md or {component}-design.md
Examples:
scss-architecture.mddata-flow-design.mdsheet-registration-design.mdWhy: Clear that it's about system design, not a how-to guide
Pattern: YYYY-MM-DD-{short-title}.md
Examples:
2025-11-15-virtual-lists-over-drag-drop.md2025-12-01-redis-vs-memory-cache.md2025-12-20-inline-styles-for-shadow-dom.mdWhy: Sorts chronologically, immediately clear when decision was made
Trigger: Audit is complete, problem is solved, lessons are encoded
Process:
docs/archive/ with dateTrigger: Document served its purpose, value is captured elsewhere
Safe to Delete:
The "Link Test":
Question: Would you add a link to this doc in docs/README.md?
NO → Delete it
MAYBE → Archive with date
YES → Keep in active location
Trigger: Identified a repeatable pattern with clear steps
Process:
Before creating documentation:
Before committing documentation:
Periodic maintenance (monthly):
Last Updated: 2026-01-04
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.