Technical specification writing for implementation details. Use when documenting how to build a solution (post-decision), API contracts, schemas, and system design. Complements RFC skill which handles decision-making.
Creates detailed implementation specifications with API contracts, schemas, and architecture designs. Activates when documenting how to build solutions after decisions are made, complementing RFCs which handle option evaluation.
/plugin marketplace add jpoutrin/product-forge/plugin install devops-data@product-forge-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/tech-spec-checklist.mdreferences/tech-spec-template.mdThis skill automatically activates when documenting implementation details for a solution. Unlike RFC (which evaluates options), Tech Specs document how to build something when the approach is already decided.
| Aspect | RFC | Tech Spec |
|---|---|---|
| Purpose | Evaluate options, make decision | Document implementation details |
| Options Analysis | Required (min 2) | Not applicable |
| When Used | Before decision | After decision (or when no decision needed) |
| Audience | Decision makers, stakeholders | Implementers, developers |
| Lifecycle | DRAFT → REVIEW → APPROVED → COMPLETED | DRAFT → APPROVED → REFERENCE |
Use Tech Spec when:
Use RFC instead when:
Header Metadata
---
tech_spec_id: TS-XXXX
title: [Component/Feature Name]
status: DRAFT | APPROVED | REFERENCE | ARCHIVED
decision_ref: RFC-XXXX # Optional - link to RFC if one exists
author: [Name]
created: YYYY-MM-DD
last_updated: YYYY-MM-DD
---
Executive Summary (1 paragraph)
Design Overview
Detailed Specifications For each component:
Data Model / Schema
API Specification
Security Implementation
Performance Considerations
Testing Strategy
Deployment & Operations
Dependencies
Implementation Checklist
DRAFT → APPROVED → REFERENCE
↓
ARCHIVED (when superseded or deprecated)
| Status | Description |
|---|---|
| DRAFT | Being written, not yet reviewed |
| APPROVED | Ready for implementation |
| REFERENCE | Implementation complete, serves as documentation |
| ARCHIVED | Superseded or no longer relevant |
Tech Specs can optionally link to an RFC:
decision_ref: RFC-0042 # Links to the decision that led to this spec
When to link:
When standalone is fine:
Before marking APPROVED:
Be Specific
Include Examples
Document Constraints
Reference Don't Duplicate
TS-XXXX-<short-description>.md
Examples:
TS-0001-user-authentication-api.mdTS-0015-payment-integration.mdTS-0042-cache-layer-design.mdtech-specs/
├── draft/ # Work in progress
├── approved/ # Ready for implementation
├── reference/ # Implementation complete
└── archive/ # Superseded/deprecated
└── YYYY/
The CTO Architect uses this skill for:
Post-RFC Implementation Planning
Standalone Specifications
Delegation to Specialists
| Command | Description |
|---|---|
/create-tech-spec <name> | Create new Tech Spec from template |
/list-tech-specs | List all Tech Specs with status |
/tech-spec-status <id> | View or update Tech Spec status |
./references/tech-spec-template.md./references/tech-spec-checklist.mdThis 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.