<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Agent Workspace on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/agent-workspace/</link>
        <description>Recent content in Agent Workspace on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Wed, 26 Aug 2026 16:04:04 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/agent-workspace/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>maka</title>
        <link>https://producthunt.programnotes.cn/en/p/maka/</link>
        <pubDate>Wed, 26 Aug 2026 16:04:04 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/maka/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1671050578787-e271e550ba0b?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3ODc3MzEyOTF8&amp;ixlib=rb-4.1.0" alt="Featured image of post maka" /&gt;&lt;h1 id=&#34;apachemaka&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/apache/maka&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;apache/maka&lt;/a&gt;
&lt;/h1&gt;&lt;!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  &#34;License&#34;); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  &#34;AS IS&#34; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
--&gt;
&lt;h1 align=&#34;center&#34;&gt;
  &lt;img src=&#34;apps/desktop/assets/app-icons/sky.png&#34; alt=&#34;Maka&#34; width=&#34;72&#34; valign=&#34;middle&#34; /&gt; Apache Maka (Incubating)
&lt;/h1&gt;
&lt;p align=&#34;center&#34;&gt;&lt;sub&gt;Incubating at The Apache Software Foundation&lt;/sub&gt;&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/apache/maka/stargazers&#34;&gt;&lt;img src=&#34;https://img.shields.io/github/stars/apache/maka?style=flat&amp;label=%E2%98%85&amp;color=4C8DFF&#34; alt=&#34;GitHub stars&#34; /&gt;&lt;/a&gt;
  &lt;a href=&#34;https://github.com/apache/maka/releases&#34;&gt;&lt;img src=&#34;https://img.shields.io/github/downloads/apache/maka/total?style=flat&amp;label=downloads&amp;color=4C8DFF&#34; alt=&#34;GitHub downloads&#34; /&gt;&lt;/a&gt;
  &lt;a href=&#34;./LICENSE&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/license-Apache%202.0-4C8DFF?style=flat&#34; alt=&#34;License: Apache 2.0&#34; /&gt;&lt;/a&gt;
  &lt;img src=&#34;https://img.shields.io/badge/macOS-arm64-4C8DFF?style=flat&amp;logo=apple&amp;logoColor=white&#34; alt=&#34;macOS Apple Silicon&#34; /&gt;
  &lt;img src=&#34;https://img.shields.io/badge/Windows-preview-9BB8F0?style=flat&amp;logo=windows&amp;logoColor=white&#34; alt=&#34;Windows unsigned preview&#34; /&gt;
  &lt;img src=&#34;https://img.shields.io/badge/Linux-soon-D0D4DA?style=flat&amp;logo=linux&amp;logoColor=6B7280&#34; alt=&#34;Linux not yet supported&#34; /&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;./README.zh-CN.md&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/%E4%B8%AD%E6%96%87%E6%96%87%E6%A1%A3-4C8DFF?style=flat&#34; alt=&#34;中文文档&#34; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;strong&gt;A local-first Agent workspace built for real work.&lt;/strong&gt;&lt;br/&gt;
  Maka inspects projects, runs tools under a sandbox boundary, and records
  model messages and tool calls as recoverable execution facts — on your
  machine, through one Runtime Host.
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;[!NOTE]
Apache Maka (Incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision-making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF. &lt;a class=&#34;link&#34; href=&#34;./DISCLAIMER-WIP&#34; &gt;DISCLAIMER-WIP&lt;/a&gt; records the issues the project is currently aware of.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;[!IMPORTANT]
Maka is under active development. The macOS Apple Silicon desktop build is an early public release; data formats, CLI commands, and experimental capabilities may still change.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;why-maka&#34;&gt;Why Maka
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Your machine, your data.&lt;/strong&gt; Sessions, settings, and run records stay local by default. You bring the model: a cloud API, a local model, or a compatible gateway.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The record is kept.&lt;/strong&gt; Model messages, tool calls, tool results, and how a turn ended are written down. The UI and the next model call are views of that record, not the only copy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shorter context is not deleted history.&lt;/strong&gt; Maka can omit old tool output from the next prompt without throwing away the saved evidence.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One place runs the agent.&lt;/strong&gt; Desktop, the terminal, and Maka evaluation all go through Runtime Host. Eval only owns the experiment and its scores.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Read &lt;a class=&#34;link&#34; href=&#34;./ARCHITECTURE.md&#34; &gt;Maka Backend Architecture&lt;/a&gt; for the design.&lt;/p&gt;
&lt;h2 id=&#34;surfaces&#34;&gt;Surfaces
&lt;/h2&gt;&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Entry point&lt;/th&gt;
					&lt;th&gt;Best for&lt;/th&gt;
					&lt;th&gt;Current capability&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Desktop&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Daily interaction, file and Artifact workflows, model and permission setup&lt;/td&gt;
					&lt;td&gt;Electron + React with streaming sessions, tool timelines, branching, search, and recovery&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;TUI / CLI&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Using Maka in the current project directory or running one non-interactive Turn&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;maka&lt;/code&gt;, &lt;code&gt;maka run&lt;/code&gt;; shares workspace and model connections with Desktop&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;Eval&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;Reproducible benchmark experiments across Maka and external subjects&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;maka eval run &amp;lt;spec&amp;gt; --out &amp;lt;directory&amp;gt;&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;current-capabilities&#34;&gt;Current capabilities
&lt;/h2&gt;&lt;h3 id=&#34;agent-runtime&#34;&gt;Agent Runtime
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Multiple model connections, streaming output, thinking, usage, and clearer provider errors;&lt;/li&gt;
&lt;li&gt;Built-in tools: &lt;code&gt;Read&lt;/code&gt;, &lt;code&gt;Write&lt;/code&gt;, &lt;code&gt;Edit&lt;/code&gt;, &lt;code&gt;Bash&lt;/code&gt;, &lt;code&gt;Glob&lt;/code&gt;, &lt;code&gt;Grep&lt;/code&gt;. Computer Use and catalog skills are optional and not on by default;&lt;/li&gt;
&lt;li&gt;Tools that leave the sandbox must be approved; runs can be aborted; failures are classified;&lt;/li&gt;
&lt;li&gt;A durable execution record, crash recovery, and optional resume of an interrupted turn.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;desktop-workspace&#34;&gt;Desktop workspace
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Create, archive, search, rename, retry, regenerate, and branch sessions from a Turn;&lt;/li&gt;
&lt;li&gt;Artifact lists and previews, workspace instructions, model settings, and sandbox settings;&lt;/li&gt;
&lt;li&gt;Local memory and web search when configured;&lt;/li&gt;
&lt;li&gt;Chat apps (IM bots) are experimental. See &lt;a class=&#34;link&#34; href=&#34;./docs/architecture/bot-onboarding-runtime.zh-CN.md&#34; &gt;IM onboarding&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;evaluation&#34;&gt;Evaluation
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Declarative multi-arm experiments expanded into task × repetition × subject cells;&lt;/li&gt;
&lt;li&gt;Immutable per-cell attempts with targeted infrastructure replacement and earliest-valid selection;&lt;/li&gt;
&lt;li&gt;A small result kernel for score, normalized usage, attributable cost, duration, status, failure reason, and artifacts;&lt;/li&gt;
&lt;li&gt;Maka subjects execute only through Runtime Host; external subjects use generic external subject adapters.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;quick-start&#34;&gt;Quick start
&lt;/h2&gt;&lt;h3 id=&#34;releases-and-downloads&#34;&gt;Releases and downloads
&lt;/h3&gt;&lt;p&gt;Apache Maka has not made an Apache release yet. Everything currently published from this repository or from a package registry was produced before or during incubation, is not an Apache Software Foundation release, and has not been reviewed or voted on by the Incubator PMC.&lt;/p&gt;
&lt;p&gt;Once Apache releases exist, the official release is the source release published by the ASF and approved by the podling PPMC and the Incubator PMC. A package built from that source and distributed elsewhere, for example through a package registry or as a Desktop installer, is a convenience artifact rather than the release itself, and it is valid only when it is built from an approved source release. &lt;a class=&#34;link&#34; href=&#34;./.github/ASF_SOURCE_RELEASE.md&#34; &gt;&lt;code&gt;.github/ASF_SOURCE_RELEASE.md&lt;/code&gt;&lt;/a&gt; holds the candidate contract, signing path, and verification steps.&lt;/p&gt;
&lt;p&gt;Until an approved source release exists, this README recommends no prebuilt download. Build and run Maka from source as described below. Desktop currently targets Apple Silicon Macs (&lt;code&gt;arm64&lt;/code&gt;). Intel Macs and Linux are not supported yet. &lt;a class=&#34;link&#34; href=&#34;docs/windows-support.md&#34; &gt;Windows&lt;/a&gt; is an unsigned preview, not a supported release tier.&lt;/p&gt;
&lt;h3 id=&#34;requirements&#34;&gt;Requirements
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Node.js 22.19 or newer (CI uses Node.js 24);&lt;/li&gt;
&lt;li&gt;npm (the lockfile and scripts use npm; the current &lt;code&gt;packageManager&lt;/code&gt; is npm 11);&lt;/li&gt;
&lt;li&gt;Git;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ripgrep&lt;/code&gt;, used by Runtime&amp;rsquo;s &lt;code&gt;Grep&lt;/code&gt; tool.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;start-desktop&#34;&gt;Start Desktop
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/apache/maka.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; maka
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm ci
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run dev
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;npm run dev&lt;/code&gt; starts the Desktop development environment with HMR. To build every workspace before starting Electron, use:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run dev:full
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If dependencies were installed with &lt;code&gt;ELECTRON_SKIP_BINARY_DOWNLOAD=1&lt;/code&gt;, install the Electron platform binary before starting:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;node node_modules/electron/install.js
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;first-run&#34;&gt;First run
&lt;/h3&gt;&lt;p&gt;Maka does not bundle a shared model account. On first launch:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Open &lt;code&gt;Settings → Models&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;Add an API, local-model, or supported account connection;&lt;/li&gt;
&lt;li&gt;Test it and choose a default model;&lt;/li&gt;
&lt;li&gt;Return to the workspace and start a task.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The app distinguishes configured, send-ready, and experimental connection states. An account flow that is not wired into Runtime is not presented as a usable model.&lt;/p&gt;
&lt;h2 id=&#34;terminal-entry-points&#34;&gt;Terminal entry points
&lt;/h2&gt;&lt;p&gt;For the public npm package, see the &lt;a class=&#34;link&#34; href=&#34;./packages/cli/README.md&#34; &gt;CLI installation and usage guide&lt;/a&gt;.
The commands below run the development CLI from a source checkout.&lt;/p&gt;
&lt;p&gt;Build the workspaces first:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run build
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Then start the TUI or run one Turn:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run cli:dev
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run cli:dev -- run &lt;span class=&#34;s2&#34;&gt;&amp;#34;Summarize this repository and identify its most important risk&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run cli:dev -- run --graph &lt;span class=&#34;s2&#34;&gt;&amp;#34;Implement two independent slices, integrate them, then review the result&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run cli:dev -- --help
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The TUI also accepts &lt;code&gt;/graph on&lt;/code&gt;, &lt;code&gt;/graph off&lt;/code&gt;, and &lt;code&gt;/graph &amp;lt;task&amp;gt;&lt;/code&gt;. Non-interactive
&lt;code&gt;--graph&lt;/code&gt; runs wait for the durable Graph to finish before printing the final
supervisor output. Graph implementation operators use isolated Git worktrees, so
the source project must be a clean Git worktree.&lt;/p&gt;
&lt;p&gt;The repository CLI uses the same &lt;code&gt;Maka Dev&lt;/code&gt; profile as a development Desktop build. The
released &lt;code&gt;maka&lt;/code&gt; binary continues to use the &lt;code&gt;Maka&lt;/code&gt; profile; the two profiles are not copied or
synchronized automatically. Evaluation specs and adapters live in &lt;a class=&#34;link&#34; href=&#34;./packages/eval&#34; &gt;&lt;code&gt;packages/eval&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;architecture&#34;&gt;Architecture
&lt;/h2&gt;&lt;p&gt;The backend spine is:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Desktop / TUI / CLI → Runtime Host → SessionManager → AgentRun
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                             ↓
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                         Model + Tool Runtime → Runtime Event Log
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                             ↓
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                              Context / Session / UI projections
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Experiment → Cells → Attempts → Results
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    ↓
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;       Runtime Host executes Maka subjects
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Start with &lt;a class=&#34;link&#34; href=&#34;./ARCHITECTURE.md&#34; &gt;ARCHITECTURE.md&lt;/a&gt;. It provides the system map, code boundaries, problem-oriented reading paths, and six bilingual deep dives.&lt;/p&gt;
&lt;h2 id=&#34;repository-layout&#34;&gt;Repository layout
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apps/desktop/       Electron main / preload / React renderer
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/core/      Pure contracts for Sessions, Events, Permissions, and Connections
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/storage/   SQLite operational state, configuration, and payload stores
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/runtime/   AgentRun, model adapters, tools, context, and recovery
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/eval/      Experiment cells, attempts, results, and executor/subject adapters
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/cli/       TUI and non-interactive CLI
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;packages/ui/        Shared conversation, Markdown, Artifact, and UI primitives
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docs/               Architecture, product, security, privacy, and test contracts
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;scripts/            Build hygiene, visual checks, smoke tests, and release helpers
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;local-data-and-recovery&#34;&gt;Local data and recovery
&lt;/h2&gt;&lt;p&gt;Workspace data lives under Electron &lt;code&gt;userData&lt;/code&gt; by default:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Electron userData&amp;gt;/workspaces/default/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  runtime.sqlite
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  connection-catalog.json
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  credential-vault.json
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  settings.json
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  artifacts/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;API keys and similar secrets are a local plaintext file (&lt;code&gt;credential-vault.json&lt;/code&gt;), readable only by your OS account. The renderer never sees them.&lt;/li&gt;
&lt;li&gt;Tools that write files or run a shell must pass the sandbox boundary first.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;runtime.sqlite&lt;/code&gt; is the live record. Older JSONL transcripts and Electron &lt;code&gt;safeStorage&lt;/code&gt; credential files are not imported; an upgraded workspace can show empty threads, and those credentials must be entered again.&lt;/li&gt;
&lt;li&gt;Resuming an interrupted turn is off by default. Set &lt;code&gt;MAKA_RUNTIME_SAFE_BOUNDARY_RESUME=1&lt;/code&gt; only if you want Desktop &lt;strong&gt;Safe resume&lt;/strong&gt;, CLI &lt;code&gt;/resume&lt;/code&gt;, and startup auto-resume — those calls hit the model and use tokens.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Details: &lt;a class=&#34;link&#34; href=&#34;./SECURITY.md&#34; &gt;SECURITY.md&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;./docs/workspace-privacy-context.md&#34; &gt;privacy&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;./docs/architecture/runtime-resume-architecture.md&#34; &gt;resume&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;development-and-verification&#34;&gt;Development and verification
&lt;/h2&gt;&lt;p&gt;Before sending a change, read &lt;a class=&#34;link&#34; href=&#34;./CONTRIBUTING.md&#34; &gt;CONTRIBUTING.md&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Common repository-level commands:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run build
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run typecheck
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run check:release
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Run one workspace in isolation:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/runtime &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/eval &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/desktop &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Use &lt;code&gt;refresh:model-metadata&lt;/code&gt; to fetch the current catalog from models.dev, update the committed snapshot, and regenerate the derived TypeScript files. A refresh fails closed when any committed model, capability, provider override, or pricing field disappears; after reviewing an intentional upstream removal, acknowledge it with &lt;code&gt;npm run refresh:model-metadata -- --accept-upstream-removals&lt;/code&gt;. &lt;code&gt;sync:model-metadata&lt;/code&gt; is intentionally offline: it only regenerates those files from the committed snapshot. Keep access-path-specific overrides in &lt;code&gt;model-metadata.ts&lt;/code&gt;; do not edit the generated files by hand.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run refresh:model-metadata
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/core &lt;span class=&#34;nb&#34;&gt;test&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Desktop real-window and visual verification:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/desktop run e2e
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm --workspace @maka/desktop run smoke:real-window
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Before submitting code, run typecheck, build, and focused tests proportionate to the change, followed by &lt;code&gt;git diff --check&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id=&#34;documentation&#34;&gt;Documentation
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./docs/README.md&#34; &gt;Documentation index and authority map&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./ARCHITECTURE.md&#34; &gt;Backend architecture&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./DESIGN.md&#34; &gt;Product design&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./CONTRIBUTING.md&#34; &gt;Contributing guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./SECURITY.md&#34; &gt;Security policy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;Maka is licensed under the &lt;a class=&#34;link&#34; href=&#34;./LICENSE&#34; &gt;Apache License 2.0&lt;/a&gt;. See
&lt;a class=&#34;link&#34; href=&#34;./NOTICE&#34; &gt;NOTICE&lt;/a&gt; for attribution information. Third-party components remain
subject to their respective licenses and notices.&lt;/p&gt;
&lt;p&gt;Apache Maka, Maka, Apache, the Apache feather, and the Apache Maka project logo are either registered trademarks or trademarks of The Apache Software Foundation.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
