FE TechSpec 문서 작성 템플릿과 패턴. Linear 프로젝트의 기술 명세서를 작성할 때 참조. Use when: TechSpec 작성, 기술 명세서 생성, Given/When/Then 테스트 케이스 정의, Acceptance Criteria 작성, Solution 설계 문서 작성 시 사용.
How this skill is triggered — by the user, by Claude, or both
Slash command
/my-claude-code-config:fe-techspecThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**관련 스킬:** `entity-object-pattern` - 구현 시 반복되는 도메인 로직을 Entity Object로 그룹화하는 패턴
관련 스킬: entity-object-pattern - 구현 시 반복되는 도메인 로직을 Entity Object로 그룹화하는 패턴
FE TechSpec은 프로젝트의 기술적 구현 방향을 정의하는 문서. PRD(요구사항)와 Figma(디자인)를 기반으로 Solution, Acceptance Criteria, Test Cases를 도출한다.
Summary → Solution → Acceptance Criteria → Non-Functional Requirements → Functional Requirements (Given/When/Then) → Design → Component & Code → Verification
전체 템플릿은 references/template.md 참조.
프로젝트 배경과 맥락. PRD/Figma 링크 포함.
## Summary
{프로젝트 배경 1-3문장}
- **PRD**: {Notion URL}
- **Figma**: {Figma URL}
비즈니스 관점에서 핵심 변경사항을 요약. 기술 용어 없이 "무엇이 어떻게 바뀌는가"에 집중.
## Solution
### 핵심 변경사항
1. **{변경1}**: {설명}
2. **{변경2}**: {설명}
3. **{변경3}**: {설명}
작성 규칙:
기능 동작의 최소 기준. 테스트 가능한 형태로 작성.
## Acceptance Criteria
1. {주어} 상태에서 {동작}하면 {결과}가 발생한다
2. ...
SLA/SLO 기준의 시스템 요구사항.
카테고리:
해당 프로젝트에 관련 없는 카테고리는 생략 가능.
테스트 케이스를 구조화된 테이블로 정의.
핵심 개념:
## Functional Requirements (Test cases / Given, When, Then)
| # | Given | When | Then |
|---|-------|------|------|
| 1 | {초기 상태/조건} | {사용자 행동/이벤트} | {기대 결과} |
| 2 | ... | ... | ... |
작성 팁:
테스트 케이스 기반으로 도메인 설계를 진행.
작성 순서:
get_design_context/get_variable_defs에서 추출, 없으면 테스트 케이스에서 도출데이터 모델 가이드:
constants/에 별도 정의 가능필요한 경우에만 작성.
테스트 케이스 검증 전략.
우선순위:
Integration Test 테이블 형식:
| TC# | 테스트 명 | 검증 내용 |
|---|---|---|
| TC1 | ... | ... |
| 문제 | 원인 | 해결 |
|---|---|---|
| AC가 모호함 | "빠르게", "잘" 같은 추상적 표현 | 측정 가능한 기준 사용 (예: "3초 이내") |
| Given/When/Then 불명확 | 상태/행동/결과 구분 없음 | Given=상태, When=행동, Then=검증 가능한 결과 |
| Test Case 누락 | 정상 케이스만 작성 | 에러/엣지 케이스 반드시 포함 |
| NFR 생략 | 선택사항이라 무시 | 공개 페이지면 SEO/A11y 필수 검토 |
| Solution에 코드 포함 | "기술적 해결책"으로 오해 | 비기술 요약으로 작성 |
| 클라이언트 Entity 과잉 설계 | API 응답을 재정의하려 함 | API 타입 기반 interface로 충분. 별도 Entity는 사유 필요 |
| UI 문구 가정 | Figma 미확인 | variants에서 실제 문구 추출 |
| FR에 Entity/Command 헤더 | 지침 오해 | Design에서만 사용, FR은 테이블만 |
| Verification 누락 | 선택사항으로 오인 | Integration Test 필수 |
| 규칙 중복 구현 | UI/API에서 같은 규칙을 각각 구현 | 구현 시 entity-object-pattern 스킬 참조 |
| Container/Presentational 혼합 | 하나의 컴포넌트가 Usecase 호출 + UI 렌더링 | Container(데이터 흐름)와 Presentational(Props/Callbacks)을 분리 |
| 모든 Props를 Interface Contract에 기록 | 과잉 명세 | 모듈 경계를 형성하는 핵심 인터페이스만 정의. 내부 컴포넌트 Props는 Component 섹션에서 |
| Optimization Checklist 전부 채움 | RADIO 원칙 오해 | TC/NFR에서 도출된 항목만. "해당없음"이 대부분이어도 정상 |
npx claudepluginhub seonghyeonkimm/agents --plugin my-claude-code-configCreates detailed technical specifications for software projects covering requirements, architecture, APIs, and testing strategies. Use for feature planning, system design docs, or ADRs.
Creates or updates SPEC.md documents from requirements, notes, or interview output, structuring into sections for goals, design, edge cases, security, testing, and success criteria. Use for feature specs.
Generates technical design documents including API design, database schema, and implementation details from PRDs, user stories, or tech research reports. Activates when user requests architecture or design docs.