One email each morning — yesterday's AI, sortedGet it in your inbox

METAL LAB

Apache Foundation incubates local-first AI agent tool 'Maka'

A local-first agent that logs every model message, tool call, and permission decision — currently officially supported only on Apple Silicon Macs

이미지: METAL LAB 생성

Summary

  • The Apache Software Foundation incubator has registered a local-first AI agent workspace called 'Apache Maka.'
  • It records model messages, tool calls, permission decisions, and termination events in an append-only log, and currently only ships as a signed, notarized official release for macOS Apple Silicon desktop app.
  • Session data is consolidated into a single runtime.sqlite file, and file-based conversation history from older versions is not automatically migrated during upgrades.
프로젝트명
Apache Maka (Incubating)
라이선스
Apache License 2.0
현재 정식 지원 플랫폼
macOS Apple Silicon(arm64) 데스크톱 앱
첫 공개 빌드 미포함 기능
Computer Use
실행 경로
데스크톱·TUI·CLI·평가 주체 모두 Runtime Host를 거쳐 실행
데이터 저장
runtime.sqlite가 세션·실행 상태·아티팩트 메타데이터를 단일 관리
개발 단계
Phase 2(내구성 있는 쓰기 경계) 구현 완료, Phase 3(모호한 도구 결과 재처리) 미구현
저장소
github.com/apache/maka

An AI agent that runs locally, now under Apache's wing

A new project has landed in the Apache Software Foundation's open-source incubator. Its name is Maka, officially 'Apache Maka (Incubating).' What sets it apart is that it's an AI agent workspace designed to run inside the user's own computer rather than on cloud servers. Source code and documentation are published in the github.com/apache/maka repository, and it's licensed under Apache License 2.0.

What exactly does this tool record

Maka isn't a chatbot that just answers questions — it's an agent that inspects project files, runs tools, and produces output while operating under controlled permissions. Throughout this process, it records every model message, tool call, tool execution result, permission approval/denial decision, and task termination event in an append-only log. An append-only log means entries, once written, are never erased or rewritten — new records are simply appended afterward. The design appears aimed at allowing users to later trace exactly what judgment the agent made and what it touched.

All four execution paths — the desktop app, the terminal-based TUI (text-based user interface), the CLI (command-line interface) for running commands without conversation, and the evaluation runner — pass through a single execution engine called the 'Runtime Host.'

What's usable right now

Maka is still an early, actively developing public release. Project documentation notes that data formats, CLI commands, and experimental features are all subject to change going forward.

PlatformCurrent status
macOS (Apple Silicon, arm64)Signed and notarized official desktop app available
WindowsUnsigned preview — not a supported tier
Intel MacNot supported
LinuxNot supported

The macOS desktop app is distributed via the GitHub releases page exclusively for Apple Silicon Macs. The "Computer Use" feature — which would let the agent view the screen and control the mouse/keyboard on the user's behalf — is not included in this first public build. Downloading the Windows installer triggers a SmartScreen "unknown publisher" warning, and the documentation instructs users to bypass it only after confirming the downloaded file's SHA-256 checksum matches the value published with the release.

How to try it

  1. Download — macOS Apple Silicon users can download the signed, notarized desktop app from GitHub releases. To build it yourself, clone the repository and run npm run dev to launch the Electron-based development environment.
  2. First run — Maka does not ship bundled with its own AI model account. On first launch, users must configure model connections themselves, and the app displays connection status in three tiers: "configured," "available," and "experimental." Account flows that aren't actually connected to a runtime are not shown as available models.
  3. Running tasks — In the terminal TUI, the commands /graph on, /graph off, and /graph <task description> can be used to toggle multi-step agent tasks (Graph). A non-interactive --graph run waits for the durable Graph to finish and then outputs only the final result. This feature operates on an isolated Git worktree, so the target project must be in a clean Git worktree state.
  4. CLI access — Maka can also be run the same way through a CLI distributed as an npm package. However, the repository's CLI uses the 'Maka Dev' profile while the distributed official binary uses the 'Maka' profile, and the two profiles are not automatically synced.

Where data lives, and what to watch when upgrading

Maka stores workspace data under Electron's userData folder. Session metadata, conversation history, agent graph state, execution status, usage/billing information, and artifact metadata are all managed under the sole operational authority of a single runtime.sqlite file, while actual output files remain as separate files under the artifacts/ folder.

This version's storage format does not automatically import records from the previous generation's file- and JSONL-based system. Session titles from older versions can be found in the new metadata, but old conversation history that existed only as files opens as empty threads in the new version. Encrypted old credential files are also not migrated, so users who only have those files will need to log in again. The project documentation states that this data-loss boundary is an intentional outcome of this release and advises users to take this into account before upgrading existing workspaces.

Backups are performed via SQLite's online backup API: files are copied while an artifact write lock is held, and a manifest bundling file sizes and SHA-256 values is generated. Before restoration, integrity, foreign keys, schema, and required tables are all validated. Development is split into two phases: the phase ensuring safe failure handling and write durability (Phase 2) is complete, while the phase that reprocesses ambiguous tool execution results (Phase 3) has not yet been implemented — meaning ambiguous execution results are simply held without retry for now.

Editor's take

What makes Maka stand out is the "local-first" choice itself. The recent race in agent infrastructure has been tilting in the opposite direction. While some companies, like the AWS case above, have been moving toward keeping sessions alive in the cloud for as long as possible, Maka takes the opposite path, pinning each individual session down to a single SQLite file inside the user's own computer. If cloud-side agents are solving "how long can we keep this running," Maka is trying to solve "can we later prove what actually happened" first.

This design matters for teams uneasy about granting agents permission to manipulate files and execute commands. When permission decisions and tool execution results are preserved in an append-only log, teams can trace back exactly what was approved and when, in case an agent accidentally deletes a file or runs the wrong command. For Korean development teams weighing how much execution history to retain before connecting an agent to an internal codebase, Maka's append-only log structure offers a useful reference design. That said, the current version only carries an official signature for macOS Apple Silicon desktops, and the Phase 3 feature for reprocessing ambiguous tool execution results doesn't exist yet. Rather than plugging it directly into a production codebase, it makes more sense to first test what the logs actually capture on a lower-stakes project.

In the coming weeks, whether a fully signed Windows build and Computer Use functionality get added will likely mark the project's next milestone. Once both are filled in, Maka will move from being an "experimental tool" to one people actually install and use.

Code from this story

Comments