polychrome

A Rust-native, provider-agnostic agent orchestrator. Many backends, many sandboxes, one control plane.

Each conversation is reconciled into its own isolated harness pod on Kubernetes. The control plane owns the external API, the reconciler, and the durable event log; the execution plane — the harness pod — runs the function-calling loop. Backends, tools, and tenants can swap without touching the orchestration core.

Every binary exposes /healthz /livez /readyz /metrics on a side server; events on the wire are ed25519-signed where it matters; OpenTelemetry stitches one trace tree across the control-plane → harness hop.

Start here

  • Architecture — control plane, execution plane, and the durable event log.
  • Run & Deploy — local two-process setup and the Kubernetes overlays.
  • Operator CLI — cluster lifecycle, introspection, and driving turns.

Workspace

polychrome is a Rust workspace. The control plane, the harness, the Slack edge adapter, and the operator CLI are separate binaries built from shared crates.

CrateRole
polychromeControl-plane binary: AgentService, ApprovalService, forensics UI
polychrome-harnessExecution-plane binary: HarnessService, run_turn, tools
polychrome-agentrun_turn, ToolExecutor, Summarizer, handoff primitives
polychrome-toolsPure-tool registry plus MCP client and server
polychrome-eventlogAppend-only event log over a Commonware journal
polychrome-controllerConversation CRD plus kube reconciler
polychrome-cliOperator CLI: cluster lifecycle, log/exec/send, self-update

The full crate listing lives in the repository README.