AIプログラミングはもうコイントスじゃない:ArchonがYAMLワークフローでAgentをパイプラインに変える

AIプログラミングはもうコイントスじゃない:ArchonがYAMLワークフローでAgentをパイプラインに変える

AIにバグ修正を依頼しても、3回実行すれば3通りの結果が返ってくることがある。

テストを忘れることもあれば、PRの説明が雑になることもあれば、計画をすっ飛ばしていきなり書き始めることもある——実行のたびにモデルの「気分」に左右される。AIプログラミングツールの最大の悩みは能力不足ではなく、決定性がないことだ。

Archon(coleam00/Archon)の解決策は非常に直接的だ。Dockerfileがインフラを標準化し、GitHub ActionsがCI/CDを標準化したのだから、AIコーディングフローにも標準化が必要だという考え方だ。

Agentビルダーからワークフローエンジンへ

このプロジェクトは完全な書き直しを経て——PythonからTypeScriptへ移行し、位置づけも「AI Agentビルダー」から「AIコーディングワークフローエンジン」へと完全に転身した。核心となる変化は、AIに何をするかを自律的に判断させるのではなく、開発フローをYAMLワークフローとしてエンコードし、AIは知的判断が必要な場面でのみ介入するようにした点にある。

典型的なワークフローは以下のようになる:

nodes:
  - id: plan
    prompt: "Explore the codebase and create an implementation plan"
  - id: implement
    depends_on: [plan]
    loop:
      prompt: "Read the plan. Implement the next task. Run validation."
      until: ALL_TASKS_COMPLETE
  - id: run-tests
    depends_on: [implement]
    bash: "bun run validate"     # 決定性のあるステップ、AIは不要
  - id: review
    depends_on: [run-tests]
    prompt: "Review all changes against the plan."
  - id: create-pr
    depends_on: [review]
    prompt: "Push changes and create a pull request"

5つのノード——計画→実装→テスト→レビュー→PR。そのうちimplementreviewのみがAIの介入を必要とし、run-testsは純粋に決定性の高い実行だ。AIは「全権委任されたエージェント」ではなく、「オンデマンドで呼び出される知的モジュール」となった。

17種類のプリセットワークフロー

Archonには17種類のワークフローが組み込まれており、日常開発の大多数のシナリオをカバーしている:

ワークフロー用途
archon-fix-github-issue分類→調査→実装→検証→PR→レビュー→自己修復
archon-idea-to-prアイデア→計画→実装→検証→PR→5つの並列レビュー→自己修復
archon-comprehensive-pr-review5つの並列レビュアー、自動修復
archon-smart-pr-review複雑度に応じて分類し、ターゲットを絞ったレビューを実行
archon-architectアーキテクチャスキャン、複雑度の低減
archon-refactor-safely安全なリファクタリング、型チェックフック付き
archon-resolve-conflicts競合の検出→分析→解決→検証
archon-plan-to-pr既存の計画をPRまで実行

.archon/workflows/ディレクトリに独自のYAMLワークフローを定義することもでき、リポジトリにコミットすればチーム全員が同じプロセスを実行できる。

重要な設計:git worktreeによる分離

ワークフローの実行は毎回独立したgit worktree内で行われる。つまり、5つの修正タスクを同時に起動しても互いに衝突せず、それぞれが独立したブランチ上で作業できる。完了後はPRが作成済みのブランチに直接戻れる。

「Fire and forget」——放り出したらあとは放置、戻ってきたらPRを受け取るだけ。

マルチチャネルでのトリガー

CLIとWeb UIに加えて、ArchonはSlack、Telegram、Discord、GitHub Webhooksからのリモートワークフロー・トリガーにも対応している。TelegramとDiscordはそれぞれ5分で接続でき、SlackとGitHubは15分ほどかかる。

Web UIにはチャットインターフェース、リアルタイムワークフロー監視ダッシュボード、ドラッグ&ドロップ式のワークフローエディター、そして統一メッセージハブ——すべてのプラットフォームからのメッセージが一箇所に集約される——が含まれている。

アーキテクチャと依存関係

Platform Adapters (Web/CLI/Telegram/Slack/Discord/GitHub)

    Orchestrator
    ↓           ↓
Command      Workflow      AI Assistants (Claude / Codex / Pi)
Handler      Executor

ストレージ層はSQLiteまたはPostgreSQL(7つのテーブル)で、コードベース、会話、セッション、ワークフロー実行記録を管理する。

現在は主にClaude Codeに依存(CodexとPiも対応)しており、インストール方法はHomebrew、ワンクリックスクリプト、Dockerがある。ソースからのビルドにはBun + Claude Codeが必要。

データ

  • ⭐ 20.5k Star、3.1k Fork
  • 1,355コミット、最新コミットは9時間前
  • TypeScriptで記述、現在開発ブランチ
  • MITライセンス
  • 公式サイト:archon.diy

Archonは単なる「コードを書いてくれるAgent」ではない。それが解決するのはより根本的な問題だ:Agentが既に手元にあるとき、どうすれば毎回同じ結果を出せるようにするか。AIプログラミングの不決定性に苦しめられてきたチームにとって、このプロジェクトは注目する価値がある。