product-tech-spec
SKILL.md
/product-tech-spec — Technical Specification
Write technical specs that bridge product requirements and implementation plans. Covers architecture, APIs, data models, and component hierarchy.
When to Use
- User says "tech spec", "technical spec", "architecture doc"
- After writing a PRD and before planning implementation
- When architecture decisions need to be documented
Process
Step 1: Gather Context
Check for existing artifacts:
docs/prds/— Read the PRD this spec implementsdocs/brainstorms/— Additional context if available- User-provided description or
$ARGUMENTS
Step 2: Research (Parallel Agents)
Spawn 2 agents IN PARALLEL using the Task tool:
Agent 1 — Codebase Analyst
Task(subagent_type: "general-purpose", description: "Analyze codebase for tech spec")
prompt: Analyze this project's architecture to inform a tech spec for [FEATURE].
Focus on: tech stack and versions, existing data models, API patterns,
component structure, auth patterns, state management approach.
Return findings relevant to architectural decisions.
Agent 2 — Practices Researcher
Task(subagent_type: "general-purpose", description: "Research architecture patterns")
prompt: Research architecture best practices for [FEATURE TYPE] given [TECH STACK].
Focus on: recommended patterns, data model design, API design,
component architecture, security considerations.
Return practical architectural guidance.
Step 3: Write Tech Spec
Write to docs/tech-specs/YYYY-MM-DD-<name>.md using the template in references/tech-spec-template.md.
Key sections:
- Overview — What this spec covers and its relationship to the PRD
- Architecture — System design, component hierarchy, data flow
- Data Models — Database tables, types, relationships
- API Design — Endpoints, server actions, or edge functions
- Component Hierarchy — UI structure and state ownership
- Security — Auth, RLS policies, input validation
- Migration Plan — How to get from current state to target state
Writing rules:
- Reference specific existing patterns from the codebase analysis
- Make decisions, don't list options (that's what the brainstorm was for)
- Include concrete examples (schema SQL, TypeScript types, component trees)
- Call out risks and unknowns
Step 4: Review with User
Present key architectural decisions and use AskUserQuestion to confirm approach before finalizing.
Output
Save to: docs/tech-specs/YYYY-MM-DD-<name>.md
Next Steps
- Ready to plan tasks? →
/engineer-plan - Need to start building? →
/engineer-work
Weekly Installs
8
Repository
elliottrjacobs/…h-skillsGitHub Stars
1
First Seen
Feb 12, 2026
Security Audits
Installed on
opencode8
gemini-cli8
claude-code8
github-copilot8
codex8
cline8