Help us improve
Share bugs, ideas, or general feedback.
From blueprints
Researches codebase systems and generates or updates technical blueprint docs in repo root blueprints/ directory with architecture diagrams and data flows.
npx claudepluginhub thebushidocollective/han --plugin blueprintsHow this skill is triggered — by the user, by Claude, or both
Slash command
/blueprints:create-blueprintThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
blueprints:create-blueprint - Generate or update blueprint documentation for a specific system
Analyzes full codebase to generate or update Markdown blueprint files documenting all major systems in repo root/blueprints/.
Creates long-form technical documentation from existing codebases by analyzing architecture, patterns, and implementation details.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
blueprints:create-blueprint - Generate or update blueprint documentation for a specific system
/blueprint <system-name>
Research a specific system in the codebase and create or update its technical blueprint documentation in the blueprints/ directory at the repository root.
CRITICAL: Blueprints MUST be created at the repository root, never in subdirectories or packages.
{repo-root}/blueprints/{system-name}.md{repo-root}/packages/foo/blueprints/{system-name}.md{repo-root}/src/blueprints/{system-name}.mdBlueprints are repository-wide system design documents. A single system may span multiple packages or directories, but there should be ONE blueprint at the repo root describing the entire system.
You are tasked with creating or updating technical blueprint documentation for a specific system.
The user will specify which system to document. This could be:
Thoroughly investigate the system:
Before creating a new blueprint, check what already exists:
Glob("blueprints/*.md") to see all existing blueprint filesGrep to search frontmatter in blueprints/ for related topicsRead("blueprints/{related-name}.md") to check for overlapUse the Write tool to create or update the blueprint file at blueprints/{system-name}.md.
The file MUST include YAML frontmatter:
---
name: system-name
summary: Brief one-line description
---
# {System Name}
...
The blueprint content should follow this structure:
---
name: system-name
summary: Brief one-line description
---
# {System Name}
{Brief one-line description}
## Overview
{2-3 paragraphs explaining the system's purpose, why it exists, and its role in the larger system}
## Architecture
{Describe the system structure}
### Components
- **{Component A}** - {description}
- **{Component B}** - {description}
### Data Flow
{How data moves through the system}
### Dependencies
- {Dependency 1} - {why it's needed}
- {Dependency 2} - {why it's needed}
## API / Interface
### Public Functions/Methods
#### `functionName(params)`
{Description}
**Parameters:**
- `param1` (type) - {description}
**Returns:** {description}
### Commands
{If applicable, document CLI commands}
### Configuration
{Document configuration options}
## Behavior
### Normal Operation
{How the system behaves under normal conditions}
### Error Handling
{How errors are handled}
### Edge Cases
{Notable edge cases and how they're handled}
## Files
Key implementation files:
- `path/to/main.ts` - {brief description}
- `path/to/helper.ts` - {brief description}
## Related Systems
- [{Related System}](./related-system.md) - {relationship description}
After completing the research and documentation:
Write("blueprints/{system-name}.md", content)Note: The blueprint index at .claude/rules/blueprints/blueprints-index.md is automatically regenerated by the SessionStart hook - you don't need to manually update it.