Sketch of a Claude Code port of openai/symphony — a daemon-style orchestrator that polls an issue tracker, dispatches isolated worker agents per issue, and reconciles state across ticks. Tracker-agnostic by design: the project's CLAUDE.md documents how to talk to whatever tracker is in use (GitHub Issues, Gitea, tracker CLI, Linear, etc.); the plugin reads those instructions rather than shipping per-tracker adapters. Includes: - /symphony-init for first-time setup (detects gh/gitea/tracker, writes the tracker section into project CLAUDE.md, drops WORKFLOW.md, offers to schedule the tick) - /symphony-tick fired by /schedule cron entries (idempotent, silent, never prompts) - per-issue worker agent in isolated worktrees - on-disk state in .symphony/state.json (survives cron cold starts) Known divergences from the spec are documented in the plugin CLAUDE.md (no streaming agent telemetry; no codex.* knobs; hooks run inside the worker rather than the orchestrator). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
986 B
986 B
description
| description |
|---|
| Set up Symphony in the current project — detects the issue tracker, writes a tracker section into CLAUDE.md, drops a starter WORKFLOW.md, and offers to schedule the tick. Idempotent — safe to re-run to update. |
Invoke the symphony-init skill. It will:
- Probe the environment for an existing tracker (gh, gitea MCP,
.tracker/CLI, etc.) and existing Symphony config (./WORKFLOW.md, tracker section in./CLAUDE.md). - Interview you for anything it could not detect — which tracker, active/terminal state names, concurrency cap, branch naming, etc.
- Write or update the tracker integration section in
./CLAUDE.mdso future ticks and workers know how to talk to your tracker. - Drop
./WORKFLOW.mdfrom the plugin's template, prefilled with what it learned. - Offer to set up a
/scheduleentry that fires/symphony-tickon a cadence.
Run this once per repo. Re-run any time the tracker changes or you want to update the schedule.