jayminwest/warren

Run coding agents like infrastructure, not terminal sessions. Warren manages isolation, lifecycle, spend, recovery, and Git delivery on compute you control.

Warren – コーディングエージェントを管理されたワークロードに変える

概要 – Warrenは、コーディングエージェントプロセス(例:Claude Code、Pi)を、あなたが管理するインフラ上でファーストクラスの観測可能なワークロードとして実行できるオープンソースプラットフォームです。ライフサイクル全体を処理します:新しい隔離されたワークスペース、実行監視、支出制限、ライブイベントストリーミング、自動リカバリ、そして最後にエージェントの変更をGitにコミットします(オプションでプルリクエストを開く)。

重要性 – 大規模言語モデル(LLM)ベースのコーディングアシスタントは、コードの作成、修正、リファクタリングにますます使用されています。これまでは通常、開発者のターミナルから実行されるため、以下が困難です:

  • 実行を無人またはスケジュールで継続させること、
  • リソースやコストの上限を強制すること、
  • 生成された変更がバージョン管理に安全に保存されることを保証すること、
  • 障害を観察およびデバッグすること。

Warrenは、チームがエージェントの実行を他の本番ジョブと同様に扱えるように、欠けている「インフラストラクチャレイヤー」を提供します。


コア機能(READMEに記載)

機能 提供内容
ワークスペース分離 各実行は、独自のGitブランチ上の新しいワークツリーまたはクローンで開始され、bwrap(Linux)またはsandbox-exec(macOS)でサンドボックス化されます。
ライフサイクル管理 実行のディスパッチ、監視、キャンセル、ファイナライズ、クリーンアップを自動的に行います。
ライブイベントストリーム リアルタイムのJSONイベントがHTTP API、CLI、UIを介して公開され、進行状況を確認したり介入したりできます。
支出と並行性の制限 エージェント実行中に強制されるトークン使用量またはコスト上限を定義します。
リカバリ ウォッチドッグが失われたプロセス/ポッドを検出し、正常なリカバリを試みます。ファイナライザーはティアダウン前に作業を救出します。
Git配信 実行が完了すると、Warrenは変更をコミットし、ブランチをプッシュし、GitHub Appまたは静的トークンを介してPRを開くことができます。
履歴と観測性 すべての実行メタデータ(状態、期間、コスト、トークン使用量、結果)が保存され、統一されたHTTP API、CLI、Web UIを介してクエリ可能です。
拡張可能なランタイム 3つの組み込みランタイムをサポート:local(bubblewrap/sandbox-exec)、docker(サイブラーコンテナ)、k8s(実行ごとに1ポッド)。アダプターを介して新しいランタイムを追加できます。
拡張機能 WarrenのHTTPサーフェスにプラグインするオプションの外部プロセスパッケージ(監査ログ、判定、キャンペーンコントローラー、Jira/Azure DevOpsトラッカー)。

仕組み(ハイレベルフロー)

  1. ハーネスを定義 – コーディングモデル(例:Claude Code)と通信し、タスクを実行する小さなプログラム。
  2. Warrenをデプロイ – macOS/Linuxホストでcurl … | sh && warren upを実行するか、提供されたDocker-Compose / Kubernetesマニフェストを使用します。
  3. 実行を作成 – UI、CLI、またはAPIを介してリポジトリ+タスクの説明を送信します。
  4. Warrenが隔離されたワークスペースを起動 – 選択したランタイム上で、ハーネスを起動し、イベントをストリーミングします。
  5. 実行中 – ライブログを監視したり、実行を誘導したり、キャンセルしたりできます。支出制限が強制されます。
  6. 成功時 – ハーネスの変更がコミットされ、ブランチがプッシュされ、(オプションで)PRが開かれます。
  7. すべてのメタデータ – 後の監査、コスト分析、またはリプレイのために保存されます。

はじめに(READMEのクイックスタート手順)

# 1. CLIをインストール(Bunと`warren`バイナリを追加)
curl -fsSL https://warren.run/install | sh

# 2. ローカルサーバーをブートストラップ(最適なランタイムを自動検出)
warren up

コマンドはブラウザを開き、GitHub接続、リポジトリ選択を案内し、スターター実行をディスパッチします。

より本番環境に適したデプロイメントでは、リポジトリをクローンして同梱のDocker-Composeスタックを起動できます:

git clone https://github.com/jayminwest/warren
cd warren
cp .env.example .env   # シークレットを編集
 docker compose up -d   # サーバー、DBなどを起動

次にhttp://localhost:8080を開き、発行されたオペレータートークンを貼り付け、リポジトリを追加して、実行のディスパッチを開始します。


誰が使うべきか

  • コーディングエージェントをすでに試していて、ターミナルセッションを超えて実行を継続させたい個人開発者または小規模な信頼できるチーム。
  • モデル資格情報、計算リソース、生成コードをオンプレミスに保つ必要がある組織(セルフホスト、SaaSロックインなし)。
  • コスト上限を強制し、実行の健全性を監視し、エージェント生成の変更を自動的にマージしたい運用チーム。

ドキュメントとリソース

  • 初回実行ガイドdocs/quickstart.md
  • ランタイムとデプロイメントガイド – Docker(docs/self-host/docker.md)、Kubernetes(docs/RUNBOOK-K8S.md
  • APIとSDK – OpenAPI仕様(docs/openapi.yaml)、TypeScript SDK(docs/sdk.md
  • 拡張機能の設計docs/design/extensions.md
  • ロードマップROADMAP.md
  • ライブデモhttps://app.warren.run(読み取り専用の実行履歴)
  • Discordコミュニティ – READMEのリンクバッジ

現在のステータス

  • 最新の安定版リリース:0.19.1
  • GKEで本番使用され、実行ライフサイクルをカバーするユニット、統合、シナリオテストがあります。
  • コアモデルは意図的に単一の共有トークン信頼モデルに限定されています(まだユーザーごとのRBACはありません)。

ライセンス

MIT – 個人、学術、商用利用は無料です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト