{% extends "main.html" %} {% block tabs %} {{ super() }} {% endblock %} {% block content %}{% endblock %} {% block hero %}
Approve before side effects. Inspect receipts after execution. Roll back when needed.
Same model loop. Different operator contract.
curl -fsSL https://raw.githubusercontent.com/heggria/Hermit/main/install-macos.sh | bash
All meaningful work flows through durable Task objects. CLI, chat, scheduler, webhook, and adapters converge on the same task semantics.
The model proposes actions. The kernel decides whether they are allowed, whether they need approval, and what authority envelope they get.
Important actions produce receipts. Proof summaries and proof bundles make the action chain inspectable. Supported receipts can be rolled back.
Rollback-aware recovery for supported receipt classes. Undo actions when needed instead of hoping the model got it right.
Context is compiled from artifacts, working state, beliefs, memory records, and task state — not just transcript history.
Memory is not an ungoverned scratchpad. Durable memory promotion is tied to evidence, scope, retention, and invalidation rules.
One task, still visible afterward.
# Run a task
$ hermit run "Summarize the current repository"
# Inspect the task record
$ hermit task list
$ hermit task show <task_id>
# View receipts and proof
$ hermit task receipts --task-id <task_id>
$ hermit task proof <task_id>
# Roll back if needed
$ hermit task rollback <receipt_id>
Models propose actions, the kernel authorizes, then the executor runs. No direct model-to-tool execution.
Asks before writing outside the workspace. Every file change produces a receipt.
Produces artifacts and keeps an inspectable task ledger across scheduled runs.
Approvals and task continuity matter when connected to Feishu, Slack, or other channels.
Durable memory cites evidence. Memory promotion is governed, not a free-for-all scratchpad.
Hermit is open source (MIT) and shipping today.