Overture

公式

AIコーディングエージェント向けのビジュアルプラン承認。エージェントのプランをインタラクティブなグラフとして表示し、コンテキストを添付し、アプローチを選択してから、コードが書かれる前に承認します。

ドキュメント

Overture

コードの前に計画を確認。承認し、実行を見守る。

npm version CI status npm downloads Discussions MIT License

問題解決策インストール機能マーケットプレイス設定ディスカッション


https://github.com/user-attachments/assets/eeb9c4cb-c80d-42da-bf63-c0c4ecb1e5d6


🔥 問題点

今日のAIコーディングエージェント — CursorClaude CodeClineCopilot — はすべて同じように動作します。

現在の状況

  1. プロンプトを入力する
  2. エージェントがすぐにコードを書き始める
  3. 何が行われているか全く見えない
  4. 要求を誤解していたことに気づく
  5. 何百行ものコードを破棄しなければならない
  6. トークン、時間、忍耐を無駄にする

テキスト計画は役に立たない

一部のエージェントはチャットでテキスト計画を表示します。しかしテキストでは以下を示せません。

  • 依存関係 — どのタスクが何に依存しているか?
  • 分岐点 — どのような代替アプローチが存在するか?
  • コンテキスト要件 — どのファイル、API、シークレットが必要か?
  • 複雑さ — どのステップがリスクを伴うか?
  • 進捗 — 何が完了し、次は何か?

The Problem


✨ 解決策

Overture は、AIエージェントの計画フェーズを傍受し、コードが書かれる前にインタラクティブなビジュアルフローチャートとして描画します。

Overture Solution

あなたが計画を承認するまで、エージェントは一行のコードも書きません。



ビジュアル計画
パン、ズーム、クリックスルーナビゲーション付きのインタラクティブなフローチャート

コンテキスト添付
ステップごとのファイル、APIキー、指示

アプローチ選択
異なるパスの長所/短所を比較

リアルタイム実行
ノードが進行状況とともに点灯するのを監視

MCPマーケットプレイス
ノードごとにツールを参照・添付

🚀 インストール

Overtureは、あらゆるMCP互換AIコーディングエージェントで動作するMCPサーバーです。1つのコマンドでインストール。

Claude Code

claude mcp add overture-mcp -- npx overture-mcp

Cursor

~/.cursor/mcp.jsonに追加:

{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}
その他のエージェント (Cline, Copilot, Sixth AI)

Cline (VS Code拡張機能)

VS Code設定を開く → "Cline MCP"を検索 → 追加:

{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}

GitHub Copilot

プロジェクトルートに.vscode/mcp.jsonを作成:

{
  "servers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"]
    }
  }
}

注意: GitHub Copilot MCPにはVS Code 1.99以上が必要で、mcpServersではなくserversを使用します。

Sixth AI (VS Code拡張機能)

Sixth AI MCP設定ファイルに追加:

プラットフォームパス
macOS~/Library/Application Support/Code/User/globalStorage/sixth.sixth-ai/settings/sixth-mcp-settings.json
Windows%APPDATA%\Code\User\globalStorage\sixth.sixth-ai\settings\sixth-mcp-settings.json
Linux~/.config/Code/User/globalStorage/sixth.sixth-ai/settings/sixth-mcp-settings.json
{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "disabled": false
    }
  }
}

グローバルインストール (オプション)

npm install -g overture-mcp

動作確認

エージェントに任意のタスクを与えます。Overtureが自動的にhttp://localhost:3031で開き、計画が承認待ちになります。


🎯 仕組み

How Overture Works

フロー:

ステップ内容
1. プロンプトエージェントにタスクを与える: 「認証付きREST APIを構築」
2. 計画エージェントがステップ、分岐、要件を含む詳細な計画を生成
3. 可視化Overtureが計画をインタラクティブなグラフとして描画
4. 強化ノードをクリックし、ファイル添付、分岐選択、APIキー入力
5. 承認「承認して実行」をクリック (またはEnterキー)
6. 実行ノードがパルス、完了、失敗する様子をリアルタイムで監視
7. 制御一時停止 (スペースキー)、再開、ノード再実行、計画の途中変更

🛠 機能

インタラクティブ計画キャンバス

Interactive Canvas

機能説明
React Flowキャンバススムーズなアニメーション付きのフルパン、ズーム、ドラッグ
ストリーミングパーサーエージェントが生成する計画ノードがリアルタイムで表示
Dagre自動レイアウトノードのインテリジェントな自動配置
ビジュアルステータス保留中 (グレー) → 実行中 (黄色パルス) → 完了 (緑) / 失敗 (赤)
次ノードインジケーター次に実行されるノードを青いパルスで表示
複雑度バッジ低 (緑)、中 (黄)、高 (赤) を一目で確認
グローエフェクトアクティブなノードと次に実行されるノードを強調するシャドウグロー
挿入可能エッジエッジにホバーして計画の途中に新しいノードを挿入

ノード詳細パネル

Node Details Panel

任意のノードをクリックして詳細を表示:

情報表示内容
タイトルと説明このステップの完全なコンテキスト
複雑度レベル低 / 中 / 高 (ビジュアルインジケーター付き)
期待される出力ステップが生成すべきもの
リスクとエッジケース注意すべき潜在的な問題
長所と短所分岐オプションのトレードオフ比較

動的フィールド (ユーザー入力)

Dynamic Fields

ノードは実行前にユーザー入力を要求できます:

フィールドタイプユースケース
文字列プロジェクト名、URL、カスタム値
数値ポート番号、制限、カウント
ブール値オプションのYes/Noトグル
選択定義済み選択肢のドロップダウン
シークレットAPIキー、トークン (マスク入力)
ファイルコンテキストを添付するファイルパス

各フィールドに含まれるもの:

  • 必須/オプションのインジケーター
  • デフォルト値
  • ヘルプテキストと説明
  • セットアップ手順 (「APIキーの取得方法」)

ファイル添付

File Attachments

特定のノードにコンテキストファイルを添付:

  • 自動タイプ検出 — 画像、コード、ドキュメント、その他
  • ファイルタイプ別ビジュアルアイコン
  • 説明 — このファイルが重要な理由をメモ
  • 削除 — 不要な添付ファイルを削除

メタ指示

Meta Instructions

任意のノードにカスタムLLM指示を追加:

「ここではエラーハンドリングに特に注意する」 「src/auth.tsの既存の認証パターンを使用する」 「エッジケースのテストを必ず追加する」

指示は、そのノードが実行される直前にエージェントに送信されます。


分岐の検出と選択

Branch Selection

エージェントが複数のアプローチを提案した場合:

機能説明
自動検出グラフ構造から分岐を検出 (特別なマークアップ不要)
分岐点複数の出力エッジを持つノードが決定点になる
選択モーダル長所/短所を並べて比較
複雑度比較各オプションの難易度を表示
ビジュアルインジケーター選択された分岐がキャンバス上でハイライト
未選択のスキップ選択したパスのみが実行される

要件チェックリスト

Requirements Checklist

承認前に、Overtureが必要なものを表示:

  • 空の必須フィールド — ノードごとにカウント
  • 分岐選択 — 保留中の決定事項
  • 進捗インジケーター — ビジュアルな完了追跡
  • 展開可能なアイテム — クリックして詳細を表示
  • 色分け — 緑 (完了) / オレンジ (保留中)

すべての要件が満たされるまで、承認ボタンは無効のままです。


実行コントロール

Execution Controls

コントロール方法
承認ボタンをクリックまたはEnterを押す
一時停止実行中にSpacebarを押す
再開再度Spacebarを押す
ノード再実行失敗したノードをクリック → 「再実行」
ここから再実行任意のノードから最後まで再実行

承認ボタンはスマートです:

  • 🟢 「承認して実行」 — 計画準備完了、要件満たす
  • 🟠 「要件を完了」 — 条件未達成
  • 🔵 「実行中...」 — スピナー付きで実行中
  • 🟢 「完了」 — すべて完了
  • 🔴 「失敗」 — エラー発生

構造化出力

Structured Output

各ノード実行後、リッチな構造化出力を確認:

カテゴリ表示内容
概要達成されたことのサマリー
変更されたファイルパス、追加/削除行数、差分
作成されたファイル行数付きの新規ファイル
削除されたファイル削除されたファイル
インストールされたパッケージバージョン付きnpmパッケージ
MCPサーバーセットアップインストールステータス (インストール済み/設定済み/失敗)
Web検索実行されたクエリ、使用された結果
ツール呼び出し使用されたツールとその頻度
プレビューURLデプロイされたサイトやプレビューへのリンク
ノート情報、警告、エラー

各カテゴリは展開可能 — 視覚的過負荷なしに詳細を掘り下げられます。


出力モーダル

Output Modal

完了したノードをクリックして完全な出力を表示:

  • 長い出力用にスクロール可能
  • シンタックスハイライトされたコードスニペット
  • Escapeキーまたは外部クリックで閉じる

🏪 MCPマーケットプレイス

MCP Marketplace

Overture UIから直接MCPサーバーを参照して添付。

機能説明
組み込みマーケットプレイスMCPサーバーを検索・発見
サーバー詳細説明、作者、GitHubリンク、スター数
カテゴリブラウジングユースケースでフィルタリング
ノードごとの添付特定のステップに特定のツールを添付
セットアップ手順各サーバーの設定方法を確認
推奨サーバー一般的なタスク向けのキュレーションリスト

MCPサーバーをノードに添付すると、エージェントはそのステップでのみそれらのツールにアクセスできるようになります。


📂 マルチプロジェクトサポート

複数のプロジェクトで同時に作業:

機能説明
タブナビゲーションプロジェクトを即座に切り替え
自動登録最初のエージェント接触時にプロジェクトが登録される
分離された状態各プロジェクトに個別の計画、ノード、設定
未読バッジ他のプロジェクトに更新がある場合に通知
プロジェクトコンテキストプロジェクト名、パス、エージェントタイプを表示

単一プロジェクトの場合、タブバーは自動的に非表示になり、UIがすっきりします。


📜 計画履歴と永続性

作業を失わない:

機能説明
自動保存3秒ごとにプランを保存
ローカルストレージ~/.overture/history.json に保存
履歴ブラウザ過去の全プランを表示するスライドインパネル
ステータスアイコン完了、失敗、実行中、一時停止
プログレスバー完了率を視覚的に表示
ワンクリック再開任意の過去プランを読み込んで続行
完全なコンテキストすべてのフィールド値、ブランチ選択、添付ファイルを保持

再開時の情報

再開時には、完全なコンテキストが提供されます:

  • 現在のノード — 実行が停止した場所
  • 完了したノード — その出力を含む
  • 保留中のノード — 残りの作業
  • 失敗したノード — エラーメッセージを含む
  • すべての設定 — フィールド値、ブランチ、添付ファイル
  • タイムスタンプ — 作成日時、一時停止日時

✏️ 動的プラン変更

実行中でもプランを変更可能:

操作説明
ノードの挿入実行途中で新しいステップを追加
ノードの削除ステップを削除(エッジは自動再接続)
コンテンツの置換ノードのタイトル/説明をその場で更新
バッチ操作1回のリクエストで複数の変更を適用

プラン差分ビュー

プランが変更された場合、差分を正確に確認可能:

  • 追加されたノード — 緑色でハイライト
  • 削除されたノード — 赤色でハイライト
  • 変更されたノード — 黄色で変更前/変更後を比較表示
  • エッジの変更 — 追加/削除された接続

🔌 MCPツール (エージェント開発者向け)

Overtureはエージェントが対話するための11個のMCPツールを公開:

ツール目的
submit_plan完全なプランをXMLとして送信
get_approvalユーザー承認を待機(承認されるまでブロック)
update_node_status実行中にノードのステータスと出力を更新
plan_completedプランを正常完了としてマーク
plan_failedプランを失敗としてマークし、エラーメッセージを付与
check_rerunユーザーがノードの再実行を要求したか確認
check_pauseユーザーが実行を一時停止したか確認
get_resume_info一時停止したプランを再開するための完全なコンテキストを取得
request_plan_updateプランの段階的な変更をリクエスト
create_new_plan新しいプランの作成を通知
get_usage_instructionsエージェント固有の指示を取得

🔄 リアルタイムWebSocket通信

19種類のサーバー→クライアントメッセージ:

connectedplan_startednode_addededge_addedplan_readyplan_approvednode_status_updatedplan_completedplan_failedplan_pausedplan_resumednodes_insertednode_removedproject_registeredprojects_listhistory_entriesplan_loadedresume_plan_infoplan_updated

16種類のクライアント→サーバーメッセージ:

approve_plancancel_planrerun_requestpause_executionresume_executioninsert_nodesremove_noderegister_projectsubscribe_projectunsubscribe_projectget_historyload_planget_resume_infosave_planrequest_plan_updatecreate_new_plan

リレーモード

WebSocketポートが既に使用されている場合、Overtureは自動的にリレークライアントとして動作し、既存のサーバーを介してメッセージを転送します。複数のエージェントインスタンスで単一のUIを共有できます。


⚙️ 設定

変数デフォルト説明
OVERTURE_HTTP_PORT3031Web UI用のポート
OVERTURE_WS_PORT3030WebSocket用のポート
OVERTURE_AUTO_OPENtrue起動時にブラウザを自動で開く

環境変数の設定

Claude Code
claude mcp add overture-mcp -e OVERTURE_HTTP_PORT=4000 -e OVERTURE_AUTO_OPEN=false -- npx overture-mcp
Cursor / Cline / Sixth AI
{
  "mcpServers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "env": {
        "OVERTURE_HTTP_PORT": "4000",
        "OVERTURE_WS_PORT": "4001",
        "OVERTURE_AUTO_OPEN": "false"
      }
    }
  }
}
GitHub Copilot
{
  "servers": {
    "overture": {
      "command": "npx",
      "args": ["overture-mcp"],
      "env": {
        "OVERTURE_HTTP_PORT": "4000",
        "OVERTURE_WS_PORT": "4001",
        "OVERTURE_AUTO_OPEN": "false"
      }
    }
  }
}

⌨️ キーボードショートカット

キーアクション
Enterプランを承認(準備完了時)
Space実行の一時停止 / 再開
Escape現在のノードの選択解除 / モーダルを閉じる

🤝 サポート対象エージェント

エージェントステータス備考
Claude Code✅ 完全ネイティブMCPサポート
Cursor✅ 完全mcp.json設定経由
Cline✅ 完全VS Code設定経由
GitHub Copilot✅ 完全VS Code 1.99以上が必要
Sixth AI✅ 完全ビルトイン、ゼロ設定

各エージェントには、最適なプラン生成のためのカスタマイズされたプロンプトが用意されています。


💪 なぜOvertureか?

ユーザーにとって

  • 透明性 — コードが書かれる前に何が起こるかを正確に把握
  • 制御 — 任意のプランを承認、拒否、または変更
  • コンテキスト — 適切なステップにファイルと指示を添付
  • 選択 — アプローチを比較し、進むべき道を選択
  • 可視性 — リッチな出力でリアルタイムの進捗を表示
  • 安全性 — いつでも一時停止、再開、再実行が可能
  • 履歴 — 過去のプランを即座に再開
  • 効率性 — 拒否されたアプローチにトークンを浪費しない

AIコーディングにとって

  • 信頼 — エージェントを予測可能かつ制御可能に
  • 解釈可能性 — 実行前にAIの推論を確認
  • 普遍性 — 任意のMCP互換エージェントで動作
  • 拡張性 — ツール発見のためのMCPマーケットプレイス
  • オープンソース — MITライセンス、コミュニティ主導
  • 自己完結型 — クラウド依存なし
  • オフライン動作 — 完全にローカルで実行
  • マルチプロジェクト — 複数のワークスペースを管理

🧑‍💻 開発

# Clone the repo
git clone https://github.com/SixHq/Overture.git
cd Overture

# Install dependencies
npm install

# Build all packages
npm run build

# Start MCP server (in one terminal)
cd packages/mcp-server && npm start

# Start UI dev server (in another terminal)
cd packages/ui && npm run dev

技術スタック

レイヤーテクノロジー
MCPサーバーNode.js, TypeScript, Express, WebSocket (ws), SAX XMLパーサー
UIReact 18, React Flow, Zustand, Framer Motion, Tailwind CSS, Vite
レイアウトDagre (自動グラフ配置)

🤝 コントリビューション

Overtureはオープンソースであり、コントリビューションを歓迎します!

大小問わず、すべてのコントリビューションに感謝します。


📄 ライセンス

MITライセンス - 詳細は LICENSE を参照。



Sixth

Built by Sixth

最高の体験のために、Sixth for VS Code
をお試しください。 Overtureはゼロ設定でビルトインされています。

Stop flying blind. See the plan. Approve it. Execute with confidence.

スター履歴

Star History Chart