mcpField
H
hermes-dojo

hermes-dojo

github.com/yonkoo11Agent 工作流19446 次安装21 周前更新
代码仓库

关于 hermes-dojo

Hermes Dojo 是用于训练 Hermes Agent 的技能,通过分析历史会话识别薄弱环节,并创建或改进技能。它还会复测表现、保存指标并追踪变化趋势。

主要功能

  1. 01分析会话中的工具成败与错误模式
  2. 02识别用户纠正和技能缺口
  3. 03修补或创建技能以应对弱项
  4. 04运行自我进化并复测指标
  5. 05保存性能指标并查看历史

适用场景

  1. 01查找 Agent 反复遇到的工具错误
  2. 02为经常需要的任务创建技能
  3. 03比较技能改进前后的表现

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yonkoo11/hermes-dojo --skill hermes-dojo

安装后在 Claude Code 中输入/hermes-dojo确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitignore
install.sh
LICENSE
README.md
docs/
index.html
references/
failure_patterns.md
scripts/
analyzer.py
demo.py
monitor.py
fixer.py
seed_demo_data.py
tracker.py
reporter.py

详细介绍

概览

Hermes Dojo 是 Agent 的训练场。它会读取过去的会话,找出 Agent 遇到困难的地方,创建或改进技能来弥补这些弱点,并跟踪随时间推移的改进情况。

核心循环:衡量 → 找出弱点 → 修复 → 进化 → 验证 → 报告

命令

  • /dojo 或 /dojo analyze — 分析近期会话中的失败模式
  • /dojo improve — 修复最突出的弱点(修补技能 + 运行自我进化)
  • /dojo report — 显示当前性能指标和改进历史
  • /dojo history — 显示随时间变化的学习曲线
  • /dojo auto — 设置隔夜 cron:在早上 6 点进行分析、改进并生成报告
  • /dojo status — 快速概览 Agent 的运行状况

工作流

第 1 步:分析

运行 python3 ~/.hermes/skills/hermes-dojo/scripts/monitor.py 扫描近期会话。

它会读取 ~/.hermes/state.db,并生成一份 JSON 报告,其中包含:

  • 各工具的成功率和失败率
  • 错误模式(按工具和错误类型分组)
  • 用户纠正信号(包含 "no,"、"wrong"、"I meant"、"not what I" 的消息)
  • 技能缺口检测(反复出现但没有对应技能的手动任务)
  • 会话级指标(每个会话的工具调用次数、重试模式)

将结果整理成清晰的仪表板:

=== Hermes Dojo Analysis ===
Sessions analyzed: 23 (last 7 days)
Total tool calls: 156
Overall success rate: 78%

Top Weaknesses:
1. terminal_run: 73% success (12 failures) — common error: "command not found"
2. web_extract: 81% success (4 failures) — common error: "timeout"
3. No skill for: CSV parsing (requested 4 times)

User Corrections Detected: 7
- 3x wrong file path
- 2x wrong command syntax
- 2x misunderstood request
第 2 步:改进

针对识别出的每个弱点,确定修复方法:

A)现有技能失效 → 修补技能:

  1. 阅读当前技能的 SKILL.md
  2. 分析第 1 步中的失败模式
  3. 使用 skill_manage,并将 action 设为 "patch",以添加错误处理、更完善的说明或边缘情况覆盖
  4. 记录此次更改

B)反复出现的需求没有对应技能 → 创建技能:

  1. 分析需要此能力的会话模式
  2. 使用 skill_manage,并将 action 设为 "create",以创建新技能
  3. 根据过去会话中的有效做法,添加具体说明
  4. 记录此次创建

C)已有技能但需要进一步改进 → 运行自我进化:

  1. 运行:cd ~/.hermes/hermes-agent-self-evolution && .venv/bin/python3 -m evolution.skills.evolve_skill --skill <name> --hermes-repo ~/.hermes --iterations 5 --eval-source synthetic
  2. 这会使用 GEPA 分析执行轨迹,并提出有针对性的改进建议
  3. 检查进化输出——如果分数有所提升,则接受
  4. 记录改进前后的分数
第 3 步:验证

改进后:

  1. 重新运行 monitor.py,计算新的指标
  2. 比较改进前后的成功率
  3. 如果提升幅度小于 5%,标记以供人工审查
  4. 将结果存入指标历史记录
第 4 步:报告

运行 python3 ~/.hermes/skills/hermes-dojo/scripts/reporter.py 生成报告。

Telegram 发送格式:

🥋 Hermes Dojo — Overnight Report

📊 Analyzed: 23 sessions, 156 tool calls
📈 Overall: 78% → 85% (+7%)

✅ Improved:
  • terminal_run: 73% → 96% (added PATH check)
  • web_extract: 81% → 95% (added retry + timeout)

🆕 New skill created:
  • csv-handler: for CSV parsing you keep asking about

⚠️ Still working on:
  • File path resolution (need more examples)

📉 Learning curve: 71% → 78% → 85% (3 days)
第 5 步:跟踪

运行 python3 ~/.hermes/skills/hermes-dojo/scripts/tracker.py save 持久化保存指标。 运行 python3 ~/.hermes/skills/hermes-dojo/scripts/tracker.py history 显示学习曲线。

设置隔夜 Cron

当用户说 /dojo auto 时:

设置一个每天早上 6:00 运行的 cron 任务: "Run /dojo analyze, then /dojo improve on the top 3 weaknesses, then send the report to my home channel."

这样一来,Agent 就能在你睡觉时不断改进。

重要说明

  • 切勿修改捆绑技能(位于 hermes-agent/skills/ 中)。只能修改 ~/.hermes/skills/ 中的用户技能
  • 自我进化要求已克隆 ~/.hermes/hermes-agent-self-evolution
  • 指标存储在 ~/.hermes/skills/hermes-dojo/data/metrics.json
  • 每次分析运行都会记录时间戳,以便跟踪数天或数周内的改进情况

评论

支持 Markdown