Communitygithub.com

uzysjung/uzys-agent-harness

厳選されたAIコーディングスキルとプラグインをテクノロジースタックに合わせてキュレーション。Claude Code、Codex、OpenCode、Antigravityなど、必要なものだけをインストールできます。

uzys-agent-harness とは?

このスキルは、AIエージェント(Claude Code、Codex、OpenCode、Antigravityなど)向けに、評価駆動開発(EDD)を実践するための正式な評価フレームワークを提供します。開発者はコーディング前に成功基準を定義し、自動評価でpass@kメトリクスを測定することで、AIエージェントの信頼性を定量的に管理できます。コードベースのグレーダー、モデルベースのグレーダー(Claude自身が評価)、人間によるレビューといった3段階の評価タイプを用意し、新機能の能力評価と既存機能の回帰テストをサポートします。評価定義はプロジェクト内の `.claude/evals/` に保存され、`/eval define`、`/eval check`、`/eval report` といったスラッシュコマンドで簡単に操作できるため、CI/CDパイプラインと統合しやすく、AI支援開発の品質保証に役立ちます。

対応✓Claude Code✓Codex CLI~Cursor✓Antigravity✓OpenCode
npx skills add uzysjung/uzys-agent-harness

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Eval Harness スキル

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

アクティベートするタイミング

  • AI支援ワークフローに評価駆動開発(EDD)を導入するとき
  • Claude Codeのタスク完了に対する合格/不合格基準を定義するとき
  • pass@k メトリクスでエージェントの信頼性を測定するとき
  • プロンプトやエージェントの変更に対する回帰テストスイートを作成するとき
  • モデルバージョン間でエージェントのパフォーマンスをベンチマークするとき

哲学

評価駆動開発(EDD)は、評価を「AI開発における単体テスト」として扱います。

  • 実装前に期待される動作を定義する
  • 開発中に継続的に評価を実行する
  • 各変更で回帰を追跡する
  • 信頼性測定に pass@k メトリクスを使用する

評価タイプ

能力評価(Capability Evals)

Claudeが以前はできなかったことを実行できるかテストします。

[CAPABILITY EVAL: 機能名]
タスク: Claudeが達成すべき内容の説明
成功基準:
  - [ ] 基準1
  - [ ] 基準2
  - [ ] 基準3
期待される出力: 期待される結果の説明

回帰評価(Regression Evals)

変更が既存機能を壊していないことを確認します。

[REGRESSION EVAL: 機能名]
ベースライン: SHA またはチェックポイント名
テスト:
  - 既存テスト1: PASS/FAIL
  - 既存テスト2: PASS/FAIL
  - 既存テスト3: PASS/FAIL
結果: X/Y パス(以前は Y/Y)

グレーダータイプ

1. コードベースグレーダー

コードを使用した決定的なチェック。

# ファイルが期待されるパターンを含むか確認
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を使用してオープンエンドな出力を評価します。

[MODEL GRADER PROMPT]
以下のコード変更を評価してください。
1. 問題を解決していますか?
2. 構造は適切ですか?
3. エッジケースは処理されていますか?
4. エラーハンドリングは適切ですか?

スコア: 1-5(1=不十分、5=優秀)
理由: [説明]

3. 人間によるグレーダー

手動レビューが必要な場合にフラグを立てます。

[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. 定義(コーディング前)

## EVAL DEFINITION: 機能-xyz

### 能力評価
1. 新しいユーザーアカウントを作成できる
2. メール形式を検証できる
3. パスワードを安全にハッシュ化できる

### 回帰評価
1. 既存のログインが引き続き動作する
2. セッション管理が変更されていない
3. ログアウトフローが正常

### 成功メトリクス
- 能力評価の pass@3 > 90%
- 回帰評価の pass^3 = 100%

2. 実装

定義された評価に合格するコードを記述します。

3. 評価

# 能力評価を実行
[各能力評価を実行し、PASS/FAILを記録]

# 回帰評価を実行
npm test -- --testPathPattern="existing"

# レポートを生成

4. 報告

EVAL REPORT: 機能-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 機能名

.claude/evals/機能名.md に評価定義ファイルを作成します。

実装中

/eval check 機能名

現在の評価を実行し、ステータスを報告します。

実装後

/eval report 機能名

完全な評価レポートを生成します。

評価の保存

プロジェクトに評価を保存します。

.claude/
  evals/
    機能-xyz.md      # 評価定義
    機能-xyz.log     # 評価実行履歴
    baseline.json    # 回帰ベースライン

ベストプラクティス

  1. コーディング前に評価を定義する - 成功基準について明確な思考を強制します
  2. 頻繁に評価を実行する - 回帰を早期に発見します
  3. 経時的に pass@k を追跡する - 信頼性の傾向を監視します
  4. 可能な限りコードグレーダーを使用する - 確率的より決定的
  5. セキュリティは人間によるレビュー - セキュリティチェックを完全に自動化しないでください
  6. 評価を高速に保つ - 遅い評価は実行されません
  7. 評価をコードとバージョン管理する - 評価は第一級の成果物です

例:認証の追加

## EVAL: 認証追加

### フェーズ1: 定義(10分)
能力評価:
- [ ] ユーザーがメール/パスワードで登録できる
- [ ] ユーザーが有効な認証情報でログインできる
- [ ] 無効な認証情報は適切なエラーで拒否される
- [ ] セッションがページリロード後も持続する
- [ ] ログアウトでセッションがクリアされる

回帰評価:
- [ ] 公開ルートは引き続きアクセス可能
- [ ] APIレスポンスが変更されていない
- [ ] データベーススキーマに互換性がある

### フェーズ2: 実装(時間は変動)
[コードを記述]

### フェーズ3: 評価
実行: /eval check 認証追加

### フェーズ4: 報告
EVAL REPORT: 認証追加
==============================
能力評価: 5/5 パス(pass@3: 100%)
回帰評価: 3/3 パス(pass^3: 100%)
ステータス: 出荷可能

関連スキル