评估
eval
/hub:eval — 评估 Agent 结果
对会话中所有 Agent 的结果进行排名。支持基于指标的评估(运行命令)、LLM 评委(比较 diff)或混合模式。
用法
code
/hub:eval # 使用配置的标准评估最新会话
/hub:eval 20260317-143022 # 评估特定会话
/hub:eval --judge # 强制使用 LLM 评委模式(忽略指标配置)功能详解
指标模式 (配置了 eval 命令)
在每个 Agent 的工作树中运行评估命令:
bash
python {skill_path}/scripts/result_ranker.py \
--session {session-id} \
--eval-cmd "{eval_cmd}" \
--metric {metric} --direction {direction}输出示例:
code
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 标志)
针对每个 Agent:
1. 获取 diff:git diff {base_branch}...{agent_branch}
2. 读取 Agent 的结果帖子:.agenthub/board/results/agent-{i}-result.md
3. 比较所有 diff 并根据以下维度排名:
- 正确性 (Correctness) — 是否解决了任务?
- 简洁性 (Simplicity) — 在正确性相同的情况下,修改行数越少越好
- 质量 (Quality) — 执行干净,结构良好,无回归
展示排名并提供理由。
内容类任务的 LLM 评委输出示例:
code
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. 如果顶端 Agent 之间的差距在 10% 以内,则使用 LLM 评委打破平局
3. 同时展示指标排名和定性排名
评估后操作
1. 更新会话状态:
bash
python {skill_path}/scripts/session_manager.py --update {session-id} --state evaluating2. 告知用户:
- 展示排名结果并高亮获胜者
- 下一步建议:运行 /hub:merge 合并获胜者
- 或运行 /hub:merge {session-id} --agent {winner} 以明确指定合并对象