Hermit keeps Claude Code or Codex as the orchestrator while a local MCP executor handles cost-aware coding work.
Project description
HermitAgent
Run Claude Code or Codex cheaper — Hermit is an MCP executor that handles the high-token mechanical work while your orchestrator stays in charge.
┌──────────────┐
│ Claude Code │──┐
│ (planner) │ │ ┌──────────────┐ any OpenAI-compatible ┌───────┐
└──────────────┘ ├───▶│ HermitAgent │ ────────────────────────▶ │ LLM │
│ │ (executor) │ └───────┘
┌──────────────┐ │ └──────────────┘
│ Codex │──┘ ~$0 / flat-rate
│ (planner) │
└──────────────┘
Claude Code or Codex stays the orchestrator — planning, interviewing, code review. Hermit takes the rest: file edits, test runs, commits, refactors, on a cheap local or flat-rate model via MCP. The switch is one word in a slash command: /foo → /foo-hermit.
Install
npm install -g @cafitac/hermit-agent
hermit install # guided setup (Claude Code + Codex)
Requires Node.js 20+ and Python 3.11+. The npm package bootstraps a managed Python runtime under ~/.hermit/ on first run — no repo checkout needed.
To upgrade: hermit update
Quick start
hermit-mcp-server # starts the gateway + MCP stdio server
Then in Claude Code:
/feature-develop-hermit <task>
Claude interviews, writes the plan, and delegates implementation to Hermit over MCP. Executor tokens never hit your orchestrator bill.
Reference skills
Four example skills ship under .claude/commands/. Fork these into your own workflow:
| Command | Claude does | Hermit does |
|---|---|---|
/feature-develop-hermit |
interview + plan | implement + test |
/code-apply-hermit |
read PR review | apply every change |
/code-polish-hermit |
pick what to polish | lint/test loop |
/code-push-hermit |
write PR description | commit + push |
See docs/hermit-variants.md to add your own.
Executor LLM
ollama (local, free):
brew install ollama && ollama pull qwen3-coder:30b
z.ai (flat-rate subscription) — add to ~/.hermit/settings.json:
{
"providers": {
"z.ai": {
"base_url": "https://api.z.ai/api/coding/paas/v4",
"api_key": "<your key>",
"anthropic_base_url": "https://api.z.ai/api/anthropic"
}
}
}
Configuration
~/.hermit/settings.json (created by hermit install):
{
"gateway_url": "http://localhost:8765",
"gateway_api_key": "hermit-mcp-…",
"model": "glm-5.1",
"routing": {
"priority_models": [
{"model": "gpt-5.4", "reasoning_effort": "medium"},
{"model": "glm-5.1"},
{"model": "qwen3-coder:30b"}
]
}
}
Providers not configured or installed are skipped automatically. Explicit model names are strict — a missing provider returns a clear error instead of silently falling back.
Architecture
- AgentLoop — LLM turn → tool call → result → compact on context fill
- Gateway — FastAPI relay in front of the executor (routing, 429 failover, dashboard at
:8765) - MCP server —
run_task/reply_task/check_task/cancel_task - TUI — optional React+Ink terminal UI for standalone interactive sessions (
hermit)
Tests
.venv/bin/pytest tests/
Status
Early, working, MIT. No release cadence guarantees.
License
MIT — see LICENSE.
See also
- docs/cc-setup.md — Claude Code MCP registration details
- docs/hermit-variants.md — the
-hermitskill family - docs/measure-savings.md — cost-savings measurement protocol
- benchmarks/ — reproducible task specs and community datapoints
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cafitac_hermit_agent-0.3.20.tar.gz.
File metadata
- Download URL: cafitac_hermit_agent-0.3.20.tar.gz
- Upload date:
- Size: 446.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b5682dc070ac98119517188082b2523199f63274f80ef98fbe665dc017ae6e5
|
|
| MD5 |
d94bf60d7daaed124dbed1ea0bdb530d
|
|
| BLAKE2b-256 |
6ea00ae96a405a66260bf77cc341ad2426c5ab8c144bf246742b501a3d649588
|
File details
Details for the file cafitac_hermit_agent-0.3.20-py3-none-any.whl.
File metadata
- Download URL: cafitac_hermit_agent-0.3.20-py3-none-any.whl
- Upload date:
- Size: 408.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7690304500aef96556c31d3aeb1f85e68bf70ef7e54751f079286189a3a1ab44
|
|
| MD5 |
0fa77e87a41b4f8369a3b571fdab3a2c
|
|
| BLAKE2b-256 |
287cf552e6a81c1dfefeaf10f4843745b3a0d4b7cd20ff3c6f82be258f79976b
|