From smart
Define technical specifications and feature list for a project. Generates docs/SPEC.md (tech stack, architecture, directory structure, monitoring strategy) and docs/FEATURE_LIST.md (prioritized features with dependencies and MVP scope). Use this skill whenever the user says "기술 스펙", "스펙 정의", "tech spec", "기술 스택", "feature list", "기능 목록", "아키텍처 설계", "스택 정하자", or wants to make technical decisions for a project. Always use this skill proactively when technical decision-making discussion begins, even without explicit request.
How this skill is triggered — by the user, by Claude, or both
Slash command
/smart:specThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate SPEC.md and FEATURE_LIST.md for the project.
Generate SPEC.md and FEATURE_LIST.md for the project.
Every tech choice must include a justification. "It's popular" is not a reason. A reviewer should immediately understand why each technology was selected.
/init (PRD creation)Read docs/PRD.md if it exists to align with requirements.
If missing, ask the user for project context or suggest running /init first.
Detect existing tech stack:
package.json, build.gradle, pom.xml, go.mod, Cargo.toml, docker-compose.yml, pyproject.tomlCLAUDE.md for project conventionsFor new projects, ask up to 3 questions:
# {프로젝트명} — Technical Specification
> 생성일: {YYYY-MM-DD}
> 상태: 초안 (검토 필요)
---
## 기술 스택
| 영역 | 기술 | 버전 | 선정 이유 |
|------|------|------|-----------|
| 언어 | ... | ... | ... |
| 프레임워크 | ... | ... | ... |
| 데이터베이스 | ... | ... | ... |
| 캐시 | ... | ... | ... |
| 인프라 | ... | ... | ... |
| 기타 | ... | ... | ... |
---
## 아키텍처 개요
- **패턴**: (e.g., Layered, Hexagonal, Event-driven, CQRS)
- **계층 구조**: 각 계층의 책임
- **주요 컴포넌트**: 컴포넌트 간 관계와 데이터 흐름
---
## 디렉토리 구조
project-root/ ├── src/ │ ├── ... ├── tests/ ├── docs/ └── ...
각 주요 디렉토리의 역할을 한 줄로 설명한다.
---
## 외부 의존성
| 의존성 | 용도 | 대안 (검토함) |
|--------|------|---------------|
| ... | ... | ... |
---
## 개발 환경 설정
```bash
# 필요한 도구 및 버전
# 설정 명령어
### Step 5: Generate docs/FEATURE_LIST.md
```markdown
# {프로젝트명} — Feature List
> 생성일: {YYYY-MM-DD}
> 상태: 초안 (검토 필요)
---
## 우선순위 정의
- **P0 (필수)**: MVP에 반드시 포함
- **P1 (중요)**: MVP 이후 첫 번째 iteration
- **P2 (희망)**: 리소스 여유 시 구현
---
## 기능 목록
| ID | 기능명 | 설명 | 우선순위 | 의존성 |
|----|--------|------|----------|--------|
| F-01 | ... | ... | P0 | - |
| F-02 | ... | ... | P0 | F-01 |
| F-03 | ... | ... | P1 | F-01, F-02 |
---
## MVP 범위
P0 기능만으로 구성된 최소 제품을 정의한다.
---
## 기능 의존 관계
어떤 기능이 먼저 구현되어야 하는지, 그 이유를 설명한다.
After generation, output:
Then ask: "기술 스펙과 기능 목록을 검토해 주세요. 확정되면 /plan으로 기능 기획을 시작합니다."
npx claudepluginhub alexgim961101/claude-plugins --plugin smartGenerates structured feature specifications with demoable units, functional requirements, and proof artifacts. Use when defining what to build before writing code.
Plans new projects or major epics by exploring domain, defining boundaries and architecture, decomposing into phased features, and producing a project plan artifact. Use for multi-feature work.
Creates technical specifications interactively by gathering requirements, exploring codebases, running planning interviews, drafting with Mermaid diagrams, expert review, and iteration. For new features or projects needing architecture and decisions.