/tech-spec — 작은 프로젝트용 "간단 기술 설계서"#
| 항목 | 내용 |
|---|---|
| 실행 명령 | /cc-product:tech-spec |
한마디로#
작은 프로젝트를 위한 가벼운 설계 메모입니다. 큰 집을 지을 때 쓰는 두꺼운 설계도(PRD) 대신, 작은 창고를 지을 때 쓰는 한두 장짜리 약식 도면이라고 보면 됩니다. 20~40분이면 끝납니다.
누가·언제 쓰나요#
- 만들 것이 작고 명확할 때 (스토리 10개 이하의 소규모 작업)
- 거창한 기획 문서까지는 필요 없지만, 무엇을·어떻게 만들지 한 번 정리하고 시작하고 싶을 때
- 제품 브리프(product brief)가 이미 있으면 그걸 바탕으로 더 빠르게 진행됩니다
👉 규모가 커지면(스토리가 많고 페이지가 늘어나면) 이 명령 대신 정식 기획 문서인 /prd를 쓰는 게 낫습니다.
무엇을 해주나요#
.bmad/tech-spec-{프로젝트이름}-{날짜}.md 파일 한 개를 만들어 줍니다. 그 안에는:
- 문제와 해결책 — 무엇을 왜 만드는지
- 요구사항 목록 — 만들어야 할 기능들 (그리고 만들지 않을 범위)
- 기술 방식 — 어떤 언어·DB·인프라·라이브러리를 쓸지
- 구현 계획 — 작업을 1~10개 스토리로 쪼갠 목록과 순서
- 완료 기준 / 비기능 요구사항 / 의존성·리스크·일정 — 언제 끝났다고 볼지, 성능·보안 등
어떻게 쓰나요#
# 기술 설계서 작성 시작
/tech-spec
명령을 실행하면 PM(제품 매니저) 역할로 진행되며, 문제·요구사항·기술 방식·계획 등을 차례로 질문해 줍니다. 답하면 그 내용으로 위 문서를 자동 작성합니다. 작성이 끝나면 다음 안내가 나옵니다.
- 스토리 1개(Level 0):
/create-story로 스토리를 만들고/dev-story로 구현 - 스토리 여러 개(Level 1):
/sprint-planning으로 스토리를 정리하고 구현 계획 수립
안에서 무슨 일이 벌어지나요#
질문 → 정리 → 문서 생성의 흐름으로 진행됩니다.
- 사전 준비 — 기존 설정과 진행 상태를 불러오고, 제품 브리프가 있으면 함께 읽습니다.
- 순서대로 인터뷰 — 문제/해결책 → 요구사항(과 제외 범위) → 기술 방식(언어·DB·아키텍처·API) → 구현 스토리 → 완료 기준 → 성능·보안 등 → 의존성·리스크·일정을 차례로 물어봅니다.
- 문서 생성 — 답변을 템플릿에 채워
.bmad/tech-spec-...md파일로 저장하고 요약을 보여줍니다. - 검증과 마무리 — 체크리스트로 빠진 곳이 없는지 확인받고, 진행 상태를 갱신한 뒤 다음 단계를 추천합니다.
⚙️ 상세 옵션·실행 명세 (개발자 / AI 에이전트용)
Workflow Overview#
Goal: Create focused technical specification for small projects
Phase: 2 - Planning
Agent: Product Manager
Inputs: Product brief (if available), requirements discussion
Output: .bmad/tech-spec-{project-name}-{date}.md
Duration: 20-40 minutes
Best for: Level 0-1 projects (≤10 stories)
Pre-Flight#
- Load context per
helpers.md#Combined-Config-Load - Check status per
helpers.md#Load-Workflow-Status - Load product brief if exists (read
.bmad/product-brief-*.md) - Load template per
helpers.md#Load-Template(tech-spec.md)
Streamlined Requirements Process#
Use TodoWrite to track: Pre-flight → Requirements → Technical → Plan → Generate → Validate → Update
Approach: Pragmatic and efficient for smaller scope.
Section 1: Problem & Solution#
If product brief exists, extract:
- Problem statement
- Proposed solution
If NO brief: Ask:
"In 2-3 sentences:
- What problem are you solving?
- What's your solution?"
Store as: {{problem_statement}}, {{proposed_solution}}
Section 2: Requirements List#
Explain:
"For small projects, we'll keep requirements simple and actionable."
Ask: "What needs to be built? List the key features or capabilities."
Format as bulleted list:
- Feature 1: Description with acceptance criteria
- Feature 2: Description with acceptance criteria
- Feature 3: Description with acceptance criteriaTypical count: 3-8 requirements
Also ask: "What is explicitly OUT of scope?"
Store as: {{requirements_list}}, {{out_of_scope}}
Section 3: Technical Approach#
Technology Stack: Ask: "What technologies will you use?"
- Language/framework
- Database
- Hosting/deployment
- Key libraries
Format:
- **Language/Framework:** Python 3.11 + FastAPI
- **Database:** PostgreSQL 15
- **Hosting:** AWS (ECS + RDS)
- **Key Libraries:** SQLAlchemy, Pydantic, pytestStore as: {{tech_stack}}
Architecture Overview: Ask: "At a high level, how does the system work?"
Encourage: Simple description or diagram text
- Main components
- Data flow
- Key interactions
Store as: {{architecture_overview}}
Data Model (if applicable): If data-heavy: Ask: "What are the main data entities and their relationships?"
Format as simple list or markdown table.
Store as: {{data_model}}
API Design (if applicable): If API project: Ask: "What are the key API endpoints?"
Format:
- GET /api/users - List users
- POST /api/users - Create user
- GET /api/users/{id} - Get user by IDStore as: {{api_design}}
Section 4: Implementation Plan#
Stories: Ask: "Let's break this into implementable pieces. What are the 1-10 stories?"
For Level 0 (single story):
- Just one story that encompasses everything
For Level 1 (1-10 stories):
- Break into logical chunks
- Each story should be 1-3 days of work
Format:
1. **Story Name** - What it delivers
2. **Story Name** - What it delivers
...Store as: {{stories_list}}
Development Phases (optional for Level 1): If multiple stories, ask about order:
"What's the logical implementation order?"
Store as: {{development_phases}}
Section 5: Acceptance Criteria#
Ask: "How will you know it's complete? What must work?"
Format as checklist:
- [ ] Feature X works as described
- [ ] All tests pass
- [ ] Deployed to [environment]
- [ ] User can successfully [key action]Store as: {{acceptance_criteria}}
Section 6: Non-Functional Requirements (Brief)#
Ask concisely:
Performance:
"Any performance requirements? (e.g., response time, load handling)"
Security:
"Any security requirements? (e.g., authentication, data protection)"
Other:
"Anything else? (accessibility, browser support, etc.)"
Store as: {{performance_requirements}}, {{security_requirements}}, {{other_nfr}}
Section 7: Dependencies, Risks, Timeline#
Dependencies:
Ask: "What does this depend on?"
Store as: {{dependencies}}
Risks: Ask: "What could go wrong? How to mitigate?" Format:
- **Risk:** Description
- **Mitigation:** StrategyStore as: {{risks}}
Timeline:
Ask: "When do you want this done?"
Ask: "Any key milestones?"
Store as: {{target_completion}}, {{milestones}}
Generate Document#
- Load template from
${CLAUDE_PLUGIN_ROOT}/references/templates/tech-spec.md - Substitute variables per
helpers.md#Apply-Variables-to-Template - Determine output path:
{output_folder}/tech-spec-{project-name}-{date}.md - Write document using Write tool
- Display summary:
✓ Tech Spec Created! Summary: - Requirements: {count} - Stories: {count} - Tech Stack: {stack} - Target: {completion_date}
Validation#
✓ Checklist:
- [ ] Problem and solution are clear
- [ ] Requirements are specific and testable
- [ ] Tech stack is defined
- [ ] Stories are broken down (if Level 1)
- [ ] Acceptance criteria are clear
- [ ] Out of scope is statedAsk user: "Please review the tech spec. Is it complete?"
Update Status#
Per helpers.md#Update-Workflow-Status:
- Update
tech-specstatus to file path - Save
Recommend Next Steps#
Level 0:
✓ Tech Spec complete!
Next: Create your story
Run /create-story to create the single story for implementation.
Then: /dev-story to implement it.Level 1:
✓ Tech Spec complete!
Next: Sprint Planning
Run /sprint-planning to organize your stories and plan implementation.
Note: Level 1 projects can skip architecture and go straight to implementation.Helper References#
- Load config:
helpers.md#Combined-Config-Load - Load status:
helpers.md#Load-Workflow-Status - Load template:
helpers.md#Load-Template - Apply variables:
helpers.md#Apply-Variables-to-Template - Save document:
helpers.md#Save-Output-Document - Update status:
helpers.md#Update-Workflow-Status - Recommend next:
helpers.md#Determine-Next-Workflow
Tips for Tech Specs#
Keep it lightweight:
- Don't over-plan for small projects
- Focus on what's essential
- Get to implementation faster
But be clear:
- Requirements should still be testable
- Tech decisions should be documented
- Success criteria should be explicit
Right-size:
- Level 0: 1 page is fine
- Level 1: 2-3 pages maximum
- If you need more, consider using /prd instead
Notes for LLMs#
- Maintain a pragmatic persona for small projects
- Move faster than PRD - less ceremony
- Still ensure clarity and testability
- Don't skip critical elements (requirements, acceptance criteria)
- For Level 0, keep it very simple (single story focus)
- For Level 1, provide just enough structure
Remember: Tech specs are for speed on small projects. Don't over-engineer the planning process.