Eval Harness

affaan-m/ECC/docs/ja-JP/skills/eval-harness

作者 affaan-mef648e01899ba3e8dc6371642deaaf64b4477775無授權條款275K 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫4 天前更新

Claude Codeセッションの正式な評価フレームワークで、評価駆動開発(EDD)の原則を実装します

僅含說明AI & Agents
AI 產生的概覽

為 Claude Code 工作階段定義評估驅動開發框架,包含能力評估、回歸評估、評分器與 pass@k 指標。

功能
此技能以評估驅動開發(EDD)原則為基礎,為 Claude Code 工作階段提供正式的評估框架。它定義了能力評估與回歸評估、三種評分器類型(程式碼式、模型式、人工),以及 pass@k 與 pass^k 等可靠性指標。它也描述了「定義—實作—評估—報告」的工作流程,以及將評估定義、紀錄與基準存放在 .claude/evals/ 下的方式。
適用情境
當你希望在實作功能前先定義預期行為,並在實作後加以驗證時使用。它適合希望在 AI 輔助程式碼庫的每次變更中追蹤回歸並衡量可靠性的團隊。
執行需求
僅為說明文件,未附帶指令碼。它引用了 Read、Write、Edit、Bash、Grep 與 Glob 工具,範例假定使用搭配 npm 的 Node.js 專案來執行測試與建置。

Eval Harnessスキル

Claude Codeセッションの正式な評価フレームワークで、評価駆動開発(EDD)の原則を実装します。

哲学

評価駆動開発は評価を「AI開発のユニットテスト」として扱います:

  • 実装前に期待される動作を定義
  • 開発中に継続的に評価を実行
  • 変更ごとにリグレッションを追跡
  • 信頼性測定にpass@kメトリクスを使用

評価タイプ

能力評価

Claudeが以前できなかったことができるようになったかをテスト:

markdown
[CAPABILITY EVAL: feature-name]タスク: Claudeが達成すべきことの説明成功基準:  - [ ] 基準1  - [ ] 基準2  - [ ] 基準3期待される出力: 期待される結果の説明

リグレッション評価

変更が既存の機能を破壊しないことを確認:

markdown
[REGRESSION EVAL: feature-name]ベースライン: SHAまたはチェックポイント名テスト:  - existing-test-1: PASS/FAIL  - existing-test-2: PASS/FAIL  - existing-test-3: PASS/FAIL結果: X/Y 成功(以前は Y/Y)

評価者タイプ

1. コードベース評価者

コードを使用した決定論的チェック:

bash
# ファイルに期待されるパターンが含まれているかチェックgrep -q "export function handleAuth" src/auth.ts && echo "PASS" || echo "FAIL"
# テストが成功するかチェックnpm test -- --testPathPattern="auth" && echo "PASS" || echo "FAIL"
# ビルドが成功するかチェックnpm run build && echo "PASS" || echo "FAIL"

2. モデルベース評価者

Claudeを使用して自由形式の出力を評価:

markdown
[MODEL GRADER PROMPT]次のコード変更を評価してください:1. 記述された問題を解決していますか?2. 構造化されていますか?3. エッジケースは処理されていますか?4. エラー処理は適切ですか?
スコア: 1-5(1=不良、5=優秀)理由: [説明]

3. 人間評価者

手動レビューのためにフラグを立てる:

markdown
[HUMAN REVIEW REQUIRED]変更内容: 何が変更されたかの説明理由: 人間のレビューが必要な理由リスクレベル: LOW/MEDIUM/HIGH

メトリクス

pass@k

「k回の試行で少なくとも1回成功」

  • pass@1: 最初の試行での成功率
  • pass@3: 3回以内の成功
  • 一般的な目標: pass@3 > 90%

pass^k

「k回の試行すべてが成功」

  • より高い信頼性の基準
  • pass^3: 3回連続成功
  • クリティカルパスに使用

評価ワークフロー

1. 定義(コーディング前)

markdown
## 評価定義: feature-xyz
### 能力評価1. 新しいユーザーアカウントを作成できる2. メール形式を検証できる3. パスワードを安全にハッシュ化できる
### リグレッション評価1. 既存のログインが引き続き機能する2. セッション管理が変更されていない3. ログアウトフローが維持されている
### 成功メトリクス- 能力評価で pass@3 > 90%- リグレッション評価で pass^3 = 100%

2. 実装

定義された評価に合格するコードを書く。

3. 評価

bash
# 能力評価を実行[各能力評価を実行し、PASS/FAILを記録]
# リグレッション評価を実行npm test -- --testPathPattern="existing"
# レポートを生成

4. レポート

markdown
評価レポート: feature-xyz========================
能力評価:  create-user:     PASS (pass@1)  validate-email:  PASS (pass@2)  hash-password:   PASS (pass@1)  全体:            3/3 成功
リグレッション評価:  login-flow:      PASS  session-mgmt:    PASS  logout-flow:     PASS  全体:            3/3 成功
メトリクス:  pass@1: 67% (2/3)  pass@3: 100% (3/3)
ステータス: レビュー準備完了

統合パターン

実装前

/eval define feature-name

.claude/evals/feature-name.mdに評価定義ファイルを作成

実装中

/eval check feature-name

現在の評価を実行してステータスを報告

実装後

/eval report feature-name

完全な評価レポートを生成

評価の保存

プロジェクト内に評価を保存:

.claude/  evals/    feature-xyz.md      # 評価定義    feature-xyz.log     # 評価実行履歴    baseline.json       # リグレッションベースライン

ベストプラクティス

  1. コーディング前に評価を定義 - 成功基準について明確に考えることを強制
  2. 頻繁に評価を実行 - リグレッションを早期に検出
  3. 時間経過とともにpass@kを追跡 - 信頼性のトレンドを監視
  4. 可能な限りコード評価者を使用 - 決定論的 > 確率的
  5. セキュリティは人間レビュー - セキュリティチェックを完全に自動化しない
  6. 評価を高速に保つ - 遅い評価は実行されない
  7. コードと一緒に評価をバージョン管理 - 評価はファーストクラスの成果物

例:認証の追加

markdown
## EVAL: add-authentication
### フェーズ 1: 定義(10分)能力評価:- [ ] ユーザーはメール/パスワードで登録できる- [ ] ユーザーは有効な資格情報でログインできる- [ ] 無効な資格情報は適切なエラーで拒否される- [ ] セッションはページリロード後も持続する- [ ] ログアウトはセッションをクリアする
リグレッション評価:- [ ] 公開ルートは引き続きアクセス可能- [ ] APIレスポンスは変更されていない- [ ] データベーススキーマは互換性がある
### フェーズ 2: 実装(可変)[コードを書く]
### フェーズ 3: 評価Run: /eval check add-authentication
### フェーズ 4: レポート評価レポート: add-authentication==============================能力: 5/5 成功(pass@3: 100%)リグレッション: 3/3 成功(pass^3: 100%)ステータス: 出荷可能

來源與署名

來源:affaan-m/ECC位於docs/ja-JP/skills/eval-harness提交ef648e0

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架