Continuous self-improvement system for Hermes Agent. Analyzes your past sessions to find recurring failures and skill gaps, then automatically creates or patches skills and runs self-evolution to fix them. Set it to run overnight and wake up to a better agent. Use /dojo to start.
ee114e7Hermes Dojo is your agent's training gym. It reads your past sessions, finds where the agent struggles, creates or improves skills to fix those weaknesses, and tracks improvement over time.
The core loop: measure → identify weakness → fix → evolve → verify → report
/dojo or /dojo analyze — Analyze recent sessions for failure patterns/dojo improve — Fix the top weaknesses (patch skills + run self-evolution)/dojo report — Show current performance metrics and improvement history/dojo history — Show learning curve over time/dojo auto — Set up overnight cron: analyze + improve + report at 6am/dojo status — Quick summary of agent healthRun python3 ~/.hermes/skills/hermes-dojo/scripts/monitor.py to scan recent sessions.
This reads ~/.hermes/state.db and produces a JSON report with:
Present the results as a clear dashboard:
=== 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
For each identified weakness, decide the fix:
A) Existing skill fails → patch it:
skill_manage with action "patch" to add error handling, better instructions, or edge case coverageB) No skill exists for a recurring need → create one:
skill_manage with action "create" to make a new skillC) Skill exists but needs deeper improvement → run self-evolution:
cd ~/.hermes/hermes-agent-self-evolution && .venv/bin/python3 -m evolution.skills.evolve_skill --skill <name> --hermes-repo ~/.hermes --iterations 5 --eval-source syntheticAfter improvements:
monitor.py to compute new metricsRun python3 ~/.hermes/skills/hermes-dojo/scripts/reporter.py to generate a report.
Format for Telegram delivery:
🥋 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)
Run python3 ~/.hermes/skills/hermes-dojo/scripts/tracker.py save to persist metrics.
Run python3 ~/.hermes/skills/hermes-dojo/scripts/tracker.py history to show the learning curve.
When the user says /dojo auto:
Set up a cron job that runs at 6:00 AM daily: "Run /dojo analyze, then /dojo improve on the top 3 weaknesses, then send the report to my home channel."
This makes the agent literally improve while you sleep.
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/hermes-dojo · pinned to the source commit
git clone https://github.com/Yonkoo11/hermes-dojo.git
cd hermes-dojo
git checkout ee114e72e18b13d3aeb4b76a8d1ade0916972248
mkdir -p ".claude/skills/hermes-dojo"
cp -r . ".claude/skills/hermes-dojo"Review the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
Scanner static-checks@0.1.0 · commit ee114e72e18b. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
Uses encoding/eval patterns that can hide executable content.
Evidence: [redacted]· fingerprint 1bbd174404efbce9