harness-evaluate-performance
Skill0 starsChanged 8 months agoMITView on GitHub
效果量化评估技能,评估任务执行效果、生成性能指标、验证目标达成
In this repository33 other files it gives its agents.
- harness-10x-productivity-boostSkill
- harness-adjust-granularitySkill
- harness-analyze-project-scaleSkill
- harness-auto-full-executionSkill
- harness-brainstormSkill
- harness-build-context-indexSkill
- harness-build-core-manifestSkill
- harness-build-deterministic-workflowSkill
- harness-check-clean-stateSkill
- harness-configSkill
- harness-context-clearSkill
- harness-determine-granularitySkill
- harness-diagnose-and-improveSkill
- harness-enable-circuit-breakerSkill
- harness-enforce-architecture-guardrailsSkill
- harness-escalate-to-humanSkill
- harness-evolveSkill
- harness-executing-plansSkill
- harness-generate-feature-listSkill
- harness-goalSkill
- harness-handle-failureSkill
- harness-initSkill
- harness-merge-agent-resultsSkill
- harness-merge-subharness-resultSkill
- harness-monitor-agent-batchSkill
- harness-monitor-subharness-agentSkill
- harness-planSkill
- harness-recover-clean-stateSkill
- harness-schedule-parallel-agentsSkill
- harness-session-handoffSkill
- harness-spawn-subharness-agentSkill
- harness-track-feature-progressSkill
- harness-validate-outputSkill
The file
Files
harness-evaluate-performance 效果量化评估技能
核心能力
- 检查前置条件(harness-merge-subharness-result)
- 读取执行追踪文件(GLOBAL_TRACE.md)
- 量化评估任务执行效果
- 生成性能指标报告
- 验证目标达成情况
- 生成改进建议
- 记录评估事件
- 更新全局状态
前置条件
- harness-init 已完成
- harness-merge-subharness-result 已完成
- GLOBAL_TRACE.md 文件存在(或可创建)
执行步骤
Step 1: 检查前置条件
使用 Read 工具读取:.EnjoyHarness/SKILL_REGISTRY.md
检查条件:
- harness-merge-subharness-result 已标记为完成
如果未完成:
❌ 错误: 结果合并未执行
💡 请先运行: harness-merge-subharness-resultStep 2: 读取执行追踪文件
使用 Read 工具读取:.trace/GLOBAL_TRACE.md
如果文件不存在,使用 Write 工具创建:
---
created_at: {当前时间}
total_traces: 0
---
# EnjoyHarness 全局执行追踪
## 追踪记录格式
时间 | 任务ID | 技能 | 操作类型 | 操作详情 | Token消耗 | 耗时(ms)
## 追踪列表
(暂无追踪记录)Step 3: 提取执行数据
使用 Bash 工具查询:
# 获取当前任务的执行数据
CURRENT_TASK=$(grep -A 10 "current_task" .EnjoyHarness/GLOBAL_STATE.md | grep "task_id" | awk '{print $2}')
# 统计任务相关的所有事件
TASK_EVENTS=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md)
echo "任务执行数据:"
echo "$TASK_EVENTS"
# 统计事件数量
EVENT_COUNT=$(echo "$TASK_EVENTS" | wc -l)
echo "事件总数: $EVENT_COUNT"Step 4: 量化评估指标
4.1 时间效率指标
# 计算总耗时
START_TIME=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | head -1 | awk '{print $1}')
END_TIME=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | tail -1 | awk '{print $1}')
# 转换为时间戳
START_TS=$(date -d "$START_TIME" +%s)
END_TS=$(date -d "$END_TIME" +%s)
TOTAL_TIME=$((END_TS - START_TS))
echo "开始时间: $START_TIME"
echo "结束时间: $END_TIME"
echo "总耗时: ${TOTAL_TIME}秒"4.2 Token消耗指标
# 统计Token消耗
TOTAL_TOKEN=0
# 从每个技能执行记录中提取Token消耗
while read line; do
TOKEN=$(echo "$line" | awk '{print $7}')
if [[ "$TOKEN" =~ ^[0-9]+$ ]]; then
TOTAL_TOKEN=$((TOTAL_TOKEN + TOKEN))
fi
done <<< "$TASK_EVENTS"
echo "Token总消耗: $TOTAL_TOKEN"
echo "Token效率: {任务复杂度}/$TOTAL_TOKEN"4.3 成功率指标
# 统计成功和失败事件
SUCCESS_COUNT=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | grep "SUCCESS" | wc -l)
FAILURE_COUNT=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | grep "FAILURE" | wc -l)
TOTAL_COUNT=$((SUCCESS_COUNT + FAILURE_COUNT))
if [ $TOTAL_COUNT -gt 0 ]; then
SUCCESS_RATE=$((SUCCESS_COUNT * 100 / TOTAL_COUNT))
echo "成功率: ${SUCCESS_RATE}%"
else
echo "成功率: N/A"
fi4.4 技能执行效率
# 统计各技能的执行次数和耗时
echo "技能执行统计:"
for skill in $(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | awk '{print $3}' | sort -u); do
SKILL_COUNT=$(grep "$CURRENT_TASK" .trace/GLOBAL_TRACE.md | grep "$skill" | wc -l)
echo " - $skill: ${SKILL_COUNT}次"
doneStep 5: 生成性能指标报告
使用 Write 工具创建文件:.EnjoyHarness/PERFORMANCE_REPORT.md
---
generated_at: {当前时间}
task_id: {任务ID}
evaluation_status: COMPLETED
---
# 效果量化评估报告
## 评估概况
- 评估时间: {当前时间}
- 任务ID: {任务ID}
- 评估状态: COMPLETED
## 时间效率指标
### 总体时间
- 开始时间: {开始时间}
- 结束时间: {结束时间}
- 总耗时: {总耗时}秒
- 平均每个技能: {平均耗时}秒
### 时间分布
- 初始化阶段: {耗时}秒 ({百分比}%)
- 执行阶段: {耗时}秒 ({百分比}%)
- 验证阶段: {耗时}秒 ({百分比}%)
### 时间效率评级
- ⭐⭐⭐⭐⭐ 优秀(< 30秒)
- ⭐⭐⭐⭐ 良好(30-60秒)
- ⭐⭐⭐ 一般(60-120秒)
- ⭐⭐ 较慢(120-300秒)
- ⭐ 很慢(> 300秒)
**评级结果**: {评级}
## Token消耗指标
### 总体Token
- Token总消耗: {数量}
- 平均每个技能: {平均值}
- Token效率: {任务复杂度}/Token
### Token分布
- Read操作: {数量} ({百分比}%)
- Write操作: {数量} ({百分比}%)
- Edit操作: {数量} ({百分比}%)
- Bash操作: {数量} ({百分比}%)
### Token消耗评级
- ⭐⭐⭐⭐⭐ 极优(< 3000)
- ⭐⭐⭐⭐ 优秀(3000-6000)
- ⭐⭐⭐ 良好(6000-10000)
- ⭐⭐ 一般(10000-15000)
- ⭐ 较高(> 15000)
**评级结果**: {评级}
## 成功率指标
### 事件统计
- 成功事件: {数量}次
- 失败事件: {数量}次
- 总事件: {数量}次
- 成功率: {百分比}%
### 失败分析
{如果有失败事件,列出失败原因和分布}
### 成功率评级
- ⭐⭐⭐⭐⭐ 完美(100%)
- ⭐⭐⭐⭐ 优秀(95-99%)
- ⭐⭐⭐ 良好(85-94%)
- ⭐⭐ 一般(70-84%)
- ⭐ 较低(< 70%)
**评级结果**: {评级}
## 技能执行效率
### 技能执行统计
| 技能名称 | 执行次数 | 平均耗时 | Token消耗 | 成功率 |
|---------|---------|---------|----------|--------|
| harness-init | {次数} | {耗时} | {token} | {成功率} |
| harness-validate-output | {次数} | {耗时} | {token} | {成功率} |
| {其他技能} | {次数} | {耗时} | {token} | {成功率} |
### 最耗时技能
- 第1名: {技能名称}({耗时}秒)
- 第2名: {技能名称}({耗时}秒)
- 第3名: {技能名称}({耗时}秒)
### 最高Token消耗技能
- 第1名: {技能名称}({token})
- 第2名: {技能名称}({token})
- 第3名: {技能名称}({token})
## 目标达成验证
### 原始目标
{从harness-goal中读取的SMART目标}
### 实际达成
{对比目标与实际结果}
### 目标达成评估
- [ ] 具体目标是否达成?
- [ ] 衡量标准是否满足?
- [ ] 时间限制是否遵守?
**达成结果**: {✅完全达成 / ⚠️部分达成 / ❌未达成}
### 差距分析
{如果有差距,分析原因}
## 综合评估
### 综合评分
- 时间效率: {分数}/5
- Token效率: {分数}/5
- 成功率: {分数}/5
- 目标达成: {分数}/5
**综合得分**: {平均分}/5
### 评级
- ⭐⭐⭐⭐⭐ 卓越(4.5-5.0)
- ⭐⭐⭐⭐ 优秀(4.0-4.4)
- ⭐⭐⭐ 良好(3.0-3.9)
- ⭐⭐ 一般(2.0-2.9)
- ⭐ 较差(< 2.0)
**最终评级**: {评级}
## 改进建议
### 时间优化
- {具体的优化建议}
### Token优化
- {具体的优化建议}
### 成功率优化
- {具体的优化建议}
### 流程优化
- {具体的优化建议}
## 历史对比
### 与上次任务对比
- 时间效率: {对比结果}
- Token效率: {对比结果}
- 成功率: {对比结果}
### 趋势分析
- 时间趋势: {改善/持平/下降}
- Token趋势: {改善/持平/下降}
- 成功率趋势: {改善/持平/下降}
## 下一步行动
### 立即改进
- [ ] {改进项1}
- [ ] {改进项2}
### 中期改进
- [ ] {改进项1}
- [ ] {改进项2}
### 长期改进
- [ ] {改进项1}
- [ ] {改进项2}Step 6: 验证目标达成情况
使用 Read 工具读取:memory/goals/{目标文件}
提取SMART目标:
- Specific(具体目标)
- Measurable(衡量标准)
- Achievable(可实现性)
- Relevant(相关性)
- Time-bound(时限)
对比实际执行结果:
### 目标验证
**原始目标**:
- Specific: {具体目标}
- Measurable: {衡量标准}
- Time-bound: {时限}
**实际结果**:
- 达成情况: {描述}
- 衡量结果: {数据}
- 耗时: {实际时间}
**验证结果**:
- Specific: {✅达成 / ❌未达成}
- Measurable: {✅达成 / ❌未达成}
- Time-bound: {✅达成 / ❌未达成}
**总体评价**: {✅完全达成 / ⚠️部分达成 / ❌未达成}Step 7: 生成改进建议
根据评估结果生成建议:
时间优化建议
- 减少不必要的文件读取
- 使用缓存机制
- 并行执行独立任务
- 优化文件搜索范围Token优化建议
- 精准加载必要文件
- 减少P1-P3级文件加载
- 使用上下文索引
- 避免重复读取成功率优化建议
- 增加前置检查
- 增强错误处理
- 使用熔断机制
- 增加重试逻辑Step 8: 记录评估事件
使用 Edit 工具追加内容到:.EnjoyHarness/EVENT_LOG.md
{当前时间} | PERFORMANCE_EVALUATION | harness-evaluate-performance | 评估任务: {任务ID} | SUCCESS
{当前时间} | EVALUATION_RESULT | harness-evaluate-performance | 综合得分: {分数}/5, 评级: {评级} | SUCCESSStep 9: 更新全局状态
使用 Edit 工具更新:.EnjoyHarness/GLOBAL_STATE.md
last_evaluation: {当前时间}
evaluation_status: COMPLETED
performance_score: {分数}
performance_rating: {评级}
goal_achieved: {YES/PARTIAL/NO}Step 10: 更新事件计数
使用 Edit 工具更新:.EnjoyHarness/EVENT_LOG.md
old_string: total_events: N
new_string: total_events: N+2
Step 11: 更新技能注册表
使用 Edit 工具更新:.EnjoyHarness/SKILL_REGISTRY.md
old_string: - [ ] harness-evaluate-performance - 效果评估技能
new_string: - [x] harness-evaluate-performance - 效果评估技能 ✅
Step 12: 输出完成信息
使用 Bash 工具输出:
echo ""
echo "✅ harness-evaluate-performance 完成!"
echo ""
echo "📊 评估结果:"
echo " - 时间效率: {分数}/5 ⭐"
echo " - Token效率: {分数}/5 ⭐"
echo " - 成功率: {分数}/5 ⭐"
echo " - 目标达成: {分数}/5 ⭐"
echo ""
echo "📋 综合得分: {分数}/5"
echo "🏆 最终评级: {评级}"
echo ""
echo "📄 报告:"
echo " - 性能报告: .EnjoyHarness/PERFORMANCE_REPORT.md"
echo ""
echo "🎯 下一步:"
if [ {目标达成} == "YES" ]; then
echo " - 目标已达成,可结束任务"
else
echo " - 目标未完全达成,需继续优化"
fi
echo ""成功标准
- 读取执行追踪文件
- 量化评估时间效率
- 量化评估Token消耗
- 量化评估成功率
- 生成性能指标报告
- 验证目标达成情况
- 生成改进建议
- 记录评估事件
- 更新全局状态
- 更新事件日志
- 技能注册表已更新
失败兜底
- harness-merge-subharness-result 未完成 → 终止执行,提示运行前置技能
- 无执行数据 → 输出"暂无数据需要评估"
联动关系
- 前置: harness-merge-subharness-result
- 自动触发: harness-goal(验证目标达成)或继续执行
迭代计数
本技能执行预计迭代次数: 约 10 次(Read 3次 + Write 1次 + Edit 3次 + Bash 3次)
测试用例
测试 1: 前置条件检查
输入: 在结果合并未执行时运行 期望输出: 错误提示"结果合并未执行" 验证方式: 删除合并记录后运行
测试 2: 时间效率计算
输入: 提供执行时间数据 期望输出: 正确的时间效率指标 验证方式: 手动计算验证
测试 3: Token消耗统计
输入: 提供Token使用数据 期望输出: 正确的Token消耗统计 验证方式: 累加验证
测试 4: 成功率计算
输入: 提供成功/失败事件数据 期望输出: 正确的成功率百分比 验证方式: 手动计算验证
测试 5: 性能报告生成
输入: 执行评估
期望输出: 生成 PERFORMANCE_REPORT.md
验证方式: ls .EnjoyHarness/PERFORMANCE_REPORT.md
测试 6: 目标达成验证
输入: 读取目标文件 期望输出: 正确的目标达成评估 验证方式: 对比SMART目标
测试 7: 全局状态更新
输入: 读取 GLOBAL_STATE.md
期望输出: evaluation_status 为 COMPLETED
验证方式: grep "evaluation_status" .EnjoyHarness/GLOBAL_STATE.md
测试 8: 事件日志记录
输入: 读取 EVENT_LOG.md
期望输出: 包含 PERFORMANCE_EVALUATION 事件
验证方式: grep "PERFORMANCE_EVALUATION" .EnjoyHarness/EVENT_LOG.md
评估指标体系
时间效率指标
计算方式: 任务总耗时 / 预期耗时
评级标准:
- 优秀: < 30秒
- 良好: 30-60秒
- 一般: 60-120秒
- 较慢: 120-300秒
- 很慢: > 300秒
优化方向:
- 减少文件I/O操作
- 使用缓存机制
- 并行执行任务Token消耗指标
计算方式: 总Token消耗 / 任务复杂度
评级标准:
- 极优: < 3000
- 优秀: 3000-6000
- 良好: 6000-10000
- 一般: 10000-15000
- 较高: > 15000
优化方向:
- 精准加载文件
- 减少上下文大小
- 使用上下文索引成功率指标
计算方式: 成功事件数 / 总事件数
评级标准:
- 完美: 100%
- 优秀: 95-99%
- 良好: 85-94%
- 一般: 70-84%
- 较低: < 70%
优化方向:
- 增强错误处理
- 增加前置检查
- 使用熔断机制使用示例
示例 1: 高效任务评估
任务: 简单文件生成
时间: 25秒
Token: 2500
成功率: 100%
评估结果:
- 时间效率: ⭐⭐⭐⭐⭐
- Token效率: ⭐⭐⭐⭐⭐
- 成功率: ⭐⭐⭐⭐⭐
- 综合得分: 5.0/5
- 最终评级: ⭐⭐⭐⭐⭐ 卓越示例 2: 中等效率任务评估
任务: 复杂功能开发
时间: 75秒
Token: 8500
成功率: 92%
评估结果:
- 时间效率: ⭐⭐⭐
- Token效率: ⭐⭐⭐
- 成功率: ⭐⭐⭐
- 综合得分: 3.0/5
- 最终评级: ⭐⭐⭐ 良好示例 3: 低效任务评估
任务: 大规模重构
时间: 350秒
Token: 16000
成功率: 65%
评估结果:
- 时间效率: ⭐
- Token效率: ⭐
- 成功率: ⭐⭐
- 综合得分: 1.3/5
- 最终评级: ⭐ 较差
建议: 需要优化执行流程与其他技能的协作
协作流程
harness-merge-subharness-result(合并结果)
↓
harness-evaluate-performance(评估效果)
↓
判断: 目标是否达成?
├─ 是 → 任务完成
└─ 否 → harness-diagnose-and-improve(诊断改进)协作示例
场景: 执行代码生成任务
阶段1: 合并结果
- harness-merge-subharness-agent → 合并子代理结果
阶段2: 评估效果
- harness-evaluate-performance → 评估执行效果
├─ 时间效率: 45秒 ⭐⭐⭐⭐
├─ Token效率: 5500 ⭐⭐⭐⭐
├─ 成功率: 98% ⭐⭐⭐⭐
└─ 综合得分: 4.0/5 ⭐⭐⭐⭐ 优秀
阶段3: 验证目标
- harness-goal → 验证目标达成
├─ Specific: ✅ 达成
├─ Measurable: ✅ 达成
└─ Time-bound: ✅ 达成
阶段4: 后续动作
- 目标已达成 → 任务完成
- 目标未达成 → 继续优化Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

