kdo documentation
Introduction
kdo is the workspace runtime for AI coding agents. One MCP endpoint that makes Claude Code, OpenClaw, Cursor, and anything else on MCP faster, cheaper, and less prone to token-burn loops on polyglot monorepos.
kdo is the workspace runtime for AI coding agents.
The problem
Coding agents read too much. A Claude Code or OpenClaw session opens a monorepo, traverses the filesystem, loads files the task never needed, and burns tokens before solving anything. OpenClaw users hit loops that drain a day’s budget in minutes. Existing workspace tools (Turbo, Nx, Moon, Bun) optimize for humans running builds. None of them treat agent context efficiency as a design goal.
What kdo does
Compiles your monorepo into an agent-readable representation. Serves it over MCP. Detects loops. Enforces token budgets. Works in Claude Code and OpenClaw from the same endpoint, and works in any other MCP-compatible agent through the generic profile.
One binary. One MCP endpoint. Everywhere MCP goes.
How it works
- Discovers projects across mixed-language monorepos. One parser per manifest type (
Cargo.toml,package.json,pyproject.toml,Anchor.toml,go.mod), one graph, one cache. - Generates context. Token-budgeted summaries plus public API signatures extracted via tree-sitter. Per-project markdown files an agent can read in seconds.
- Runs tasks with
depends_on, env merging, per-project overrides, pass-through args. Topological order across languages, parallel within stages. - Serves MCP. Seven tools (
kdo_list_projects,kdo_get_context,kdo_read_symbol,kdo_dep_graph,kdo_affected,kdo_search_code,kdo_run_task) plusresources/listfor cached context files. Onekdo serveand Claude Code, Cursor, OpenClaw, Zed, and Cline all work. - Guards against loops. Every tool call passes through a sliding-window detector. Duplicate calls return a structured error so the agent changes strategy instead of retrying the same mistake.
Who it’s for
- OpenClaw users who lose sessions to token-burn loops. kdo’s loop guards exist because OpenClaw loops burn tokens fast and silently; the window under the openclaw profile is 3.
- Claude Code users on polyglot monorepos. One MCP registration, every project gets the same tools.
- Teams running Rust plus TypeScript plus Python plus Anchor in one repo who got tired of agent navigation dominating their token bill.
What kdo is not
- Not a package manager. It doesn’t install dependencies, manage lockfiles, or resolve semver. Use bun/pnpm/cargo/pip for that. kdo runs alongside them.
- Not production-ready.
0.2.0-alpha.1, shipping this week. API will break before0.1.0stable. Use it for side projects, AI-heavy dev loops, and polyglot monorepos where you accept early-adopter risk.
Where kdo sits
| kdo | turbo | nx | bun | pnpm | |
|---|---|---|---|---|---|
| Polyglot graph | ● | ○ | ◐ | ○ | ○ |
| MCP built-in | ● | ○ | ○ | ○ | ○ |
| Token-budgeted context | ● | ○ | ○ | ○ | ○ |
| Loop guards for agents | ● | ○ | ○ | ○ | ○ |
| Task pipelines | ● | ◐ | ● | ○ | ○ |
| Per-project overrides | ● | ● | ● | ○ | ○ |
| Single static binary | ● | ○ | ○ | ● | ○ |
| Package install / lockfile | ○ | ○ | ○ | ● | ● |
● full · ◐ partial · ○ not supported
Next steps
- Getting started: install,
kdo init, first run,kdo setup <agent> - CLI reference: every command with flags
- kdo.toml schema: the config format
- MCP server: tools, resources, agent profiles, loop guards