Loading...
Loading...
Provides spec writing guidelines with 6 core areas and boundary system. Use when writing SPEC.md, defining requirements, creating project specifications, 요구사항 정의, or 스펙 작성.
npx skill4agent add ssiumha/dots good-spec| 영역 | 해결하는 질문 | 핵심 요소 |
|---|---|---|
| Commands | "어떻게 실행하나요?" | 개발/테스트/빌드 명령어 + 결과 |
| Testing | "어떻게 검증하나요?" | 프레임워크 + 커버리지 기준 |
| Project Structure | "어디에 작성하나요?" | 디렉토리 역할 + 파일 명명규칙 |
| Code Style | "어떻게 작성하나요?" | ✅/❌ 예시 (설명 < 예시) |
| Git Workflow | "어떻게 협업하나요?" | 브랜치/커밋/PR 규칙 |
| Boundaries | "무엇을 하면/말아야 하나요?" | Always/Ask/Never 3단계 |
resources/01-spec-template.mdtemplates/SPEC-template.md| 레벨 | 의미 | 예시 |
|---|---|---|
| ✅ Always | 항상 실행 | 테스트 실행, 컨벤션 준수, 린트 검사 |
| ⚠️ Ask First | 승인 필요 | DB 스키마 변경, 의존성 추가, API 변경 |
| 🚫 Never | 절대 금지 | 시크릿 커밋, vendor 폴더 편집, --force 옵션 |
Globlsresources/01-spec-template.mdsrc/**/*.test.tsdist/node_modules/feat/fix/refactor/다음 스펙을 검토하고 개선점을 제안해주세요:
1. 누락된 정보가 있나요?
2. 모호한 표현이 있나요?
3. 예시가 충분한가요?# SPEC.md
Version: 2.1.0
Last Updated: 2026-01-19## Changelog
### 2.1.0 (2026-01-19)
- Added E2E testing with Playwright
- Updated Node.js version to 20.x
### 2.0.0 (2025-12-01)
- Migrated to TypeScript
- Introduced strict boundary rulesUser: "새 Next.js 프로젝트 스펙 작성해줘"
AI 명령 흐름:
1. Glob "package.json" + Read package.json (기술 스택 파악)
2. Glob "**/*" (프로젝트 구조 파악)
3. Phase 1: 사용자에게 컨텍스트 확인
- "Next.js 14, TypeScript, Tailwind CSS 사용 중이시네요"
- "테스트 프레임워크는 어떤 걸 사용하시나요? (Jest/Vitest)"
4. Phase 2: 6개 영역 작성
- Commands: package.json scripts 기반
- Testing: 답변받은 프레임워크 기반
- Project Structure: 현재 디렉토리 구조 반영
- Code Style: Next.js 모범 사례 + TypeScript
- Git Workflow: Conventional Commits
- Boundaries: Next.js 특수 파일 (next.config.js 등) 보호
5. Phase 3: 검증 체크리스트 확인
6. Write SPEC.mdUser: "SPEC.md에 E2E 테스트 정책 추가해줘"
AI 명령 흐름:
1. Read SPEC.md (현재 스펙 파악)
2. Phase 1: 현재 E2E 테스트 상태 확인
- "Playwright 사용하시나요, Cypress인가요?"
- "E2E 테스트 파일은 어디에 위치하나요?"
3. Phase 2: 관련 영역 업데이트
- Testing 영역: E2E 프레임워크, 파일 위치, 커버리지 추가
- Commands 영역: E2E 실행 명령 추가 (`npm run test:e2e`)
- Boundaries: E2E 테스트 Always 규칙 추가
4. Phase 3: 검증
5. Phase 4: 버전 업데이트 (1.0.0 → 1.1.0), Changelog 추가
6. Edit SPEC.mdUser: "AI가 자꾸 .env 파일 수정하려고 해"
AI 명령 흐름:
1. Read SPEC.md
2. Phase 1: 현재 Boundaries 확인
3. Phase 2: Never 섹션에 명시적 추가.env.env.example4. Phase 3: 검증
5. Edit SPEC.md
6. 사용자에게 변경사항 공유
---
## Technical Details
### 상세 템플릿
- `resources/01-spec-template.md`: 6개 영역 상세 설명 + 작성 예시
- `templates/SPEC-template.md`: 복사해서 바로 사용 가능한 템플릿
### 참조 리소스
- Addy Osmani의 원본 가이드: https://addyosmani.com/blog/good-spec/
- ldoc skill: 요구사항 문서화와 연계
- bdd-practices: Testing 영역 작성 시 시나리오 활용