Stats
Actions
Tags
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-dev-toolkit:pre-push-checklistThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
이 스킬은 `/pre-push` 커맨드나 push 관련 맥락에서 자동 참조됩니다.
이 스킬은 /pre-push 커맨드나 push 관련 맥락에서 자동 참조됩니다.
| 패턴 | 설명 | 예시 |
|---|---|---|
eyJ[A-Za-z0-9_-]{10,} | JWT 토큰 (Base64 JSON header) | eyJhbGciOiJIUzI1NiIs... |
sk-[a-zA-Z0-9]{20,} | Anthropic API Key | sk-ant-api03-... |
AIza[0-9A-Za-z_-]{35} | Google AI API Key | AIzaSyB... |
sbp_[a-f0-9]{40} | Supabase service role key | sbp_abc123... |
ANTHROPIC_API_KEY=["'] | 하드코딩된 환경변수 값 | 코드 내 직접 할당 |
supabase.co | Supabase URL 직접 노출 | 환경변수 대신 하드코딩 |
| 파일 | 위험도 | 이유 |
|---|---|---|
.claude/settings.local.json | CRITICAL | Supabase access token, project ref 포함 |
.env / .env.local | CRITICAL | 모든 API 키 포함 |
generated-image-*.jpg | WARNING | 생성 이미지, 용량 큼 (커밋 불필요) |
*.jsonl | WARNING | 대화 로그 (민감 정보 가능) |
이 프로젝트에서 허용되는 패턴:
서버 사이드 로깅: console.error(), console.warn()은 API route와 서버 컴포넌트에서 정상 사용
app/api/**/*.ts, src/lib/**/*.tsconsole.log() — 이것은 항상 디버그 코드로 간주타입 단언 허용 케이스:
as JsonValue)as GenerateContentResponse)as any는 항상 WARNING빌드 경고 vs 에러:
npm run lint는 별도 (빌드와 독립)CRITICAL (push 차단):
- 시크릿/API 키 노출
- .claude/settings.local.json 스테이징
- debugger 문
- @ts-nocheck
- 빌드 실패
WARNING (확인 필요):
- as any 사용
- console.log (클라이언트 코드)
- @ts-ignore
- 삭제 파일의 깨진 import
- 미추적 대용량 파일
INFO (참고):
- TODO / FIXME 주석
- eslint-disable 주석
- 미추적 파일 존재
커밋에 포함되면 안 되는 경로:
- .claude/settings.local.json
- .env, .env.local
- generated-image-*.jpg
- *.jsonl (대화 로그)
- node_modules/
커밋에 포함되어야 하는 경로:
- .claude/commands/*.md
- .claude/skills/*/SKILL.md
- .claude/agents/*.md
- prisma/schema.prisma
- src/, app/ 하위 모든 소스
npx claudepluginhub michaelcho000/claude-dev-toolkitCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.