Repo of the Day
apache/maka: Maka — local-first AI desktop assistant
Published: Aug 30, 2026
Open repository ↗Maka — local-first AI desktop assistant
Summary
Apache Maka (Incubating) is a local-first agent workspace that drives an LLM through tasks and records every model message, tool call, permission decision, and termination as an append-only RuntimeEvent in a SQLite log. A single Runtime Host serves the Electron desktop app, the TUI, the CLI, and the evaluation harness, so the same execution authority backs interactive work and benchmark runs. The project is in the Apache Incubator and has not yet produced an official Apache release.
What it is useful for
- Auditable agent runs. The event log is the runtime and the UI is a projection of it, so you can inspect or replay a session rather than rely on a transcript that may drift from internal state. Old tool output can leave the next prompt without leaving the log.
- Cross-surface agent work. Because Desktop, TUI, CLI, and
packages/evalshare one Runtime Host, you can prototype a task in the desktop app, rerun the same logic non-interactively in the CLI, and score it in the eval package against the official verifier, with per-task results published underdocs/eval/. - Bring-your-own-model workflows. Sessions, settings, and run records live under Electron's
userDatadirectory (runtime.sqlite,settings.json,credential-vault.json), and you wire up a cloud API, a local model, or a compatible gateway inSettings → Modelson first launch. - Crash-safe recovery. The README documents
MAKA_RUNTIME_SAFE_BOUNDARY_RESUMEand an explicit/resumepath that replays admitted continuations rather than guessing. - Graph mode. The CLI accepts a
--graphtask that runs independent implementation slices in isolated Git worktrees and integrates them, which the README notes requires a clean worktree.
How engineers can use it
The README is explicit that there is no Apache release yet, so usable artifacts come from source:
git clone https://github.com/apache/maka.git
cd maka
npm ci
npm run dev # Desktop with HMR
npm run dev:full # build every workspace, then start Electron
npm run build # needed before the CLI
npm run cli:dev -- run "Summarize this repository and identify its most important risk"
Requirements from the README: Node.js 22.19 or newer (CI uses 24), npm 11, Git, and ripgrep for the runtime's Grep tool. Direct Peer and Peer Mesh work additionally requires Rust stable 1.98+ and the platform linker, started via npm run dev:peer or npm run dev:full:peer.
Limitations worth noting: data formats, CLI flags, and experimental capabilities are still changing; the platform badges list Windows and Linux as preview; older JSONL transcripts and Electron safeStorage credentials are not migrated into runtime.sqlite, so an upgraded workspace can show empty threads and re-prompt for credentials. Tools that write files or run a shell must cross a sandbox boundary, and provider keys are stored in a local plaintext vault readable only by your OS account. See CONTRIBUTING.md, ARCHITECTURE.md, and the index under docs/README.md for the full contract.