Skip to content
Agent Orchestration
Skill

/verify

작업 완료 후 코드 검증 (타입체크, 린트, 테스트, 빌드). Triggers on: 검증, verify, 테스트 돌려, 빌드 확인, 타입체크. NOT for: E2E 테스트, 코드 작성, 구현.

BOOST
From plugin
my-cc-harness
12543 skills12 agents4 commands10 hooks
Install
$ npx -y skills add jh941213/my-cc-harness --skill verify --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/verify

Context preview

The summary Claude sees to decide when to auto-load this skill.

작업 완료 후 코드 검증 (타입체크, 린트, 테스트, 빌드). Triggers on: 검증, verify, 테스트 돌려, 빌드 확인, 타입체크. NOT for: E2E 테스트, 코드 작성, 구현.

SKILL.md

verify.SKILL.md
name: verify
description: "작업 완료 후 코드 검증 (타입체크, 린트, 테스트, 빌드). Triggers on: 검증, verify, 테스트 돌려, 빌드 확인, 타입체크. NOT for: E2E 테스트, 코드 작성, 구현."
user-invocable: true
disable-model-invocation: false
allowed-tools: Read, Bash, Grep, Edit

코드 검증

> TaskCompleted 훅(`verify-task-quality.sh`)이 자동 실행하는 검증과 동일합니다. > 훅 미발동 상황(수동 검증 요청, 훅 미설치 환경)에서 이 스킬을 사용하세요.

작업 완료 후 코드를 검증합니다. 순서대로 실행하며, 각 단계 통과 후 다음으로 진행.

Step 1: 프로젝트 감지

| 파일 | 스택 | 타입체크 | 린트 | 테스트 | 빌드 | |------|------|---------|------|--------|------| | `package.json` | Node/TS | `npx tsc --noEmit` | `npx eslint .` / `npx biome check .` | `npx vitest run` / `npx jest` | `npm run build` | | `pyproject.toml` | Python | `mypy .` / `pyright .` | `ruff check .` | `pytest -q` | — | | `go.mod` | Go | `go vet ./...` | `golangci-lint run` | `go test ./...` | `go build ./...` | | `Cargo.toml` | Rust | — | `cargo clippy` | `cargo test` | `cargo build` |

# 자동 감지
[ -f package.json ] && cat package.json | python3 -c "import sys,json; s=json.load(sys.stdin).get('scripts',{}); print('\n'.join(f'{k}: {v}' for k,v in s.items()))"
[ -f pyproject.toml ] && echo "Python project detected"
[ -f go.mod ] && echo "Go project detected"
[ -f Cargo.toml ] && echo "Rust project detected"

Step 2: 검증 순서 (실패 시 즉시 수정)

2-1. TypeScript 타입체크

npx tsc --noEmit

실패 시: 타입 에러 수정 → 재실행. 3회 실패 시 사용자에게 에스컬레이션.

2-2. 린트

# ESLint
npx eslint . --max-warnings=0
# 또는 Biome
npx biome check .
# Python
ruff check .

실패 시: `--fix` 자동 수정 시도 → 수동 수정 → 재실행.

2-3. 테스트

# Vitest
npx vitest run
# Jest
npx jest --passWithNoTests
# pytest
pytest -q

실패 시: 실패 테스트 분석 → 코드 수정 (테스트 수정은 최후 수단) → 재실행.

2-4. 빌드

npm run build

실패 시: 빌드 에러 분석 → 수정 → 재실행.

2-5. 순환참조 탐지 (JS/TS 프로젝트)

npx madge --circular --extensions ts,tsx src/ 2>/dev/null

순환참조 발견 시: WARNING으로 보고. 새로 추가된 순환만 수정 대상.

2-6. 데드코드 탐지 (JS/TS 프로젝트)

npx knip --no-exit-code 2>/dev/null | head -50

미사용 export/파일/의존성 발견 시: INFO로 보고. 자동 수정하지 않음.

2-7. 시크릿 스캔

gitleaks detect --source . --no-git -v 2>&1 | head -20

시크릿 발견 시: CRITICAL. 즉시 보고 후 수정 유도.

2-8. AI 슬롭 패턴 탐지 (ast-grep)

# 불필요한 console.log
sg --pattern 'console.log($$$)' --lang ts src/ 2>/dev/null | head -10
# any 타입 사용
sg --pattern '$A as any' --lang ts src/ 2>/dev/null | head -10

발견 시: WARNING으로 보고.

Step 3: 결과 보고

| 단계 | 상태 | 상세 | |------|------|------| | typecheck | PASS/FAIL/SKIP | 에러 수 또는 "도구 미감지" | | lint | PASS/FAIL/SKIP | 경고/에러 수 | | test | PASS/FAIL/SKIP | N passed, M failed | | build | PASS/FAIL/SKIP | 성공 또는 에러 요약 | | circular | PASS/WARN/SKIP | 순환참조 수 (madge) | | deadcode | INFO/SKIP | 미사용 export/파일 수 (knip) | | secrets | PASS/CRITICAL/SKIP | 시크릿 탐지 수 (gitleaks) | | ai-slop | PASS/WARN/SKIP | console.log/any 수 (ast-grep) |

**판정**: PASS = exit code 0, FAIL = 3회 재시도 소진, SKIP = 해당 도구 미감지 **전체 판정**: CRITICAL 있으면 FAIL. 모든 PASS/WARN/INFO/SKIP → PASS. typecheck/lint/test/build 중 FAIL → FAIL.

에러 카테고리별 수정 전략

| 카테고리 | 우선순위 | 수정 방법 | |----------|---------|----------| | TYPE | 높음 | 출력에서 file:line 추출 → 해당 파일 Read → 타입 수정 | | LINT | 중간 | `--fix` 자동 수정 먼저 → 수동 수정 | | TEST | 높음 | 실패 테스트 분석 → 코드 수정 (테스트 수정은 최후 수단) | | BUILD | 높음 | 빌드 로그 분석 → import/export 문제 우선 확인 |

최대 재시도

각 단계 최대 3회 시도. 3회 실패 시 멈추고 사용자에게 보고.

Read more
Ships withmy-cc-harness

my-claude-code-asset

Get the whole plugin

Other skills on my-cc-harness.

auto-memory
Skill

auto-memory

레포에서 실질적인 작업(구현·수정·배포·디버깅)을 시작할 때, 새 레포를 처음 파악할 때, 작업을 마치고 기억할 지식이 생겼을 때 사용. 작업 유형에 맞는 docs·메모리만 선택적으로 로드하는 라우팅 테이블을 운영한다

autodev-parallel
Skill

autodev-parallel

Ralph Loop 병렬 버전. 여러 에이전트가 worktree에서 동시에 PRD 항목을 처리한다. 트리거: "PRD 항목 병렬 구현", "병렬 구현", "autodev parallel", "워크트리 병렬 개발", "병렬 랄프"…

autodev
Skill

autodev

Ralph Loop 기반 자율 개발 루프. Stop Hook이 세션 종료를 가로채어 PRD 항목을 하나씩 완료하며 자동 커밋한다. 트리거: "autodev", "자율 개발", "밤새 돌려", "랄프 루프", "ralph loop",…

brainstorming
Skill

brainstorming

기능 추가·컴포넌트 생성·동작 변경 등 모든 창작 작업 전에 사용. 구현 전에 의도·요구사항·설계를 대화로 확정 (심층 인터뷰가 필요한 대규모 기능은 /spec 사용)