KimiFleet

Visible multi-agent orchestrator and MCP server for Kimi Code K3. It controls Kimi through ACP (JSON-RPC over stdio), rather than attempting to drive its terminal UI.

Start

dotnet run --project KimiFleet.csproj -- --port 7373

Open a second terminal and watch live activity:

curl -N http://127.0.0.1:7373/events

Open http://127.0.0.1:7373 for the cockpit. Every agent has its own Kimi-style chat, tool-call transcript, task composer, live activity, queue depth, scope ownership and estimated K3 context usage. The grid supports search, compact density and a single-agent focus mode.

Context controls are available on every card:

  • Compact asks Kimi to preserve decisions, constraints, changed files and pending verification while reducing context pressure.
  • Fresh context creates a new ACP session without changing files, the agent process or its scope locks.
  • Cancel interrupts the current turn without stopping the instance or discarding its context.
  • New prompts are queued per agent, so one instance cannot receive overlapping session/prompt calls.

MCP mode

Start both the dashboard and an MCP stdio server:

dotnet run --project KimiFleet.csproj -- --mcp --port 7373

The server implements fleet_list_agents, fleet_start_agent, fleet_get_chat, fleet_assign_task, fleet_cancel_task, fleet_compact_context, fleet_reset_context, fleet_request_review, and fleet_stop_agent. In MCP mode stdout is protocol-only; operational logs are written to stderr and remain visible in the dashboard.

API

Create an agent with exclusive source scopes:

curl -X POST http://127.0.0.1:7373/agents \
  -H 'Content-Type: application/json' \
  -d '{"name":"vulkan","workspace":"/home/emil/Desktop/Cortex_Engine","role":"renderer","scopes":["src/Engine.Graphics.Vulkan","src/Engine.Graphics"]}'

Give it work:

curl -X POST http://127.0.0.1:7373/agents/vulkan/prompt \
  -H 'Content-Type: application/json' \
  -d '{"prompt":"Read AGENTS.md, inspect the Vulkan backend, and propose one safe improvement."}'

Ask another agent to review the current diff without editing:

curl -X POST http://127.0.0.1:7373/agents/reviewer/review \
  -H 'Content-Type: application/json' \
  -d '{"author":"vulkan","context":"Review the Vulkan change after its tests finish."}'

Useful endpoints:

  • GET /health, GET /agents, GET /agents/{name}/chat, GET /events
  • POST /agents, POST /agents/{name}/prompt, POST /agents/{name}/cancel, POST /agents/{name}/review, POST /agents/{name}/stop
  • POST /agents/{name}/context/compact, POST /agents/{name}/context/reset

All ACP children launch as kimi --yolo --model kimi-code/k3 acp. Scope locks reject exact and nested overlaps in the same workspace. They coordinate ownership; yolo agents can still run shell commands, so the locks do not replace peer review or a final git status check before edits.

S
Description
No description provided
Readme
136 KiB
Languages
C# 64%
HTML 36%