ExecBro について
ExecBro は、実行中の React Native アプリのログやネットワーク通信を読み取り、コンポーネントの状態を確認し、スクリーンショット取得や UI 操作を行える MCP サーバーです。React Native の機能をデバッグ・検証する開発者を想定しています。コード変更なしで始められ、任意の SDK を入れると起動時からの取得が強化されます。
主な機能
- 01コンソールログとネットワークリクエストの取得
- 02Redux や Apollo などのグローバル状態の確認
- 03スクリーンショット取得、タップ、スワイプ、テキスト入力
- 04タップした要素のソースファイルと行の特定
- 05エラー経路を試すためのレスポンスのモック
- 06ツール出力における認証情報の秘匿
活用シーン
- 01画面に表示されたエラーの原因調査
- 02シミュレーターでの新機能のエンドツーエンド検証
- 03iOS と Android のログやトラフィックの比較
MCP 対応
ExecBro は、ログ取得、状態確認、スクリーンショット、デバイス操作などのツールを MCP クライアントに公開する MCP サーバーです。Claude Code には npx を使った単一のコマンドで追加でき、別途インストールは不要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
67掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| token | string | はい | ダッシュボードのアクティベーショントークン |
詳細
ExecBro
実行中の React Native アプリを、AI アシスタントが見て操作できるようにします。 Chrome DevTools のような機能を、AI エージェント向けに提供します。
チャットを離れることなく、機能の構築、デバッグ、エンドツーエンドの検証を行えます。
ExecBro は、AI コーディングアシスタントと実行中の React Native アプリをつなぐランタイムブリッジです。ログやネットワークの読み取り、コンポーネントの状態の確認、スクリーンショットの撮影、UI のタップ、JS の実行を行う MCP ツールを提供します。設定は不要で、すぐに使い始める際に SDK の導入やコードの変更も必要ありません。最も堅牢なログとネットワークの取得には、オプションの SDK のインストールをおすすめします。
はじめに
- 任意のエージェント向けに ExecBro を MCP サーバーとしてセットアップします
- UI 自動化ヘルパーをセットアップします
- React Native アプリに SDK をインストールします — 任意ですが、ログ、ネットワーク、状態を最も確実に取得するためにおすすめします
- 認証して Web ダッシュボードにリンクします — 任意です。利用状況の統計とセッション履歴を確認できます
- React Native アプリを起動します(
npm start/expo start) - 平易な言葉でAI アシスタントに依頼します。たとえば、「シミュレーターに接続して、画面のエラーの原因を調べて」
利用状況を確認 — execbro.com
execbro.com にログインすると、ExecBro のアクティビティが表示されます。最もよく使うツール、ツールのエラー率、セッション履歴を確認できるため、不安定なツールを見つけたり、利用状況の推移を追跡したり、セッションをまたいでエージェントがアプリをどのように操作しているかを把握したりできます。これは、テレメトリーとプライバシーで説明しているものと同じ匿名テレメトリーをもとに作成され、インストール ID に紐づけられます。
リンクはダッシュボードでの表示にのみ使用されます。インストール情報をアカウントに紐づけて、統計を自分のものとして確認できるようにします。ツールの利用にリンクは必要ありません。
機能
ランタイムとのやり取り
- コンソールログのキャプチャ - フィルタリングと検索機能を使って、
console.log、warn、error、info、debugをキャプチャします。注:コールドスタート時(アプリの初回起動時)は、MCP サーバーが接続する前に出力されたログは取得できません。以降の再読み込みではすべてキャプチャされます。アプリの起動直後からログをバッファリングするには、オプションのSDKをインストールしてください - ネットワークリクエストの追跡 - ヘッダー、タイミング、本文の内容を含むHTTPリクエスト/レスポンスを監視します。ログと同様、コールドスタート時に接続が確立する前に行われたネットワークリクエストは取得できない場合があります。リクエスト/レスポンスの本文を含め、アプリの起動時からすべてをキャプチャするには、オプションのSDKをインストールしてください
- レスポンスのモック - HTTPレスポンスを置き換えたり改変したりして、状態を直接書き換えて偽装するのではなく、リクエストの構築、エラー分岐、リトライといった、アプリの実際のコードを通じてエラーパスに到達させます。オフライン状態をシミュレートしたり、レスポンスを遅延させたり、リトライをテストするために最初の試行だけ失敗させたり、キャプチャしたリクエストの1つのフィールドを変更して再送信したりできます。ルールは再読み込み後も保持され、改変された通信には常にタグが付けられます。モックのチュートリアルをご覧ください
- JavaScript の実行 - アプリ内でコードを直接実行し(REPL形式)、結果を確認します
- グローバル状態のデバッグ - Apollo Client、Redux ストア、Expo Router、カスタムグローバルを検出して調査します。オプションのSDKを使ってストアやその他のアプリ内部情報をエージェントに直接連携し、状態に確実にアクセスできるようにします
- バンドルエラーの検出 - Metro バンドラーのエラーやコンパイルの問題を、ファイルの場所とともに取得します
- タップしてソースを表示 - RN の要素インスペクターで任意の要素をポイントすると、Metro のシンボリケーションを通じてReactのファイバーの
_debugStackから解決された、描画元の絶対パスと行番号が表示されます。_debugSourceが存在しなくなったReact 19でも動作します。選択内容はバックグラウンドでバッファリングされるため、手動でインスペクターを使用している間にタップした要素も、事前にエージェントへ依頼することなくキャプチャされます
デバイス制御
- iOS Simulator - スクリーンショット、アプリ管理、URL 処理、起動/終了(simctl 経由)
- Android Devices - スクリーンショット、アプリのインストール/起動、パッケージ管理(ADB 経由)
- 統合タップ - 自動フォールバックチェーン(fiber ツリー → アクセシビリティ → OCR → 座標)を備えた単一の
tapツールです。プラットフォームを自動検出し、スクリーンショットやレイアウトツールの座標をそのまま受け付けます。タップ後のスクリーンショットを返し、デフォルトで視覚的な変化を検証します - 統合スワイプ - 接続されたデバイスに応じて iOS または Android に自動ルーティングする単一の
swipeツールです。レイアウトツールやスクリーンショットと同じ画面座標を使うため、変換は不要です。verification.meaningfulシグナルを返すことで、エージェントはリストの末端、スクロールできない画面、座標の指定ミスを検出できます。また、React Native 接続のない画面では、推測せずに検査できなかったことを伝えます。仮想化リスト(FlatList/SectionList)の画面外の項目は fiber ツリーに含まれないため、スクロールには欠かせません - 実際のマルチタッチピンチ (Android エミュレーターのみ — iOS は開発中) - Android エミュレーターのマルチタッチブリッジ経由で、カーネルの実際のタッチ接点を2つ送信する
pinchツールです。アプリを介さずに動作するため、地図、ギャラリー、WebView、ネイティブビューのいずれもズームできます。swipeと同じverification.meaningfulシグナルを返し、サポートされていない対象では結果を偽装せずに処理を拒否します - UI 自動化 - 両方のプラットフォームで、スワイプ、長押し(
durationを指定したtapで、testID/テキスト/コンポーネントから対象を解決)、キーイベント、テキスト入力を行います。input_textはフィールド自体を対象にし、入力後に読み戻して書き込みを検証します。Bridgeless/Fabric アプリでreplace:trueを指定すると、onChangeTextを介して React の状態を更新して事前入力値を上書きするため、制御コンポーネント(Formik、react-hook-form、useState)との整合性が保たれます。native:trueは RN 接続がなくても、OS がフォーカス中と認識している対象に入力します。dismiss_keyboardも同様に動作します - アクセシビリティ検査 - UI 階層を検索し、テキスト、ラベル、リソース ID で要素を見つけます
- OCR テキスト抽出 - Google Cloud Vision を使い、タップ可能な座標とともに画面上のテキストを抽出します(あらゆる画面コンテンツで動作)
認証情報の安全性
- シークレットがトランスクリプトに含まれることはありません - すべてのツールの出力は、単一の編集ポイントを経由するため、ネットワークヘッダー、Redux ストア、ログ行、URL のいずれに現れても、トークンはハンドル(
[secret:auth_api.acme.io])に置き換えられます。認証情報ヘッダーは固定リストではなくパターンで照合されるため、ベンダー名前空間付きのヘッダー(x-shopify-access-token、x-goog-api-key、x-hasura-admin-secret)も対象になります。一方、x-request-idとx-idempotency-keyは意図的に対象外です。呼び出しごとに無効化する方法はありません。EXECBRO_REDACT=offは人が設定するもので、再起動が必要です - 読み取らずに認証情報を使う -
list_secretsはハンドル名を一覧表示します。http_request({auth:{secret:"api.acme.io"}})はホスト側で値を置換し、マシンからリクエストを送信します。デフォルトではAuthorization: Bearerとして送信し、キー用ヘッダーや別の方式も指定できるため、対応していない形式を補うために認証情報を貼り付ける必要はありません。また、捕捉したリクエストからトークンが見つからない場合は、vault_captureがアプリからトークンを読み取って、そのまま保管庫に格納します。各認証情報は観測されたオリジンに紐付けられ、それ以外では使用を拒否されます。保管庫はメモリ上にのみ存在します - サーバー側とクライアント側を分離 -
http_requestはアプリの TLS 信頼設定、プロキシ、Cookie jar、モックルールを一切使わず、ホストから実行します。app_requestはそれらすべてを使ってアプリ内で実行します。両者を比較することで、バックエンドの不具合かクライアント側の不具合かを判別できます。アプリでは成功する一方、ホストからのリクエストが 401 になる場合、それ自体がバックエンドでアテステーションが強制されていることを示す答えになります - アプリデータはデータとして扱われます - サーバーは、ログ、ペイロード、コンポーネントツリー、評価結果がアプリの通信先によって形作られること、また、それらを指示として決して扱ってはならないことを、接続するすべてのエージェントに伝えます
複数デバイスのデバッグ
- すべてのデバイスに接続 -
scan_metroは各 Metro ポート上のすべての Bridgeless ターゲットを自動的に検出して接続します - デバイスの指定 - すべてのツールで省略可能な
deviceパラメーターを使用し、名前の大文字と小文字を区別しない部分一致で特定のデバイスを指定できます - デバイスごとのバッファー - ログとネットワークリクエストはデバイスごとに個別に記録されるため、すっきりとデバッグできます
- クロスプラットフォーム比較 - iOS と Android を並べてデバッグし、ログ、ネットワークトラフィック、コンポーネントツリーを比較できます
Electron と Chromium(実験的)
-
CDP 経由でデスクトップ React アプリに接続 - Electron ウィンドウまたは Chrome タブは、シミュレーターと並ぶ
chromiumターゲットとして接続され、すべてのツールで同じdevice引数を使用します -
現在利用できる機能 - コンソールログ、ネットワークのキャプチャ、再生、モック(
network_mock、network_condition)、execute_in_app、デバッグ用グローバル、Redux、http_request/app_request、React コンポーネントのインスペクション(get_component_tree、find_components、inspect_component)。DevTools フックにレンダラーがない Vite アプリでも利用できます。また、screenshot、tap、input_text、swipe(マウスホイールによるスクロール、および 4 つの座標を指定する実際のドラッグ)、press_key(Enter、Escape、Tab、矢印キー、ショートカット)にも対応しています。JavaScript ダイアログ(alert/confirm/prompt/beforeunload)はタイムアウトせず、開いたツールから報告されます。開いている間はページ操作ツールの実行が拒否され、handle_dialogでダイアログを処理または閉じることができます。タップではdata-testid/id、表示テキスト、React コンポーネント名で要素を見つけ、実際の CDP マウスイベントでクリックします。スクリーンショットを使わずに画面を読み取る機能:get_screen_state(タップ可能な要素、オーバーレイに隠れている部分)、get_screen_layout、inspect_at_point、measure -
未対応の機能 -
pinch、navigateおよびその他のモバイル専用ツールは、対応していないことを示すメッセージを返して実行を拒否し、誤ったデバイスに対して動作することはありません。ネイティブの HTML5 ドラッグ&ドロップ(draggable)とホバーにはまだ対応していません -
設定なしで起動 -
electron_launch_app({ projectPath: "path/to/app" })は、Electron プロジェクトをソースフォルダーからデバッグポートを開いた状態で起動し、ウィンドウに接続します。パッケージ化されたビルドではなく、プロジェクト独自のelectronまたはelectron-viteを実行します -
またはオプトイン - Electron のメインプロセスに開発時のみ使用する1行を追加してから、
scan_metroを実行します。9222 ポートは一覧に表示されますが、自動接続されません。接続するとページにネットワークインターセプターが挿入されるためです。connect_metro({ port: 9222, device: "<window title>" })で接続するか、EXECBRO_CHROMIUM_PORTS=9222を設定して自動接続しますif (!app.isPackaged) app.commandLine.appendSwitch('remote-debugging-port', '9222')!app.isPackagedのガードを維持してください。パッケージ化されたビルドでデバッグポートを開くと、そのポートに到達できるあらゆるものがレンダラーでコードを実行できてしまいます
ネイティブ Android(プレビュー)
- JavaScript ランタイムを使わない Kotlin アプリ - デバッグビルドに
execbro-sdk-androidを含めたネイティブアプリは、名前付きの状態とコマンドを登録します。scan_metroは adb 経由でアプリを検出し、list_debug_globalsとinspect_globalで状態を読み取り、run_app_commandでコマンドを実行し、navigateで Jetpack Navigation を操作し、screenshotで画面をキャプチャします - 近日公開 - SDK はまだ Maven に公開されていません。Execbro はすでに対応済みで、SDK のリリースに合わせてインストール手順を公開します
内部の仕組み
- 自動検出 - 8081~8090 ポートの Metro を自動的にスキャンし、9222 ポート(および
EXECBRO_CHROMIUM_PORTSに指定されたポート)の Chromium / Electron ターゲットを一覧表示します - 複数デバイス対応 - すべての Bridgeless ターゲットに同時接続し、デバイスごとにログとネットワークのバッファーを保持します
- 自動再接続 - 接続が切れた場合、指数バックオフを使って最大 8 回まで再試行します
- 効率的なバッファリング - 循環バッファー:ログ 500 件、ネットワークリクエスト 200 件、インスペクターの選択項目 100 件
- プラットフォーム対応 - Expo SDK 54 以降(Bridgeless)および React Native 0.70 以降(Hermes)
セットアップ
1つのコマンドで ExecBro を Claude Code に追加できます。インストールは不要で、npx が必要に応じて最新バージョンを取得します。
claude mcp add execbro --scope project -- npx -y execbro@latest
新しいサーバーを読み込ませるため、クライアントを完全に再起動してください(終了してから再起動します)。
プロジェクトスコープでは .mcp.json が作成され、コミットできます。そのため、チーム全体でこのリポジトリだけで ExecBro を利用でき、ほかの場所には影響しません。代わりに project を user に変更すると、グローバルに登録できます。React Native を日常的に使用する場合は便利ですが、Metro サーバーに接続する必要がないリポジトリを含め、開くすべてのセッションで ExecBro が起動します。
別のクライアントを使用する場合、またはプラットフォームのセットアップが必要な場合は、セットアップガイド全文をご覧ください。Claude Desktop、Codex CLI、Cursor、VS Code Copilot、Windsurf、Zed、Gemini CLI のほか、Android と iOS シミュレーターの UI オートメーションの要件も記載しています。
SDK をインストールする(推奨)
ExecBro はアプリを変更せずに使えますが、付属の execbro-sdk パッケージをインストールすると、デバッグの品質を大幅に向上できます。アプリの重要な部分である状態ストアとネットワーク層をエージェントから直接利用できるように接続できます。これにより、AI は外部から推測するのではなく、実際の Redux/TanStack Query の状態と、完全なリクエスト/レスポンス本文を調査できます。
| SDK なし | SDK あり | |
|---|---|---|
| 状態ストア(Redux、TanStack Query、…) | execute_in_app 経由で手動 | 接続済み — 直接参照可能 |
| リクエスト/レスポンス本文 | 利用不可 | 完全(GraphQL を含む) |
| 起動時のネットワークリクエスト(認証、設定) | 取得できない | 最初のフェッチから取得 |
| 起動時のコンソールログ | 初期ログを見逃す場合あり | 最初のログから取得 |
| Bridgeless での動作(Expo SDK 52 以降) | 一部対応 | 完全対応 |
必要なのは npm install と、アプリのエントリーファイルでの init() 呼び出しだけです。インストール、初期化、すべての設定オプションについては、SDK ガイドをご覧ください。
要件
- Node.js 20.9 以降
- Metro バンドラーを実行している React Native アプリ
- 推奨:アプリに
execbro-sdkを導入すると、状態ストアとネットワーク層がエージェントに接続され、デバッグの品質が大幅に向上します(任意。ExecBro はなくても動作します) - iOS UI オートメーション:AXe CLI(
brew install cameroncooke/axe/axe、デフォルト)または Facebook IDB(brew install idb-companion、IOS_DRIVER=idbで有効化)が必要です。iOS シミュレーターでのタップ、スワイプ、テキスト入力、アクセシビリティに使用します - オフライン OCR フォールバックを使用する場合(任意):Python 3.6 以降(クラウド OCR を利用できない場合のみ必要です。詳しくはOCR ガイドをご覧ください)
Claude Code スキル
よくあるデバッグワークフロー(セッションのセットアップ、ログの調査、ネットワークのデバッグなど)向けに、すぐ使えるスキルを用意しています。一覧とインストール手順については、スキルガイドをご覧ください。
利用可能なツール
説明付きのすべてのツールについては、ツールのリファレンス全文をご覧ください。主なツール:
| ツール | 説明 |
|---|---|
scan_metro | まずはこちら — Metro サーバーをスキャンして自動接続します |
get_logs / search_logs | フィルタリングと要約を使ってコンソールログを取得、検索します |
get_network_requests | メソッドやステータスでフィルタリングして HTTP リクエストを監視します |
get_screen_state | 画面のスナップショット — 現在のルート、オーバーレイ、タップ可能な (x, y) を備えたすべての要素 |
get_screen_layout | 表示中のコンポーネントの位置、サイズ、テキスト内容を示す画面マップ |
tap | 統合タップ — プラットフォームを自動検出し、fiber → アクセシビリティ → OCR → 座標の順に試します |
pinch | 実際の2本指ピンチズーム — Android エミュレーターのみ(iOS は対応作業中) |
input_text | テキストを入力します — フィールド自体を指定してフォーカスするか、フォーカス中のフィールドには native:true を使います。replace:true を指定すると先にクリアします(Fabric) |
dismiss_keyboard | フォーカス中の入力欄からフォーカスを外し、画面上のキーボードを閉じます |
execute_in_app | アプリのランタイムで JS 式を実行します(REPL 形式) |
screenshot | iOS シミュレーター、Android、Electron、Chrome、および USB 接続された実機の iPhone/iPad(キャプチャのみ)でスクリーンショットを撮影します |
使い方
-
React Native アプリを起動します:
npm start # or expo start -
希望することを自然な言葉で説明するだけで、エージェントが適切なツールを選びます。ツール名を知ったり、特定のツールを指定したりする必要はありません。たとえば:
シミュレーターに接続して、画面のエラーの原因を調べてくださいネットワークログを確認して、このエラーが発生している理由を調べてください現在の画面が空なのはなぜですか?確認して原因を突き止めてください「Sign in」ボタンをタップして、何が起きるか教えてくださいリストをスクロールできません — 下にスクロールして、何が起きているか確認してくださいこのボタンの見た目がおかしいのはなぜですか?どのコンポーネントが描画していて、どこにありますか?エージェントは Metro に接続し、ログとネットワークを確認して画面を調べ、回答に必要に応じて UI を操作します。
詳細ガイド
| ガイド | 説明 |
|---|---|
| セットアップ | クライアントごとの MCP 設定(Claude、Codex、Cursor、VS Code、…)、Android と iOS のセットアップ |
| SDK のセットアップ | アプリ内 SDK をインストールして init() を実行し、ストアとネットワーク層をエージェントに接続します |
| コンソールログ | get_logs のパラメーター、フィルタリング、サマリーモード、トークンの最適化 |
| ネットワーク追跡 | 完全なキャプチャに向けた SDK のセットアップ、フィルタリング、リクエストの詳細、統計 |
| ネットワークのモック | チュートリアル:500 エラーの強制、フィールドの削除、再試行のテスト、オフライン化、リクエストの再生 |
| アプリのインスペクション | デバッグ用グローバル(Apollo、Redux、Expo Router)、execute_in_app、制限事項 |
| レイアウトとコンポーネントのインスペクション | get_screen_layout、コンポーネントツリー、inspect_at_point、find_components |
| デバイス操作 | 統一された tap、プラットフォーム固有のジェスチャー、テキスト入力、キーイベント |
| OCR テキスト抽出 | tap 内での Cloud Vision OCR、オフライン時のフォールバック、言語設定 |
| Claude Code スキル | セッションのセットアップ、デバッグ、自動化向けの組み込みスキル |
| 全ツールのリファレンス | 62 個すべてのツールの説明付き一覧 |
仕組み
- Metro の
/jsonエンドポイントからデバイス一覧を取得します - CDP(Chrome DevTools Protocol)WebSocket 経由でメインの JS ランタイムに接続します
Runtime.enableを有効にして、Runtime.consoleAPICalledイベントを受信します- ネットワークのキャプチャは次の 2 つの方法で行います。
- SDK あり:
Runtime.evaluate経由で SDK のアプリ内バッファーから読み取ります。起動時からのすべてのリクエストを、ヘッダーと本文を含めてキャプチャします。CDP では捕捉できないコールドスタート時のイベントも含まれます。 - SDK なし:サポートされているターゲットでは CDP の
Network.enableを有効にし、フォールバックとして JS の fetch インターセプターを挿入します。コールドスタート時は、CDP 接続が確立される前に発生したイベントが失われますが、その後の再読み込みではすべてキャプチャされます。
- SDK あり:
- レスポンスのモックは、同じ挿入済みインターセプターで実行されます。ルールはリクエストがネットワークに送信される前に照合され、再読み込み後も維持されるよう、新しい JS コンテキストが作成されるたびに再設定されます。
- ログとネットワークリクエストを循環バッファーに保存し、取得できるようにします
接続管理
- セッションごとにサーバーを 1 つ — 各エージェントセッション(各ターミナルまたは IDE ウィンドウ)で、それぞれ独自の ExecBro MCP サーバーインスタンスを実行します。
- 起動時ではなく、リクエスト時に接続 — サーバーが自動接続することはありません。
scan_metroなどで接続を指示したときにのみ、実行中の React Native アプリに接続するため、デバイスが必要になるまで邪魔になりません。 - デバイスごとにドライバーは 1 つ — 同じプロジェクト内の 2 つ以上のセッションが同じ Metro/デバイスを指定すると、ハンドルが 2 つある車のように、制御権を奪い合うことになります。デバイスごとの操作は 1 つのセッションに限定してください。
- セッションを並行して実行するには、それぞれにデバイスとポートを割り当てます — git worktree で別々の作業領域を用意し、それぞれ独自の Metro インスタンスを異なるポートで実行して、2 台目のデバイス(シミュレーター/エミュレーター)を接続します。たとえば、
mainはデフォルトの8081のままにし、worktree の Metro を8082(npx react-native start --port 8082またはnpx expo start --port 8082)で起動してから、その worktree のアプリを8082に接続するよう起動します。各エージェントセッションはそれぞれのデバイスに対してscan_metroを実行し、操作するため、接続を奪い合うことはありません。
トラブルシューティング
デバイスが見つからない
- アプリがシミュレーター/デバイスで実行されていることを確認してください
- Metro バンドラーが実行中か確認してください(
npm start)
ログが表示されない
- アプリが実際に実行中であることを確認してください(Metro だけでは不十分です)
clear_logsを実行してから、アプリで操作を行ってみてくださいget_appsを確認して、接続状態を検証してください- コールドスタート時(初回起動時): CDP 接続は、アプリの初期化コードがすでに実行された後に確立されるため、起動ログとネットワークリクエストは取得できません。接続後に
reload_appを使用すると、接続が確立済みの状態で再読み込みされるため、その後の再読み込みではすべての情報を最初から取得できます。起動のたびに起動イベントを取得するには、オプションの SDK をインストールしてください
テレメトリーとプライバシー
ソースコード、ファイルパス、アプリのコンテンツが送信されることはありません。 アプリもリポジトリも、お使いのマシンから外部に送信されません。
ExecBro は 2 つの小さなシグナルを送信します。
- プロダクト分析(任意) — ツール名、成功/失敗、所要時間です。これにより 使用状況ダッシュボード が利用でき、どのツールが不安定で、修正する価値があるかを把握できます。MCP サーバー設定の
EXECBRO_TELEMETRY=falseで、いつでも無効にできます。 - 使用回数 — ツールを呼び出した回数の累計です。これはコンテンツではなく数値であり、分析機能を無効にした後も送信される唯一のシグナルです。
フィールドごとの詳しい説明は テレメトリーとデータ収集ガイド を、プライバシーポリシー全文は PRIVACY.md をご覧ください。
対応する React Native のバージョン
| バージョン | アーキテクチャ | エンジン | ステータス |
|---|---|---|---|
| Expo SDK 54+ | Bridgeless(New Arch) | Hermes | ✓ 完全対応 |
| RN 0.76+ | Bridgeless(New Arch) | Hermes | ✓ 完全対応 |
| RN 0.73 - 0.75 | Bridge(Old Arch) | Hermes | ✓ 完全対応(CDP によるネットワーク取得が最適) |
| RN 0.70 - 0.72 | Bridge(Old Arch) | Hermes / JSC | ✓ 対応 |
| RN < 0.70 | Bridge | JSC | 未テスト |
料金
ExecBro は無料です。すべてのツールを上限なく、アカウント登録も不要で利用できます。アカウントの連携 は任意で、使用状況ダッシュボードを利用できるようになるだけです。
フィードバックと機能リクエスト
ツールの改善に役立てるため、セッションの最後にこれを実行してください。 ExecBro は AI エージェント向けに構築されているため、最も価値のあるフィードバックはエージェント自身から得られます。次のプロンプトをエージェントに貼り付けてください。
ExecBro のツールを使った感想について、苦労した点や改善できる点をまとめてください。Markdown ファイルとして保存した後、
send_feedbackツール(種類は"feedback")を使って送信し、GitHub issue として登録してください。
所要時間は 30 秒です。エージェントが send_feedback を実行し、必要事項があらかじめ入力された GitHub issue の URL を提示します(環境情報はすでに添付されています)。あとはクリックして送信するだけです。GitHub の設定も、コピー&ペーストも必要ありません。実際のセッションで発生した問題の記録がロードマップを形作り、優先的に修正されるので、ぜひお送りください。🙏 ちょっとしたアイデアや質問がある場合は、GitHub Discussions に参加して、フィードバックや機能リクエストを共有したり、次に開発してほしいものに投票したりしてください。
パッケージ名と最新状態の維持
npm パッケージ execbro として公開されています。以前は react-native-ai-devtools、さらにその前は react-native-ai-debugger という名前で公開されていました。どちらの旧名にもミラー公開によって同じビルドが引き続き提供されるため、既存のインストールや MCP の設定は変更せずに引き続き動作します。新規インストールには execbro を使用してください。
重要
すでに ExecBro をお使いですか?
npxはパッケージを無期限にキャッシュするため、気づかないうちに古いバージョンを使い続けている可能性があります。MCP の設定をnpx -y execbro@latestに更新して(セットアップを参照)、新しいツールやバグ修正が含まれた最新リリースを毎回のセッションで取得してください。この変更後に新規インストールした場合は、自動的に最新バージョンに更新されます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。