mcpField
E
eval

eval

github.com/alirezarezvaniエージェントワークフロー28.9k1.4k 回インストール2 日前に更新
リポジトリ

eval について

eval は、AgentHub セッション内のエージェントの成果を順位付けするスキルです。設定済みの指標を実行する方法、LLM が差分を比較する方法、両者を組み合わせる方法に対応します。

主な機能

  1. 01コマンド指標で成果を順位付け
  2. 02LLM 判定でエージェントの差分を比較
  3. 03指標評価と定性評価を併用
  4. 04理由付きの順位を表示
  5. 05評価後にセッション状態を更新

活用シーン

  1. 01測定した性能でエージェントの成果を順位付け
  2. 02コード変更の正確性と品質を比較
  3. 03指標が拮抗した結果を定性評価で判定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alirezarezvani/claude-skills --skill eval

インストール後、Claude Code で/evalを入力して読み込まれたか確認します。

詳細

/hub:eval — エージェントの結果を評価する

セッション内のすべてのエージェントの結果を順位付けします。メトリクスベースの評価(コマンドを実行)、LLM による判定(差分を比較)、またはハイブリッド評価に対応しています。

使用方法

/hub:eval                           # Eval latest session using configured criteria
/hub:eval 20260317-143022           # Eval specific session
/hub:eval --judge                   # Force LLM judge mode (ignore metric config)

動作

メトリクスモード(eval コマンドが設定されている場合)

各エージェントのワークツリーで評価コマンドを実行します。

python {skill_path}/scripts/result_ranker.py \
  --session {session-id} \
  --eval-cmd "{eval_cmd}" \
  --metric {metric} --direction {direction}

出力:

RANK  AGENT       METRIC      DELTA      FILES
1     agent-2     142ms       -38ms      2
2     agent-1     165ms       -15ms      3
3     agent-3     190ms       +10ms      1

Winner: agent-2 (142ms)
LLM 判定モード(eval コマンドが設定されていない場合、または --judge フラグを指定した場合)

各エージェントについて:

  1. 差分を取得します:git diff {base_branch}...{agent_branch}
  2. .agenthub/board/results/agent-{i}-result.md からエージェントの結果投稿を読み取ります
  3. すべての差分を比較し、次の基準で順位付けします:
    • 正確性 — タスクを解決できているか
    • シンプルさ — 正確性が同等なら、変更行数が少ないほうが優れています
    • 品質 — 実行が安定しており、構成が適切で、リグレッションがないか

根拠を添えて順位を提示します。

コンテンツタスクにおける LLM 判定の出力例:

RANK  AGENT    VERDICT                               WORD COUNT
1     agent-1  Strong narrative, clear CTA            1480
2     agent-3  Good data points, weak intro           1520
3     agent-2  Generic tone, no differentiation       1350

Winner: agent-1 (strongest narrative arc and call-to-action)
ハイブリッドモード
  1. まずメトリクス評価を実行します
  2. 上位のエージェント同士の差が 10% 以内なら、LLM 判定で同点を解消します
  3. メトリクスによる順位と定性的な順位の両方を提示します

評価後

  1. セッション状態を更新します:
python {skill_path}/scripts/session_manager.py --update {session-id} --state evaluating
  1. ユーザーに次の内容を伝えます:
    • 順位付きの結果。優勝者を強調します
    • 次のステップ:優勝者をマージするには /hub:merge
    • または、優勝者を明示するには /hub:merge {session-id} --agent {winner}

コメント