// get started · 01

What Okami Agent is

Okami is a public alpha of an open-source coding agent. The thesis is clear: the intelligence lives in the harness, not the model. The model is a narrow, swappable…

The mental model

Most agents dump everything on the model — planning, memory, perfect tool-calls — and pray the model is strong enough. Okami flips that: the harness decomposes the task, constrains the output, verifies every effect and compensates for what's missing. The weaker the model, the harder the harness works — which is why a small local model gets close to a frontier model on well-gated tasks.

Start by goal

I want toread firstnext step
test it in the terminalInstallation + Quickstartokami chat and okami task in a disposable workspace
automate with evidenceExecutable recipesexitCriteria, events and replay
run a bot/APIChannels & gatewaySelf-hosting + Runbooks
configure a providerConfig examplesProviders & auth + doctor
evaluate technicallyTechnical comparisonArchitecture + generated version
contribute to the alphaRoadmap & changelogopen an issue, PR or provider report
extend capabilitiesSkills overviewTools overview + MCP

What “compensate for what's missing” means in practice

A weak model tends to (a) declare completion without doing the work, (b) repeat the same action in a loop, and (c) emit a tool-call with broken JSON. The harness neutralizes all three by construction: completion only counts with mechanically-verified exitCriteria; a fingerprint/cycle detector cuts the repetition; and constrained decoding (GBNF/json_constrained) makes invalid JSON impossible. The model only has to propose the next step — the quality floor comes from the verifier.

That's why the same task runs on a small local model or a frontier model without rewriting anything: the provider's tier and capability profile tell the harness how much to decompose, which tool-call mode to use and when to escalate — the rest of the scaffold is identical.

The two pains it was born from

Every capability in the project is born from one of these concrete failures, observed in other agents:

  • Unreliable harness: the agent says “I'll do that” and doesn't act; pressed, it says “hang on, doing it” and never finishes. No action invariant, no real completion detection.
  • Doesn't adhere to skills / design system: you ask for ShadCN/HeroUI and it invents ugly CSS. The skill becomes a hint, not a gate. No mechanical verification.

run, task or chat?

Three entry points, from rawest to most complete. Pick by what you need:

commandwhat it iswhen to use
okami runa raw round-trip to the providertest a prompt, simple pipe/script
okami taskfull harness until exitCriteriaverifiable automation (CI, cron, scripts)
okami chatinteractive TUI, persistent sessionwork alongside it, iterate, converse
okami gatewaychannel bots (Telegram, Paperclip…)let the agent work remotely

Anatomy of the agent

The okami/ package is organized by domain — each piece is pluggable and follows the same invariants:

core/        harness · tools · approval      ❤️ the engine (state machine)
llm/         providers · transports · oauth   model access + routing
agents/      load_agents · Router · group     multi-agent + group
gateway/     run_gateway · sessions           control plane / chat
channels/    telegram · paperclip · slack…    channel adapters
learning/    reflect · taste · persona        self-improvement
memory/      sqlite_fts5 · holographic · honcho
skills/      load_skills · skill_security     skills + scan

How to read these docs

The documentation is organized by intent. If you want to do something, head to Guides; if you want to understand how it works, Concepts; if you want the exact detail of a command or key, Reference.

Open this page in the interactive docs