SuperAPI AI Directory

quilt

Line-level authorship in a shared Git checkout: multiple coding agents work in one repo, each committing only its own lines, with symbol-level claims.

Open website

About this tool

Quilt is a command-line tool for tracking which agent wrote each line of code when multiple AI coding agents share the same Git checkout. It captures every edit at the tool boundary, maintains a per-line author record, and reconstructs each agent's own changes at commit time. Git remains the single source of truth; Quilt does not call an LLM or generate agents, and its state is kept in a deletable .quilt/ sidecar directory that does not affect the repository itself.

Purpose

Quilt is designed to solve the common problems that arise when multiple AI coding agents collaborate in the same Git checkout: ordinary git commands can accidentally sweep other agents' uncommitted files into a commit, code generation and lockfile changes can be misattributed, and two agents occasionally modify the same line, causing silent overwrites. Quilt makes shared checkouts safe: each agent commits only its own lines without interfering with others, and when two agents genuinely need the same piece of code, it becomes a coordinated handoff rather than a silent loss.

Main capabilities

  • Line-level attribution:commit --mine commit only your own lines, even when sharing the same code block with other agents.
  • Symbol-level claims: you can claim symbols such as utils.js#formatPrice rather than whole files, so agents editing different functions do not conflict. Ten languages are supported via tree-sitter parsing; other languages use whole-file claims.
  • Conflict prevention: when writing to code already claimed by another agent, the write is rejected before any byte changes, showing the claim holder's stated intent.
  • Push awareness: when claiming a symbol that depends on a function another agent is modifying, Quilt warns at claim time.
  • Detection and preservation: if one agent overwrites another agent's uncommitted lines, Quilt snapshots the victim's version, ensuring nothing is silently lost.
  • Every commit is an ordinary Git commit: Quilt trusts Git and never rewrites it; all state is stored locally under .quilt/. No account, no daemon.
  • Automatic agent naming: each Claude Code session or MCP connection gets its own ID, distinguishing parallel agents with no setup.

Usage

  1. In a directory containing multiple repositories, run quilt setup, which configures the workspace root and every repository inside it; each edit is captured into the repository the file belongs to.
  2. No need to set QUILT_ACTOR or perform per-terminal rituals; the capture hook automatically attributes each edit to its session.
  3. Use quilt fleet to view in real time, and when a session's work is ready, have the agent run quilt commit --mine -m "...". Each commit contains only that session's lines, even if two sessions modified the same file.
  4. quilt ui opens the live view in a browser: who wrote what (line counts per agent per file), active claims, who is blocked by whom, and anything that needs human handling. Local only (127.0.0.1), read-only, one command.
  5. End users can use quilt fleet --watch to get the same text view.
  6. When an ID stable across sessions is needed, it can be set explicitly.
  7. In a shared shell, make the committer explicit (quilt --as auth-agent commit --mine ...). When the dirty tree shows other agents, Quilt refuses to check out the global session identity.
  8. If the deployment provider requires an identifiable Git email, it can be set once while keeping the agent names different.

Use Cases

  • Multiple AI coding agents need to work in parallel in the same repository, sharing one node_modules, one build, one dev server, one environment.
  • Agents work on disjoint files or different functions of the same file and need to ensure their changes are committed independently.
  • Need to coordinate two agents' modifications to the same code to avoid silent overwrites.
  • Want to keep Git as the single source of truth without introducing extra worktrees or complex environment isolation.

Limitations

  • Quilt does not call an LLM or generate agents; it only tracks and coordinates edits.
  • Symbol-level declarations support ten languages (via tree-sitter); other languages only support whole-file declarations.
  • State is stored in a local .quilt/ directory; deleting that directory will not affect the repository, but tracking information will be lost.
  • Need to run quilt setup to configure capture hooks and the shared MCP server.
  • For fully independent, long-running tasks, worktrees may be more suitable; Quilt and worktrees can be used complementarily.
  • Telemetry: an anonymous heartbeat once per day (quilt version, operating system, Node major version, random local ID). Unless you opt in at quilt setup , no other information is collected, and code, paths, repositories, or agent names are never collected. It can be turned off via quilt telemetry off、QUILT_TELEMETRY=0 or DO_NOT_TRACK=1 .

For more information, see docs/orchestrators.md (running an agent fleet), docs/reference.md (full command list, how attribution works, and the .quilt/ state layout), and bench/ (the test scenario ladder).