burrow

module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 24, 2026 License: Apache-2.0

README ΒΆ

Burrow

Burrow is an agent-native cloud platform. It lets an AI coding agent β€” Claude Code, Cursor, Codex, Cowork, anything that speaks MCP β€” deploy and operate real applications on your own Kubernetes cluster. You tell your agent "deploy this," "roll it back," "show me the logs," "scale it," and Burrow carries it out safely on your cluster.

🚧 Status: pre-implementation

Burrow is being designed in the open, ahead of the code. Nothing described here works yet β€” this repository currently holds the foundations: the architecture, the design records, and the v0.1 plan. Everything below is a goal until it ships and is marked in the version status table (ADR-0009). See licensing for how the code is licensed.

What it is

The first user is a solo developer or small agency who already has a Kubernetes cluster (for example on DigitalOcean), installs Burrow into it, points their agent at it, and operates their infrastructure by talking to the agent. Compute first: the v0.1 job is deploying your code and running it. Databases, domains, autoscaling, and cost controls come later (roadmap).

It's fully self-hostable: the single-tenant control plane, the MCP server, and the CLI, packaged so you can run the whole thing on your own cluster.

How it works

Burrow is four layers (architecture):

  1. Your agent β€” not ours. Any MCP client.
  2. The MCP server β€” thin, agent-neutral, holds no cluster credentials. The remote control.
  3. The control plane β€” the product. Deploy orchestration, build-to-image pipeline, rollout and rollback, logs and status, scaling, the safety guardrails, and the record of who deployed what. Holds the cluster credentials; the only layer that talks to Kubernetes.
  4. Kubernetes β€” your cluster, the runtime Burrow operates on top of.

Two ideas keep it safe and fast:

  • Code never travels over MCP. MCP carries only tool calls and small metadata β€” an image reference, env vars, a command. The built container image moves through a container registry, never the agent connection. MCP is the remote control; the registry is the conveyor belt. (ADR-0004)
  • Guardrails live in the control plane, between your agent and your cluster. Dangerous operations are gated or refused there, and every operation returns a structured result the agent can reason over. (ADR-0006)

How to try it

Not yet β€” there is nothing to install. When the v0.1 slice ships, the flow will be: install the control plane and MCP server into your existing cluster, point your agent at the MCP server, build and push your image to a registry, and ask your agent to deploy it by reference β€” then status, logs, rollback, and scale. The exact v0.1 scope is in docs/PLAN.md.

Version status

Burrow follows semver from v0.1 toward v1.0. This table never lags the code (ADR-0009).

Version Scope Status
v0.1 Install into an existing cluster · connect an agent over MCP · deploy an image by reference · status · logs · rollback · scale 🚧 in progress (pre-implementation; scope proposed)
v0.2+ Server-side build Β· richer guardrails Β· databases Β· domains/TLS Β· autoscaling Β· cost controls planned (roadmap)
v1.0 Production self-host: hardened deploy-and-operate core with day-two operations planned (roadmap)

Documentation

  • docs/ARCHITECTURE.md β€” the system design: the four layers, the invariants, and the request paths.
  • docs/ROADMAP.md β€” version milestones, v0.1 β†’ v1.0.
  • docs/PLAN.md β€” the current execution plan and the v0.1 scope.
  • docs/adr/ β€” Architecture Decision Records: every load-bearing decision, with its reasoning and rejected alternatives.
  • CLAUDE.md β€” the contributor and agent guide: invariants, Go conventions, code layout, build/test commands, and workflow.

License and contributing

How the code is licensed (LICENSING.md, ADR-0001):

  • The client surface is Apache-2.0 β€” the CLI (cmd/burrow/) and the MCP server (mcp/). Integrate against it freely.
  • The control plane and operator are source-available under FSL-1.1-ALv2 β€” read, modify, and self-host them, with the full source in the open. Each release converts to Apache-2.0 two years after it ships β€” a posture that opens up over time.
  • Commercial licenses are available for teams that want terms beyond the FSL grant β€” see COMMERCIAL.md.

Contributions are welcome β€” open an issue or a discussion. Bug reports, ideas, and design feedback are the best way to help and to shape where Burrow goes. Commits are signed off under the Developer Certificate of Origin (git commit -s). See CONTRIBUTING.md for the details.

Directories ΒΆ

Path Synopsis
cmd
burrow command
Command burrow is the Burrow CLI: the human-facing way to operate Burrow.
Command burrow is the Burrow CLI: the human-facing way to operate Burrow.
burrow-mcp command
Command burrow-mcp is the Burrow MCP server: the thin, agent-neutral control surface that exposes Burrow's tools to any MCP client and translates tool calls into control-plane API calls (ADR-0003).
Command burrow-mcp is the Burrow MCP server: the thin, agent-neutral control surface that exposes Burrow's tools to any MCP client and translates tool calls into control-plane API calls (ADR-0003).
burrowd command
Command burrowd is the Burrow control plane: the component that holds the cluster credentials, runs the deploy/rollout/rollback/logs/scale orchestration, enforces the guardrails, and records who deployed what (ADR-0002).
Command burrowd is the Burrow control plane: the component that holds the cluster credentials, runs the deploy/rollout/rollback/logs/scale orchestration, enforces the guardrails, and records who deployed what (ADR-0002).
Package connect reaches the in-cluster Burrow control plane from a developer's machine using their ambient kubeconfig and the Kubernetes API server's service proxy β€” no port-forward, no ingress (ADR-0014).
Package connect reaches the in-cluster Burrow control plane from a developer's machine using their ambient kubeconfig and the Kubernetes API server's service proxy β€” no port-forward, no ingress (ADR-0014).
api
e2e
sys
Package internal is the root of Burrow's module-private shared helpers, licensed Apache-2.0.
Package internal is the root of Burrow's module-private shared helpers, licensed Apache-2.0.
Package mcp is the Burrow MCP server: the thin, agent-neutral control surface (ADR-0003) that exposes Burrow's operations as MCP tools to any MCP client and translates tool calls into control-plane API calls.
Package mcp is the Burrow MCP server: the thin, agent-neutral control surface (ADR-0003) that exposes Burrow's operations as MCP tools to any MCP client and translates tool calls into control-plane API calls.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL