shiichan

Symphony が Linear をコーディングエージェントの司令塔に変える!

やっほー、しぃちゃんだよ!今日はコーディングエージェントを何体もまとめて束ねる、新しいオープンソースの話にわくわくしてるの。

OpenAI News openai.com

なにが発表されたの?

OpenAI の News で、Symphony っていうエージェントのオーケストレーション用オープンソース仕様が発表されたよ!これは Linear みたいなプロジェクト管理ボードを、コーディングエージェントの「コントロールプレーン(司令塔)」に変えちゃう仕組みなの。しぃちゃんたちが普段タスクを並べてる課題ボードが、そのままエージェントを動かす管制塔になるって発想だよ。

Symphony は課題ボードをずっと見張っていて、開いてるタスクひとつひとつに必ずエージェントが張り付いて、終わるまでループで回し続けてくれるの。仕様の本体は Symphony の GitHub リポジトリ で公開されてるよ。

なぜ重要なの?

エージェントを何個も同時に動かすとき、いちばんの詰まりどころって実は「人間の注意力」なんだよね。エンジニアが Codex の対話セッションを何枚も開いて、あっち見てこっち見て…ってやってると、人間のほうがボトルネックになっちゃうの。

Symphony はそこを逆転させて、「課題ボードのほうが主役、人間はときどき覗くだけ」にするんだよ。OpenAI は自分たちの課題トラッカーそのものをコントロールプレーンにした、って説明してるの。

これで何が変わるの?

効果はけっこう強烈で、OpenAI の一部のチームではこんな数字が出たんだって。

Among some teams at OpenAI, we saw the number of landed PRs increase by 500% in the first three weeks.

最初の 3 週間でマージされた PR が 500% 増えたって!人間がエージェントを見張る係から解放されると、こんなに変わるんだね。

しかも「チェックアウトして、ステータス更新して、PR をひも付けて…」みたいな、これまで暗黙だった開発フローを WORKFLOW.md に書き出して明文化するから、どのエージェントが動いても同じ手順を再現できるようになるの。

深く潜ってみよう

Symphony の面白いところは、製品というより仕様そのものが主役なところ。本体は SPEC.md っていう 1 枚の Markdown ファイルで、ドメインモデル・ポーリング・ワークスペース管理・エージェントプロトコル・トラッカー連携まで、ぜんぶここに書いてあるんだよ。

仕組みをざっくり並べるとこんな感じ。

  • 課題(Issue)は Unclaimed → Claimed → Running → RetryQueued → Released というステートマシンで管理される
  • タスクごとに独立したワークスペースを作って、その中でエージェントを走らせる
  • エージェントとの通信は Codex App Server を使って、stdio 経由の JSON-RPC でやり取りする
  • Linear とは GraphQL アダプタでつながって、linear_graphql みたいなツール呼び出しで直接読み書きできる

ワークスペースの設定は WORKFLOW.md の YAML フロントマターに書くよ。ポーリング間隔や同時実行エージェント数、フックなんかを指定できるの。

tracker:
  kind: linear
polling:
  interval_ms: 30000
agent:
  max_concurrent_agents: 10

リファレンス実装には Elixir が選ばれてるの。並行プロセスの監督・オーケストレーションが得意な言語だからなんだって。しかも仕様のあいまいさを洗い出すために、OpenAI は Codex に頼んで同じ仕様を TypeScript・Go・Rust・Java・Python でも実装させたらしいよ。「好きなコーディングエージェントに仕様を渡して、自分専用の Symphony を実装させる」っていう使い方もできるの。公開から 4 月 23 日時点で 15K 超の GitHub スターが付いてるんだって。

まとめ

  • Symphony は Linear などの課題ボードをコーディングエージェントの司令塔に変える、オープンソースのオーケストレーション仕様だよ
  • 本体は SPEC.md 1 枚で、リファレンス実装は Elixir、Codex App Server と JSON-RPC でつながる
  • 開いてるタスクに必ずエージェントを張り付けることで、一部チームでは最初の 3 週間で PR が 500% 増えたの
  • WORKFLOW.md で開発フローを明文化して、どのエージェントでも同じ手順を再現できる

エージェントを何体も回して「人間の見張り」に疲れてる開発チームや、Codex ×課題管理をまるっと自動化したい人に刺さる仕様だと思うな!