— ORDO MITHRAEUM · MMXXVI —
Tools for the inner chamber.
A modal editor, a terminal agent, and the local models that run them — three C instruments on a from-scratch inference engine. No cloud, no telemetry, no daemon. Bring your own keys, or run our weights on-device.
Plain mirror of https://mithraeums.github.io — no JavaScript, no web fonts, no third-party request. The interactive version lives at the link above; this one is for text browsers, emacs eww, and offline reading.
Suite — three instruments, one chamber
hake 箱 · hako-edit · the box
— I — editor · v0.1.6 · stable
A single-file modal text editor in C99. Vim-bound, language-aware, multi-pane. Embeds the hako agent in a split pane, so you can talk to a model without leaving your file.
— Modal editing · 40+ syntax modes · 18 themes · a live runner pane · OS-aware clipboard · zero runtime deps beyond libc + curl.
- CLI
- hake
- VERSION
- v0.1.6
- LANG
- C99 single file
- THEMES
- 18
- LICENSE
- GPL-3.0
curl install ↗ · Source ↗ · Releases
hako 箱 · hako-code · the agent
— II — agent · v0.2.3 · stable
A standalone terminal AI agent in one C file. Defaults to any installed hako model (hako-sho 3B / hako-koi 7B) — no key, no cloud. Adds 13 cloud providers (Anthropic OAuth, Copilot, GH Models, OpenRouter, OpenAI-compat) when you want them. hako --serve puts the same agent in a browser tab — hako studio, page and all, compiled into the binary.
— Persistent sessions · skills as markdown · trust-gated tools · prose tool mode for small models · a browser UI with no backend · sha-verified self-update.
- CLI
- hako
- VERSION
- v0.2.3
- DEFAULT
- hako-sho
- PROVIDERS
- 1 local + 13 cloud
- STUDIO
- hako --serve
- LICENSE
- GPL-3.0
curl install ↗ · Source ↗ · Browse skills
hako studio 箱 · hako-studio · the chamber
— III — studio · v0.0.2 · new
The agent with a face. The same hako.c compiled to WebAssembly, so it runs on your device, in your browser — no install, no account, no backend, and nothing proxied through us. Open it hosted, run the container, or serve it from the binary with hako --serve; it is one piece of software in three shapes.
— Your key goes straight to the provider · work stays in your browser or a folder you grant · per-folder sessions · files you can save out · themes, model and provider pickers.
- OPEN
- hako.mithraeum.studio
- VERSION
- v0.0.2
- RUNS
- browser · docker · hako --serve
- BACKEND
- none
- LICENSE
- GPL-3.0
Open studio ↗ · Source ↗ · Run the container
hakm 箱 · hako · in officina
— IV — models · koi live
Local-first model family. hako-sho (mini · 3B) and hako-koi (mid · 7B · Qwen2.5-Coder + hako wrap) live today on HuggingFace, tool-aware out of the box. A larger koi fine-tune (14B/32B) is queued; samurai (50B+) reserved.
— Native C engine — own loader, Q4_K/Q6_K + int8 kernels, BPE. No llama.cpp, no ggml, no ollama. The agent runs it as a one-shot hakm subprocess — no server, no daemon.
- CLI
- hakm
- LIVE
- hako-sho · hako-koi
- ENGINE
- v0.0.3
- TIERS
- mini · mid · max
- LICENSE
- GPL-3.0
curl install ↗ · Source ↗ · Model catalog
Creed
- Local first
- Your text, your keys, your weights. No telemetry, no silent network, no daemon.
- Single binary
- One C source. No JavaScript runtime to swallow your editor. The tool fits in a head.
- Bring your own model
- Any model, any provider. A peer at your terminal, not a stranger in the cloud.
Install
# the agent
curl -fsSL https://mithraeums.github.io/hako.sh | sh
# the editor
curl -fsSL https://mithraeums.github.io/hake.sh | sh
# the engine — build from source (libc + libm + pthread only)
git clone https://github.com/mithraeums/hako && cd hako && make
Each installer fetches the latest signed release for your OS/arch, verifies the sha256 sidecar, drops the binary in ~/.local/bin. No package manager, no daemon, no telemetry.
Skills — behaviors for hako, by name
Each is a folder in mithraeums/skills: a SKILL.md plus helpers. Markdown only — works in hako and in Claude.
- 01 corp/ — A company in a folder. CEO · DEV · DESIGN · QA · ARCH — routes tasks by domain. Ships as CLAUDE.md + AGENTS.md, molds to its host.
- 02 brief/ — Token-lean output. Cut ~50–75% of length, keep every fact. Drops filler, not information.
- 03 memory/ — Durable cross-session memory: a MEMORY.md index + one-fact-per-file, with recall & dedupe rules. No database.
- 04 sync/ — Change once, update everywhere — docs, version strings, sibling repos, JSON. Kills the "did I get them all?" miss.
- 05 scope/ — Vague ask → goal + explicit non-goals + smallest viable step, before building. Stops scope creep.
- 06 release/ — Bump version consistently, write the changelog, generate a multi-repo push-order checklist.
- 07 handoff/ — Write a START-HERE state doc (done / next / gotchas) so the next session resumes in seconds.
- 08 changelog/ — Turn a diff or session log into one clean CHANGELOG entry, in the project’s own voice. Single-repo; the focused half of release.
- 09 ship/ — The pre-push gate: build matrix · sanitizers · version-drift · CHANGELOG sync · cruft · docs. Returns PASS or BLOCKED, never a vibe.
- ·· your skill here — open a PR; the folder name becomes the invocation.
Releases — latest from each chamber
hako-code v0.2.3 · 2026-08-14
hako studio — the agent in a browser tab
hako --serve opens the same agent in a browser: chat, tool-approval boxes, a folder browser, per-folder sessions you can rename and delete, the model picker, four themes. It is a mode of the binary, not a server — same loop, same sessions, same credentials, same trust as the terminal, so a conversation started in one finishes in the other. The page itself is compiled into the executable, so one file is the whole product and it works with no network at all. hako --serve --lan prints a URL to open on your phone, and the UI is built for a thumb: drawer navigation, keyboard-aware layout, add it to your home screen. No backend, no database, no account, nothing stored anywhere but your own machine. This release also lifts the agent onto a platform seam — the same hako.c now compiles to WebAssembly, which is what hako studio runs on in a browser — adds --token so you can reach your own machine through a tunnel safely, and brings --serve to Windows.
hako-code v0.2.2 · 2026-07-30
model lists that keep themselves current
Model names came from a table we maintained by hand, and it went stale between every release. Now :models and the :model picker read each provider’s own catalog — Anthropic, OpenAI, OpenRouter, Groq, DeepSeek, Mistral, Gemini, Copilot, ollama and the rest — cached for a day, refreshed with :models refresh, and falling back to the built-in list when you are offline. Embedding and speech entries are filtered out, the newest models sort first, and / filters as you type, because a gateway can hand back three hundred of them. TAB now behaves like a shell: longest common prefix, then a column list — over commands, provider and theme names, and file paths anywhere in a line. Plus a press-any-key splash that sizes itself down to a phone-width terminal.
hako-edit v0.1.6 · 2026-07-09
a runner pane · one thousand fewer lines
The compile loop moves in: :build / :test / :run stream into a bottom pane while you keep editing, ]e jumps straight to file:line errors, and one key hands the error to the Rei agent. :!cmd for quick one-shots. Underneath, a full lean pass — dead scaffolding out, duplicated logic folded into shared helpers, themes now a data table — ~1,000 lines lighter with the same behavior, plus real fixes: visible selection boxes on every theme, a status bar you can read, an explorer that splits instead of clobbering unsaved work.
hako engine v0.0.3 · 2026-07-18
faster prefill · steady under pressure
The Q4_K prefill kernel drops half its per-group MACs: the min term is activation-only, so scale·Σx is folded once per activation and reused across every weight row — ~1.3× prefill on a CPU-only i3, greedy output bit-identical (a make test_kdot proves it against a scalar reference). A repetition penalty joins the sampler (--rep, default off so tool turns stay deterministic), and hakm_ctx_new now guards its allocations and fails clean instead of segfaulting when RAM runs short. Still libc + libm + pthread, no llama.cpp, no ollama.