Getting Started¶
This guide gets you from clone to first task, first approval, and first proof export.
Hermit is local-first. By default it keeps state under ~/.hermit, including configuration, tasks, artifacts, receipts, and memory.
2-Minute Experience¶
Try governed execution in under two minutes:
# 1. Install (3 seconds)
curl -fsSL https://raw.githubusercontent.com/heggria/Hermit/main/install-macos.sh | bash
# 2. Run a task (30 seconds)
hermit run "List the files in the current directory and summarize what you see"
# 3. Inspect the task record (30 seconds)
hermit task list
hermit task show <task_id>
# 4. View proof and receipts (30 seconds)
hermit task proof <task_id>
hermit task receipts --task-id <task_id>
# 5. Roll back if needed (30 seconds)
hermit task rollback <receipt_id>
You just experienced governed execution: every action was authorized by the kernel, produced a receipt, and left an inspectable proof trail. Continue below for full setup details.
Requirements¶
- Python
3.13+ uvrecommended- an LLM provider configuration
Optional:
- Feishu credentials if you want long-running channel ingress
- macOS
rumpsif you want the menu bar companion
Install¶
The simplest path is:
make install
This initializes the local workspace and installs Hermit for local use.
Manual path:
uv sync --group dev --group typecheck --group docs --group security --group release
uv run hermit init
Configure A Provider¶
Hermit supports claude, codex, and codex-oauth.
Example using OpenAI:
export HERMIT_PROVIDER=codex
export OPENAI_API_KEY=sk-...
export HERMIT_MODEL=gpt-5.4
You can also store long-lived configuration in ~/.hermit/.env or ~/.hermit/config.toml.
Check the resolved config:
hermit config show
hermit auth status
For deeper configuration details, see configuration.md.
Run Your First Task¶
Interactive:
hermit chat
One-shot:
hermit run "Summarize the current repository"
Long-running service:
hermit serve --adapter feishu
Inspect The Task Kernel¶
Hermit is not just a session shell. It already records durable task objects in the local kernel ledger.
List tasks:
hermit task list
Show one task:
hermit task show <task_id>
Inspect task events:
hermit task events <task_id>
Show receipts:
hermit task receipts --task-id <task_id>
Show a proof summary:
hermit task proof <task_id>
Export a proof bundle:
hermit task proof-export <task_id>
Approval And Rollback¶
When a consequential action is blocked for approval, Hermit records an approval object and exposes it through the task CLI.
Approve:
hermit task approve <approval_id>
Deny:
hermit task deny <approval_id> --reason "not safe"
If a receipt supports rollback:
hermit task rollback <receipt_id>
Rollback is not universal today. Treat it as supported for selected receipt classes, not as a blanket guarantee.
Where State Lives¶
Common paths under ~/.hermit:
.envconfig.tomlkernel/state.dbsessions/memory/schedules/plugins/
The kernel database is where Hermit records task, step, approval, receipt, proof, and memory-related state.
How To Read The Docs¶
Start here:
If you are evaluating Hermit, the most important distinction is this:
architecture.mddescribes what the repo currently implementskernel-spec-v0.1.mddescribes the target architecture Hermit is converging toward