Open Max is a self-extending Rust agent harness for coding in the terminal. One static binary. Seven tools. About 1,200 frozen prompt tokens. The agent builds its own bench; you stay on approvals and judgment.
$git clone https://github.com/Max17190/open-max && cd open-max && cargo build --release -p open-max-tui
❯ add a tool that searches our docs index ⚙ write_file .openmax/tools/docsearch.toml · ok · 12ms ▲ new tool source needs approval: .openmax/tools/docsearch.toml [y] Allow once [a] Allow for run [n] Deny • toolbox changed: re-frozen with 8 tools, 3 skills - docsearch ⚙ docsearch "approval walls" · ok · 31ms The docs index covers approvals in governance.md; wiring the new tool into the review skill now.
Seven built-in tools and a short frozen prompt. Token cost is design:
/context itemizes every token you spend, and anything that
would bill every request for capability the turn never uses stays out of
the core.
The agent drops a TOML tool, a SKILL.md, a hook, or a
prompt template as a plain file. The harness verifies it, explains any
problem with reasons, and re-freezes the toolbox the moment a change
lands. A tool the agent writes is a tool it uses on its very next
step, with no restart.
Projects are trusted before any turn runs. Mutating tools wait for
approval; hooks and permission grants wait for a human's
openmax --approve; a hash-chained ledger records who blessed
what. No tool and no in-session path can loosen the
rules.
Every harness feature is a fossil of a model limitation. The models improved. The features remained.
Open Max makes the opposite bet: delete the fossils, shrink the core to what must stay fixed, and let every capability live in plain files the agent writes, under rules it cannot rewrite. Growth is only safe when the thing that grows is separate from the authority that judges it.
Need something the core does not ship?
| External service or specialized capability | A CLI-backed TOML tool plus an on-demand skill |
| Reusable workflow or command | A SKILL.md package or a prompt template |
| Guardrails and policy | Hooks and permission rules, human-approved, failing closed |
| Another frontend entirely | The versioned --stdio JSONL protocol |
Quickstart
Then let the harness explain itself: openmax --check
validates every extension file with reasons, and openmax --spec
prints the authoring contract for tools, skills, hooks, permissions,
settings, and the stdio wire.