🤖 ai neuro

OpenAI Symphony: a masterclass in writing specs for AI agents

OpenAI open-sourced Symphony — a service that polls Linear issues, creates isolated workspaces, and runs Codex agents to do the work. But the real gem isn’t the code — it’s the SPEC.md. It’s a near-perfect example of how to write specs that AI agents can execute against.

Why this spec is good to throw at an AI agent:

  • 6-layer architecture clearly separated: policy, config, coordination, execution, integration, observability
  • WORKFLOW.md as in-repo config — the agent prompt and runtime settings are version-controlled with the code, not buried in a dashboard
  • Lifecycle hooks (after_create, before_run, after_run, before_remove) give agents clear extension points without touching core logic
  • No database required — recovers from tracker + filesystem state alone, which makes it simple for agents to reason about
  • Hot reload config without restart — designed for iteration speed
  • Clear non-goals — explicitly states what it won’t do, which prevents agents from overbuilding

The pattern: Symphony treats the agent as a worker bee. The spec defines the hive — poll cadence, concurrency bounds, workspace isolation, retry with backoff, observability. The agent just executes inside its sandbox.

Key insight: This IS harness engineering made concrete. The blog post explained the philosophy; this spec shows the implementation blueprint. If you’re building agent infrastructure, this is the reference to study.

Limitations (draft v1): Linear-only tracker, Codex-only agent, no sandbox mandate, no multi-tenant support. But the architecture is clean enough to extend.