@jakevin7: 使用Kimi K3,Maka效果比官方 KimiCode还好了20% 同一个模型,配不同的 harness,差距能有多大? http://github.com/maka-agent/maka-agent… 我们拿 Kimi K3 跑了一遍…

X AI KOLs Following 工具

摘要

在Kimi K3模型上,开源agent框架Maka在Terminal-Bench 2.1评测中整体通过率比官方Kimi Code CLI高10%,困难题高20%,通过context-budget pruning、精简工具面和系统提示等优化实现了显著性能提升,相关报告和harness已开源。

使用Kimi K3,Maka效果比官方 KimiCode还好了20% 同一个模型,配不同的 harness,差距能有多大? http://github.com/maka-agent/maka-agent… 我们拿 Kimi K3 跑了一遍 Terminal-Bench 2.1,对比官方 Kimi Code CLI 和 Maka:整体通过率 Kimi Code 59.6%,Maka 69.7%,差 10 %。困难题子集差距更大:43.3% 对 63.3%,差 20 %。 这里面有 1/3 的任务是因为 Kimi 推理服务超时失败的,跟 harness 本身无关。如果只看按时跑完的任务:Kimi Code 85.7%,接近官方给 K3 的基准分 88.3%;Maka 95.1%,比 TB 2.1 目前最高分 89.5%(gpt-5.6-sol) 还高。也就是说,把推理速度这个变量剔除掉之后,差距其实更悬殊。 差距从哪来,拆开看很朴素: ◉ 第一,context-budget tool-result prune。89 个任务全开,省了约 187 万 token。这不是 K3 专属功能,是我们对所有模型都通用的机制——6 月底做过 121 组任务的 A/B 测试,验证过它性能不降反升(+2.48pp),token 消耗降 41.7%,成本降 31.6%。 ◉第二,工具面和 system prompt。Maka 用的是精简工具面 + system prompt,Kimi Code 官方是 20KB 产品 prompt + 全量工具面。prompt 越厚、工具越多,模型要在噪音里找信号的成本就越高。另外 Maka 还根据 K3 的特点进行了一些小优化和bugfix。 ◉第二,各种工程实践的过程中,有很多细小的优化点。经过了大量的AB test积攒出来的小的优势,最终累积成了一个大的优势。 不是说 Kimi 团队不用心——Kimi 在国产模型厂里已经算是对 harness 最上心的一家了。 差距主要是来自我们从一开始就把"跑分-看 trace-针对性改进-重跑"当成日常迭代循环,每次改动都要确认 terminal benchmark 分数不掉才合并。这个习惯攒了两个多月,才攒出这个差距。 完整报告和 harness 已经开源,欢迎复现: http://github.com/maka-agent/maka-agent/pull/1217…
查看原文
查看缓存全文

缓存时间: 2026/07/20 11:29

使用Kimi K3,Maka效果比官方 KimiCode还好了20%

同一个模型,配不同的 harness,差距能有多大? http://github.com/maka-agent/maka-agent…

我们拿 Kimi K3 跑了一遍 Terminal-Bench 2.1,对比官方 Kimi Code CLI 和 Maka:整体通过率 Kimi Code 59.6%,Maka 69.7%,差 10 %。困难题子集差距更大:43.3% 对 63.3%,差 20 %。

这里面有 1/3 的任务是因为 Kimi 推理服务超时失败的,跟 harness 本身无关。如果只看按时跑完的任务:Kimi Code 85.7%,接近官方给 K3 的基准分 88.3%;Maka 95.1%,比 TB 2.1 目前最高分 89.5%(gpt-5.6-sol) 还高。也就是说,把推理速度这个变量剔除掉之后,差距其实更悬殊。

差距从哪来,拆开看很朴素: ◉ 第一,context-budget tool-result prune。89 个任务全开,省了约 187 万 token。这不是 K3 专属功能,是我们对所有模型都通用的机制——6 月底做过 121 组任务的 A/B 测试,验证过它性能不降反升(+2.48pp),token 消耗降 41.7%,成本降 31.6%。 ◉第二,工具面和 system prompt。Maka 用的是精简工具面 + system prompt,Kimi Code 官方是 20KB 产品 prompt + 全量工具面。prompt 越厚、工具越多,模型要在噪音里找信号的成本就越高。另外 Maka 还根据 K3 的特点进行了一些小优化和bugfix。 ◉第二,各种工程实践的过程中,有很多细小的优化点。经过了大量的AB test积攒出来的小的优势,最终累积成了一个大的优势。

不是说 Kimi 团队不用心——Kimi 在国产模型厂里已经算是对 harness 最上心的一家了。 差距主要是来自我们从一开始就把“跑分-看 trace-针对性改进-重跑“当成日常迭代循环,每次改动都要确认 terminal benchmark 分数不掉才合并。这个习惯攒了两个多月,才攒出这个差距。

完整报告和 harness 已经开源,欢迎复现: http://github.com/maka-agent/maka-agent/pull/1217…


maka-agent/maka-agent

Source: https://github.com/maka-agent/maka-agent

Maka

CI docs

Maka — Your work. Your agent.

A local-first Agent workspace built for real work.

Maka does more than answer questions. With controlled permissions, it can inspect projects, execute tools, produce artifacts, and preserve model messages, tool calls, and durable-task progress as recoverable execution facts. The same Runtime is available through the desktop app, terminal TUI, non-interactive CLI, and Headless runner.

Maka is under active development and currently targets users running from source or contributing to the project. Data formats, CLI commands, and experimental capabilities may still change.

Why Maka

  • Local-first instead of hosted-first: sessions, settings, and run records stay on your machine by default. You choose the model connection: cloud API, local model, or compatible gateway.
  • Log is the Runtime: model messages, Tool Calls, Tool Results, and termination facts enter Runtime Event Log. Sessions, UI, model context, and recovery are projections over that log.
  • Context is not history: Tool Result pruning and LLM Compaction change what the next inference sees without treating recorded evidence as disposable context.
  • A task may outlive a Turn: Headless uses TaskRun, Task Event Log, budgets, and continuation to advance interruptible and inspectable durable work.
  • Feedback is not fact authority: Self-check may produce evidence and one bounded repair opportunity, but “I checked it” does not become a system fact.

Read Maka Backend Architecture for the complete design.

Surfaces

Entry pointBest forCurrent capability
DesktopDaily interaction, file and Artifact workflows, model and permission setupElectron + React with streaming sessions, tool timelines, branching, search, and recovery
TUI / CLIUsing Maka in the current project directory or running one non-interactive Turnmaka, maka run; shares workspace and model connections with Desktop
HeadlessDurable tasks, recoverable TaskRuns, experiments, and evaluationmaka eval with task logs, export, resume, and comparison

Current capabilities

Agent Runtime

  • Multiple model connections, streaming output, thinking, usage accounting, and provider-error normalization;
  • Local tools including Read, Write, Edit, Bash, Glob, and Grep;
  • Tool schema validation, dynamic availability, permission policy, watchdogs, abort, and error classification;
  • Runtime Event Log, AgentRun ledger, startup recovery, Turn Evidence, active Tool Result pruning, and history compaction.

Desktop workspace

  • Create, archive, search, rename, retry, regenerate, and branch sessions from a Turn;
  • Artifact lists and previews, workspace instructions, model settings, and permission settings;
  • Local memory, web search, an open HTTP/SSE gateway, bot entry points, and Office workflows;
  • Integrations are configured independently, and not every experimental entry is available by default.

Durable tasks and evolution

  • Append-only Task Event Log and TaskRun projection;
  • Budgets, permission pauses, continuation, result export, and failed-task retry;
  • Plan-first, source-guarded, and attempt-bounded Heavy-task Self-check;
  • AHE target protocol and evidence export; complete automatic self-iteration remains an external or experimental workflow.

Quick start

Requirements

  • Node.js 22.19 or newer (CI uses Node.js 24);
  • npm (the lockfile and scripts use npm; the current packageManager is npm 11);
  • Git;
  • ripgrep, used by Runtime’s Grep tool.

Start Desktop

git clone https://github.com/Maka-Agent/maka-agent.git
cd maka-agent
npm ci
npm run dev

npm run dev starts the Desktop development environment with HMR. To build every workspace before starting Electron, use:

npm run dev:full

If dependencies were installed with ELECTRON_SKIP_BINARY_DOWNLOAD=1, install the Electron platform binary before starting:

node node_modules/electron/install.js

First run

Maka does not bundle a shared model account. On first launch:

  1. Open Settings → Models;
  2. Add an API, local-model, or supported account connection;
  3. Test it and choose a default model;
  4. Return to the workspace and start a task.

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.

Terminal entry points

Build the workspaces first:

npm run build

Then start the TUI or run one Turn:

npm --workspace maka-agent exec -- maka
npm --workspace maka-agent exec -- maka run "Summarize this repository and identify its most important risk"
npm --workspace maka-agent exec -- maka --help

The CLI reads the same model connections and workspace configuration written by Desktop. See packages/headless/README.md for Headless commands and its trust posture.

Architecture

The backend spine is:

Desktop / TUI / Headless
          ↓
SessionManager → AgentRun → Model + Tool Runtime
          ↓
Runtime Event Log → Context / Session / UI projections
          ↓
Task Event Log → TaskRun → Self-check / AHE evidence

Start with ARCHITECTURE.md. It provides the system map, code boundaries, problem-oriented reading paths, and six bilingual deep dives.

Repository layout

apps/desktop/       Electron main / preload / React renderer

packages/core/      Pure contracts for Sessions, Events, Permissions, and Connections
packages/storage/   File-backed stores and run ledgers
packages/runtime/   AgentRun, model adapters, tools, context, and recovery
packages/headless/  TaskRun, Autonomous Loop, Self-check, eval, and AHE
packages/cli/       TUI and non-interactive CLI
packages/ui/        Shared conversation, Markdown, Artifact, and UI primitives

docs/               Architecture, product, security, privacy, and test contracts
scripts/            Build hygiene, visual checks, smoke tests, and release helpers

Local data and security boundary

Maka stores workspace data under Electron userData by default:

<Electron userData>/workspaces/default/
  llm-connections.json
  credentials.json
  settings.json
  sessions/

Current boundaries that matter:

  • Sessions and connection metadata live in the local filesystem;
  • Runtime credentials such as API keys, bot tokens, and proxy passwords currently live in local plaintext credentials.json, behind the OS account boundary, with POSIX directory mode 0700 and file mode 0600 enforced;
  • Subscription OAuth tokens (Claude, Codex, GitHub Copilot, and the Cursor/Antigravity previews) live in the same credentials.json — the single authority for desktop, TUI, and headless; Electron safeStorage only decrypts pre-existing legacy token files once at desktop startup (#1125);
  • Renderer does not receive plaintext credentials. File writes, Shell, and dangerous tool calls pass through the permission engine;
  • Headless real-model evaluation fails closed by default and requires an explicit external isolation boundary.

Read SECURITY.md for security reporting and policy, and docs/README.md for current privacy and sandbox contracts.

Experimental runtime recovery flags

Runtime recovery remains opt-in. Both flags below are disabled by default:

  • MAKA_RUNTIME_SQLITE_CANONICAL=1 migrates the current workspace’s canonical RuntimeEvent store to runtime.sqlite. This is a one-way, sticky migration trigger, not a reversible backend selector: after runtime.sqlite exists, disabling the variable does not switch the workspace back to JSONL. Automatic pre-migration backup and populated v2-to-v4 upgrade coverage are not complete, so back up the workspace before enabling this flag.
  • MAKA_RUNTIME_SAFE_BOUNDARY_RESUME=1 enables the Desktop interrupted-turn Safe resume action, CLI/TUI /resume, and Desktop startup auto-resume. These paths may call the configured model provider and consume tokens. Enable the flag only when that behavior is explicitly desired.

Phase 2 provides the durable write-side boundary and fail-closed safe-boundary continuation. Phase 3 reconciliation for indeterminate tool side effects is not implemented yet; ambiguous tool outcomes remain parked rather than retried.

Development and verification

Common repository-level commands:

npm run build
npm run typecheck
npm test
npm run check:release

Run one workspace in isolation:

npm --workspace @maka/runtime test
npm --workspace @maka/headless test
npm --workspace @maka/desktop test

Use the following commands to update packages/core/src/model-metadata.generated.ts from models.dev and run the focused tests. Keep access-path-specific overrides in model-metadata.ts; do not edit the generated file by hand.

npm run sync:model-metadata
npm run test:scripts
npm --workspace @maka/core test

Desktop real-window and visual verification:

npm --workspace @maka/desktop run e2e
npm --workspace @maka/desktop run screenshots
npm --workspace @maka/desktop run screenshots:diff:stable
npm --workspace @maka/desktop run smoke:real-window

Before submitting code, run typecheck, build, and focused tests proportionate to the change, followed by git diff --check.

Documentation

相似文章

Kimi K3 编程基准测试

Reddit r/singularity

Kimi K3 编程基准测试文章,讨论 Kimi K3 模型在编程任务上的表现。