驗證循環技能
為 Claude Code 工作階段提供全面的驗證系統。
使用時機
在以下情況調用此技能:
- 完成一個功能或重大程式碼變更後
- 建立 PR 之前
- 當您想要確保品質關卡通過時
- 重構之後
驗證階段
階段 1:建置驗證
# 檢查專案是否能建置
npm run build 2>&1 | tail -20
# 或
pnpm build 2>&1 | tail -20
如果建置失敗,請停止並先修復再繼續。
階段 2:型別檢查
set -o pipefail
# TypeScript 專案
npx --no-install tsc --noEmit 2>&1 | head -30
# Python 專案
pyright . 2>&1 | head -30
回報所有型別錯誤。先修正關鍵錯誤再繼續。
階段 3:程式碼風格檢查
# JavaScript/TypeScript
npm run lint 2>&1 | head -30
# Python
ruff check . 2>&1 | head -30
階段 4:測試套件
# 執行測試並包含涵蓋率
npm run test -- --coverage 2>&1 | tail -50
# 檢查涵蓋率閾值
# 目標:最低 80%
回報:
- 總測試數:X
- 通過:X
- 失敗:X
- 涵蓋率:X%
階段 5:安全掃描
# 檢查機密資訊
grep -rn "sk-" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
grep -rn "api_key" --include="*.ts" --include="*.js" . 2>/dev/null | head -10
# 檢查 console.log
grep -rn "console.log" --include="*.ts" --include="*.tsx" src/ 2>/dev/null | head -10
階段 6:差異審查
# 顯示變更內容
git diff --stat
git diff HEAD~1 --name-only
審查每個變更的檔案,檢查:
- 非預期的變更
- 缺少的錯誤處理
- 潛在的邊界情況
輸出格式
執行所有階段後,產生驗證報告:
驗證報告
==================
建置: [通過/失敗]
型別: [通過/失敗] (X 個錯誤)
程式碼風格:[通過/失敗] (X 個警告)
測試: [通過/失敗] (X/Y 通過,Z% 涵蓋率)
安全: [通過/失敗] (X 個問題)
差異: [X 個檔案變更]
整體: [準備就緒/尚未準備好] 提交 PR
待修正問題:
1. ...
2. ...
持續模式
對於長時間工作階段,每 15 分鐘或在重大變更後執行驗證:
設定心理檢查點:
- 完成每個函式後
- 完成一個元件後
- 移動到下一個任務前
執行:/verify
與鉤子整合
此技能可補充 PostToolUse 鉤子,但提供更深入的驗證。 鉤子能立即捕捉問題;此技能則提供全面審查。