بنقرة واحدة
verify-tech-stack
아키텍처 원칙 A1-A8 검증. package.json, tsconfig, vite 설정, Zustand 스토어 변경 후 사용.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
아키텍처 원칙 A1-A8 검증. package.json, tsconfig, vite 설정, Zustand 스토어 변경 후 사용.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
세션 변경사항을 분석하여 검증 스킬 누락을 탐지합니다. 기존 스킬을 동적으로 탐색하고, 새 스킬을 생성하거나 기존 스킬을 업데이트한 뒤 CLAUDE.md를 관리합니다.
todoStore↔timerStore 간 연동 및 삭제 안전성 SYNC-1~6 검증.
프로젝트의 모든 verify 스킬을 순차 실행하여 통합 검증 보고서를 생성합니다. 기능 구현 후, PR 전, 코드 리뷰 시 사용.
서버 사이드 타이머 동기화 SYNC-T1~T5 검증. 브라우저 닫아도 타이머 상태 유지, 서버 시간 기준 경과시간 계산.
UX/동작 규칙 E1-E9 검증. 컴포넌트, CSS, App 레이아웃 변경 후 사용.
프론트↔백엔드 API 연동 API-1~7 검증. todoStore, 서버 라우트 변경 후 사용.
| name | verify-tech-stack |
| description | 아키텍처 원칙 A1-A8 검증. package.json, tsconfig, vite 설정, Zustand 스토어 변경 후 사용. |
프로젝트의 기술 스택이 합의된 아키텍처 원칙(A1-A8)을 준수하는지 검증합니다:
package.json 또는 server/package.json 의 의존성 변경 후tsconfig*.json 설정 변경 후| File | Purpose |
|---|---|
package.json | 프런트엔드 의존성 |
server/package.json | 백엔드 의존성 |
tsconfig.json | TypeScript 루트 설정 |
tsconfig.app.json | TypeScript 앱 설정 |
vite.config.ts | Vite 번들러 설정 |
src/stores/todoStore.ts | TODO 상태관리 스토어 |
src/stores/timerStore.ts | 타이머 상태관리 스토어 |
파일: package.json
검사: 필수 패키지 존재 + 금지 패키지 부재
grep -c '"react"' package.json
grep -c '"zustand"' package.json
grep -c '"dayjs"' package.json
grep -c '"vite"' package.json
grep -c '"moment"' package.json
grep -c '"date-fns"' package.json
PASS: react, zustand, dayjs, vite가 존재하고 moment, date-fns가 0건 FAIL: 필수 패키지 누락 또는 금지 패키지 발견
수정 방법:
npm install zustand dayjs # 누락 시
npm uninstall moment # 금지 패키지 발견 시
파일: tsconfig.json, tsconfig.app.json
검사: strict 옵션 활성화 여부
grep -n '"strict"' tsconfig.json tsconfig.app.json
PASS: "strict": true 가 어느 하나에든 존재
FAIL: strict가 false이거나 없음
수정 방법: tsconfig.json에 "strict": true 추가
파일: server/package.json
검사: Express + SQLite 패키지 존재
grep -c '"express"' server/package.json
grep -E '"sql\.js"|"better-sqlite3"' server/package.json
PASS: express + (sql.js 또는 better-sqlite3) 존재 FAIL: 누락
검사: 루트와 server에 각각 package.json 존재
test -f package.json && echo "ROOT OK"
test -f server/package.json && echo "SERVER OK"
PASS: 두 파일 모두 존재 FAIL: 어느 하나 누락
파일: src/stores/
검사: todoStore와 timerStore가 별도 파일로 존재
ls src/stores/todoStore.ts src/stores/timerStore.ts
PASS: 두 파일 모두 존재 FAIL: 누락되거나 하나의 파일에 합쳐져 있음
파일: src/**/*.ts, src/**/*.tsx
검사: dayjs import 존재 + moment/date-fns import 부재
grep -r "from 'dayjs'" src/ --include="*.ts" --include="*.tsx"
grep -r "from 'moment'" src/ --include="*.ts" --include="*.tsx"
grep -r "from 'date-fns'" src/ --include="*.ts" --include="*.tsx"
PASS: dayjs 1건 이상 + moment/date-fns 0건 FAIL: dayjs 미사용 또는 금지 라이브러리 발견
| Step | 검사 | 판정 | 비고 |
|------|------|------|------|
| 1 | 프런트 의존성 | PASS/FAIL | 상세 |
| 2 | TS strict | PASS/FAIL | 상세 |
| 3 | 백엔드 스택 | PASS/FAIL | 상세 |
| 4 | 모노레포 구조 | PASS/FAIL | 상세 |
| 5 | 스토어 분리 | PASS/FAIL | 상세 |
| 6 | dayjs/금지 lib | PASS/FAIL | 상세 |
package-lock.json 등)은 검사하지 않음sql.js 또는 better-sqlite3 중 하나만 있으면 PASStsconfig.json 또는 tsconfig.app.json 어디에든 있으면 PASS