Skip to content

Manage the entire project lifecycle around your coding agents.

CarryCtx gives agents and human collaborators one local, auditable control plane from project contract and dependency-aware planning through worktrees, checkpoints, handoffs, reconciliation, and release evidence.
0msnetwork round-trip
SQLitesingle-file state store
agents, one source of truth

CarryCtx is the durable project state and control layer that sits between your repository and every agent or human working in it. Three ideas define it.

Durable State

One SQLite file at <git-common-dir>/carryctx/state.sqlite, shared by every linked worktree. Tasks, dependencies, sessions, checkpoints, handoffs, decisions, events, and analytics are queryable rows — not prose an agent must re-parse each session.

Lifecycle

From init and dependency-aware planning through roles and teams, worktree-bound sessions, progress and checkpoints, handoffs and review, to cleanup, reconciliation, and release evidence — one control plane for the full delivery loop.

Portable & Mergeable State

Fully local and offline by default. No cloud service, account, or network round-trip. Move state with carryctx export / import (ctxpack v2), merge two clones with a semantic three-way merge, and let Git, SSH, or any external transport you choose carry the artifact.

Not an agent harness

CarryCtx does not launch, schedule, or route agent processes. Your external harness owns execution — CarryCtx persists the coordination state those processes rely on.

Not a Claude Code replacement

It is agent-agnostic. Claude Code, Codex, OpenCode, Copilot, or a human at a terminal all speak the same CLI and stdio MCP surface.

Not a cloud sync service

No hosted state, no telemetry, no required account. Portable state travels as a local file you control.

Not a TODO list

Dependency-gated tasks, CAS-safe claims and handoffs, Git-aware checkpoints, and an append-only event log — richer than any checklist.

CarryCtx manages the lifecycle around software delivery for coding agents and human collaborators. It keeps the project contract, plan, dependencies, roles, sessions, progress, review trail, cleanup decisions, and release evidence in one local, Git-aware state model.

100% Offline & Local

State lives at <git-common-dir>/carryctx/state.sqlite, shared by linked worktrees. No cloud service, account, or network round-trip is required.

Durable Agent Teams

A commander plus role-specialized subagents, persisted like every other fact. Handoffs advance through a state machine with compare-and-swap updates; team context reads it all back, read-only.

Dependency-Gated Tasks

Tasks carry status, priority, owner, and dependencies. Work stays planned until its dependencies complete, and concurrent claims are arbitrated by the database — not by luck.

Auditable by Default

Every transition lands in an append-only event stream, alongside Git-aware checkpoints, immutable decision records, and full-text search across all of it.

Per-Task Worktree Isolation

Bind a Git worktree to a task so parallel agents on parallel branches never collide, and context resolves from the directory an agent stands in.

AST Dependency Graph

Scans imports into a file-level dependency graph, exportable as Mermaid/DOT/ASCII, so agents reason about blast radius instead of hallucinating cross-file assumptions.

Presets, Skills & Personas

Install workflow SOPs, coding rules, and agent personas into .carryctx/ — conventions ship with the repository instead of living in prompts.

Lifecycle Cleanup & Evidence

v0.11.4 (since v0.8) records cleanup requests and policies, reconciles safe worktree removal, and preserves audit and analytics evidence through release.

Agent Analytics

carryctx stats reports sessions, throughput, checkpoints, and blockers per agent — real numbers for tuning your harness, computed entirely locally.

Structured, not prose

Tasks, checkpoints, and decisions are queryable rows, not paragraphs an agent has to re-parse from scratch every session.

Git-native truth

Branch, HEAD, dirty state, and diffs are captured automatically. Never manually transcribed, never stale.

Built for hand-off

Any agent, in any worktree, resumes with carryctx resume. No chat history to re-read, no context to rebuild.

  1. Set the contract. carryctx init records the project configuration and creates state at <git-common-dir>/carryctx/state.sqlite.
  2. Plan the work. Create tasks, dependencies, scopes, and a ready queue; let the external harness define and run validation, then record the evidence in checkpoints.
  3. Define roles and teams. Register humans, commanders, and role-specialized subagents; the external harness decides scheduling.
  4. Run sessions in worktrees. Bind worktrees, claim tasks, and record progress and Git-aware checkpoints.
  5. Handoff and review. Transfer ownership explicitly, review the work, and preserve decisions and verification results.
  6. Reconcile and release. v0.11.4 (since v0.8) cleanup policies safely retry or block worktree removal; audit events and analytics provide release evidence.
Terminal window
carryctx init
carryctx agent register --name my-agent --provider user

Ready to run your agents on real project state?

Install CarryCtx, run init, and give every agent exactly its slice of the plan.

Get started