Headless · open source

Turn issues into
reviewed pull requests.

A headless orchestrator that polls GitHub or Linear, dispatches parallel agent workers in isolated workspaces, and drives tickets through implementation, review, rework, and merge.

Polls
  • GitHub
  • Linear
  • · runs Pi or Codex workers
Kata Symphony live console: a worker summary with running, retry, blocked, and completed counts, then running workers, the retry queue, blocked and completed issues, the selected issue's tracker state and workspace, and pending escalations.

Issue-to-PR orchestrator

Run a backlog through agents, unattended.

01

Tracker-driven dispatch

Polls GitHub Projects or Linear for active issues, filters candidates, respects terminal states, and keeps tracker state reconciled.

02

Isolated worker sessions

Creates local, cloned, worktree, Docker, or SSH-backed workspaces and starts the configured Pi or Codex runner per issue.

03

Operational control loop

Handles concurrency limits, retries with exponential backoff, stall detection, escalations, hooks, and structured logs.

04

Pi-native console

The Pi extension adds /symphony commands, start and attach flows, refresh, steer, escalation response, and a live console inside Pi.

Quick start

Repo-local, running in minutes.

Initialize a workflow in your repository, point it at a tracker, and let workers claim issues. Drive it headless on a server or attach from the Pi extension.

$ cargo build --release
$ symphony init
$ GH_TOKEN=… symphony --port 8788
  1. Run symphony init in the repository.
  2. Configure tracker, workspace, prompts, and worker runner.
  3. Start Symphony or attach through the Pi extension.
  4. Let workers claim issues, open PRs, handle review, and surface escalations.

Pi-native

Drive it from inside Pi.

The Pi extension adds /symphony commands plus a live console for running workers, the retry queue, blocked issues, completed work, and pending escalations, without leaving your agent.

$ pi install npm:@kata-sh/pi-symphony-extension

  • /symphony:start Launch the orchestrator.
  • /symphony:status Refresh the live console.
  • /symphony:steer Redirect a running worker.
  • /symphony:escalation Respond to a blocked issue.

Planning companion

Kata CLI feeds Symphony with specs, slices, and task plans. It is a companion, not a separate product. Symphony is the surface for unattended issue execution, worker lifecycle, and tracker reconciliation.

Built in the open

Yours to run.

Kata Symphony is open source. Build it, point it at your tracker, and run it on a server or beside your agent.

Rust · GitHub / Linear · Pi extension

Questions about Kata Symphony

Where does Kata CLI fit now?
Kata CLI is a spec-planning companion to Symphony. It no longer warrants a standalone product page in the portfolio.
Which worker runtimes can Symphony launch?
Symphony supports Pi RPC via agent.name and Codex app-server workers. The workflow file controls the static command and per-state settings.
What does the Pi extension add?
The Pi extension adds /symphony commands, start and attach flows, status refresh, worker steering, escalation responses, and a live console for active and blocked work.