web-checklist
The web-checklist command generates and tracks a post-merge web testing checklist by analyzing code changes, referencing development documentation, and categorizing tests by affected areas such as UI, API, authentication, and payments. Use this command to systematically verify that merged changes function correctly across different environments before production deployment.
mkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/sangrokjung/claude-forge/HEAD/commands/web-checklist.md -o ~/.claude/commands/web-checklist.mdweb-checklist.md
## Task
### 0단계: 컨텍스트 수집
```bash
git log --oneline -3
git diff HEAD~1 --name-only
git diff HEAD~1 --stat
git branch --show-current
```
다음 파일 읽기 (있는 것만):
- `.claude/handoff.md` - 개발 의도, 테스트 필요 사항
- `spec.md` - 기능 요구사항
- `prompt_plan.md` - Task 상세
- `.claude/web-checklist-state.json` - 기존 체크리스트 상태
---
### 0.5단계: 플래그 분기
**`--status` 플래그 → 상태 조회 모드:**
`.claude/web-checklist-state.json` 읽기:
**파일 있으면:**
```
════════════════════════════════════════════════════════════════
📋 Web Checklist Status (v6)
════════════════════════════════════════════════════════════════
📅 생성: [created timestamp]
📌 커밋: [commit hash]
🌿 브랜치: [branch name]
진행률: [completion]% ([done]/[total])
## 미완료 항목
- [ ] [ID: N] [category] [text]
- [ ] [ID: N] [category] [text]
...
## 완료 항목
- [x] [ID: N] [category] [text]
- [x] [ID: N] [category] [text]
...
완료 처리: /web-checklist --complete [ID]
════════════════════════════════════════════════════════════════
```
→ 종료
**파일 없으면:**
```
ℹ️ 저장된 체크리스트가 없습니다.
생성: /web-checklist --save
```
→ 종료
---
**`--complete ID` 플래그 → 항목 완료 모드:**
`.claude/web-checklist-state.json` 읽기:
**해당 ID 찾으면:**
- `items[ID].done` → `true` 로 변경
- `completion` 재계산
- 파일 저장
```
✅ 체크리스트 항목 완료
[ID]: [text] → ✅ Done
진행률: [new completion]% ([done]/[total])
남은 항목: [remaining count]개
전체 완료 시: /sync-docs
```
→ 종료
**해당 ID 없으면:**
```
❌ ID [N]을 찾을 수 없습니다.
유효한 ID: [사용 가능한 ID 목록]
상태 확인: /web-checklist --status
```
→ 종료
---
### 1단계: 변경 영역 분석
**변경된 파일 카테고리별 분류:**
| 카테고리 | 파일 패턴 | 테스트 영역 |
|----------|-----------|-------------|
| UI/화면 | `*.tsx`, `*.jsx`, `components/*` | 화면 표시, 반응형, 인터랙션 |
| API/서버 | `api/*`, `server/*`, `*.ts` | 엔드포인트, 응답 |
| 인증 | `auth/*`, `login/*`, `session/*` | 로그인, 로그아웃, 권한 |
| 결제 | `payment/*`, `billing/*` | 결제 플로우, 금액 |
| 데이터 | `*.sql`, `supabase/*`, `db/*` | 데이터 정합성 |
| 스타일 | `*.css`, `*.scss`, `tailwind.*` | 레이아웃, 디자인 |
### 2단계: 테스트 체크리스트 생성
**handoff.md의 "테스트 필요 사항" 참조해서 구체화.**
**UI 변경 시:**
- [ ] 화면이 정상적으로 렌더링되는지
- [ ] 반응형 (모바일/태블릿/데스크톱) 확인
- [ ] 로딩 상태 표시 확인
- [ ] 에러 상태 표시 확인
- [ ] 빈 상태(empty state) 표시 확인
**인증 관련 변경 시:**
- [ ] 로그인 플로우 정상 동작
- [ ] 로그아웃 정상 동작
- [ ] 세션 만료 시 동작
- [ ] 권한별 접근 제어 확인
**결제 관련 변경 시:**
- [ ] 테스트 결제 진행 (sandbox)
- [ ] 결제 금액 정확성
- [ ] 결제 실패 케이스 처리
- [ ] 결제 완료 후 상태 업데이트
**API 변경 시:**
- [ ] 엔드포인트 호출 정상 동작
- [ ] 응답 데이터 형식 확인
- [ ] 에러 응답 처리 확인
- [ ] 권한 체크 동작
**데이터 변경 시:**
- [ ] 기존 데이터 정합성 유지
- [ ] 새 데이터 저장 정상
- [ ] 데이터 조회 정상
### 3단계: 환경별 체크리스트
**개발 환경 (localhost):**
- [ ] 기능 기본 동작 확인
- [ ] 콘솔 에러 없음
**스테이징 환경 (있으면):**
- [ ] 배포 후 기능 동작 확인
- [ ] 실제 데이터베이스 연동 확인
**프로덕션 환경:**
- [ ] 배포 완료 확인
- [ ] 크리티컬 기능 동작 확인
- [ ] 에러 모니터링 (Sentry 등) 확인
### 4단계: 출력
```
════════════════════════════════════════════════════════════════
📋 Web Checklist (v6)
════════════════════════════════════════════════════════════════
🔧 변경 영역: [카테고리 목록]
📝 테스트 항목:
## 기능 확인
- [ ] [ID:1] [handoff.md 기반 테스트 항목 1]
- [ ] [ID:2] [handoff.md 기반 테스트 항목 2]
- [ ] ...
## UI 확인
- [ ] [ID:N] [UI 관련 체크 항목]
- [ ] ...
## 환경별 확인
### localhost (http://localhost:3000)
- [ ] [ID:N] 기능 동작 확인
- [ ] [ID:N] 콘솔 에러 없음
### 프로덕션 ([프로덕션 URL])
- [ ] [ID:N] 배포 완료 확인
- [ ] [ID:N] 기능 동작 확인
────────────────────────────────────────────────────────────────
⚠️ 주의 사항:
- [handoff.md의 "주의사항" 내용]
💡 테스트 팁:
- 시크릿/프라이빗 모드에서 테스트 권장
- 여러 브라우저에서 확인 권장 (Chrome, Safari)
────────────────────────────────────────────────────────────────
완료 추적:
• /web-checklist --complete [ID] - 항목 완료 처리
• /web-checklist --status - 진행 상황 확인
다음 단계:
• 모든 항목 확인 후: /sync-docs
• 이슈 발견 시: 새 브랜치에서 수정 또는 /orchestrate --type bugfix
════════════════════════════════════════════════════════════════
```
### 5단계: 체크리스트 저장
**`--save` 옵션 있으면 (또는 기본 동작으로 항상 저장):**
`.claude/web-checklist-state.json` 생성/업데이트:
```json
{
"version": "v6",
"created": "[ISO 8601 timestamp]",
"commit": "[HEAD commit hash]",
"branch": "[branch name or merged-from branch]",
"items": [
{"id": 1, "category": "기능", "text": "[항목 텍스트]", "done": false},
{"id": 2, "category": "UI", "text": "[항목 텍스트]", "done": false},
{"id": 3, "category": "API", "text": "[항목 텍스트]", "done": false},
{"id": 4, "category": "환경-localhost", "text": "[항목 텍스트]", "done": false},
{"id": 5, "category": "환경-production", "text": "[항목 텍스트]", "done": false}
],
"completion": "0%",
"warnings": ["[handoff.md 주의사항]"]
}
```
```
💾 체크리스트 저장됨: .claude/web-checklist-state.json
항목 완료 처리: /web-checklist --complete [ID]
진행 상황 확인: /web-checklist --status
```
---
## 사용 예시
```bash
# 기본 사용 (머지 후)
/web-checklist
# handoff.md 기반 자동 생성
/web-checklist --auto-from-handoff
# 상세 체크리스트
/web-checklist --detailed
# 저장 (상태 파일 생성)
/web-checklist --save
# 진행 상황 확인
/web-checklist --status
# 특정 항목 완료 처리
/web-checklist --complete 3
# 상세 + 저장
/web-checklist --detailed --save
```
## 통합: /commit-push-pr 연동
`/commit-push-pr --merge` 완료 후 자동으로 다음 안내:
```
다음 단계:
/web-checklist - 웹 테스트 체크리스트 확인
/web-checklist --status - 진행 상황 확인
/sync-docs - 문서 동기화
```
## 상태 파일 관리
### 파일 위치
`.claude/web-checklist-state.json`
### 자동 정리
- 새 체크리스트 생성 시 이전 상태 파일 덮어쓰기
- 새 체크리스트 생성 시 이전 상태 덮어쓰기
- 수동 삭제: `rm .claude/web-checklist-state.json`
### 환경 독립성
- 체크리스트 상태는 로컬 `.claude/` 디렉토리에만 저장
- git에 커밋되지 않음 (`.claude/` 는 보통 .gitignore에 포함)
- 워크트리별로 독립적 상태 유지전문 에이전트 자동 라우팅. 법률, 재무, 특허, SEO, 마케팅, 기획, BM 설계(BMC/Lean/JTBD/Wardley/Blue Ocean/Lightning Sprint), 코드리뷰, 아키텍처, 견적, CRM, HR/인사, 노무(노동법/해고/산재/취업규칙), 리서치, 데이터 분석, 제1원칙 사고, 주식 투자, 부동산 투자, 명리학, 회사운영(노란우산/창업혜택/고용지원/세무일정), 디자인 제작(배너/카드뉴스/SNS/광고/인포그래픽), FAQ/지식베이스(KCS/셀프서비스/아티클), 고객지원(CS응답/에스컬레이션) 등 50+ 에이전트
|
계획부터 PR까지 원버튼 자동 실행. 중간에 멈추지 않습니다.
|
빌드 에러를 자동으로 분석하고 수정합니다.
Use when detecting and running project build systems automatically. Supports npm/yarn/pnpm/pip/poetry/gradle/maven/cargo/go/make. Triggers on build, test run, project setup, package manager detection.
|
Use when starting Claude Code projects, writing CLAUDE.md/spec.md, dispatching subagents, or requesting Agent Teams parallel development. Covers Spec-Driven Development, Context Engineering, and post-dev workflow.