候鳥ブラウザ Rules ナレッジパック
これは、このセクションで最も重要なコンテンツです。以下の Rules ナレッジパックを Cursor や Antigravity に注入することで、AI モデルはMbbrowser ApiServer の全エンドポイント、エラーコード、付録パラメータを完全に把握します。これにより、AI がコードを「捏造」することを防ぎます。
IMPORTANT
自動化実行時の重要アドバイス: 自動化スクリプトを実行する際は、Mbbrowser クライアントの設定で実行モードを 「ローカルモード(本地模式)」 に切り替えてください。
- パフォーマンス向上: ローカルモードではクラウドとのデータ同期が行われないため、環境の起動速度が 数十倍 高速化します。
- 安全上の注意: 日常的なローカルデータのバックアップを習慣づけてください。業務データは
MBDATAフォルダに保存されているため、定期的に外部ストレージ等へコピーしてください。
使用方法
Cursor ユーザーの場合
- あなたの自動化プロジェクトのルートディレクトリに、以下のファイルを作成します:
.cursor/rules/mbbrowser.mdc - 下記の「候鳥 ApiServer 完全 Rules パック」の内容をすべてコピー&ペーストして保存します。
- Cursor のチャットを再起動(または新規チャットを開始)します。
- これで、AI は常にこの仕様に基づいた回答を行うようになります。
Antigravity ユーザーの場合
Antigravity には独自のルール体系があり、プロジェクト内の .agent/rules/ フォルダを使用します。
- プロジェクトルートに .agent/rules/ フォルダを作成します。
- その中に mbbrowser.md というファイルを作成します(拡張子は .md、純粋な Markdown 形式)。
- 候鳥の API 特有の仕様、インターフェース詳細、コードテンプレート等をコピー&ペーストして保存します。
- Antigravity を再起動すると、これらのルールが自動的にシステムプロンプトに注入されます。
候鳥 ApiServer 完全 Rules ナレッジパック
以下の内容をすべてコピーし、上記のファイルに貼り付けてください。
markdown
# 候鳥ブラウザ (MBBrowser) + ApiServer 開発ガイドライン
## 1. 製品概要
> [!IMPORTANT]
> **高速化の秘訣**: 大規模な自動化を行う前に、クライアントを **「ローカルモード」** に設定してください。クラウド同期をスキップすることで、起動速度が劇的に向上します。
Mbbrowser は、マルチアカウントの環境隔離管理に特化した指紋防关联ブラウザです。
各「環境」(Session)は独立したブラウザ指紋、プロキシ IP、Cookie、User-Agent、タイムゾーン、言語を保持します。
ApiServer(apiserver.exe)は、これらの環境をスクリプトから制御するためのローカル HTTP API サービスです。
## 2. 通信仕様
- **Base URL**: http://127.0.0.1:8186 (デフォルトポート)
- **Method**: すべて HTTP POST
- **Content-Type**: application/json
- **Response**: 成功時は `code: 0`。失敗時は負のコードと `message` を返します。
## 3. 主要エンドポイント
### 3.1 環境の起動 (Start Browser)
POST `/api/v1/browser/start`
- **Session_ID**: (Array) 起動する環境 ID の配列
- **isHeadless**: (Boolean) ブラウザを表示するか否か
### 3.2 環境の停止 (Stop Browser)
POST `/api/v1/browser/stop`
- **Session_ID**: (String) 停止する環境 ID
### 3.3 環境リストの取得
POST `/api/v1/session/listid`
- 最近更新された 50 件の ID を返します(フィルタリング可)。
## 4. 各フレームワークでの CDP 接続例
### Python Playwright
```python
# browser_CDP_Port をレスポンスから取得
ws_endpoint = f"ws://127.0.0.1:{port}/json/version"
browser = playwright.chromium.connect_over_cdp(ws_endpoint)
context = browser.contexts[0] # すでに存在するコンテキストを取得すること
```
### Python Selenium
```python
# debuggerAddress を使用 (ws:// は不要)
options.add_experimental_option("debuggerAddress", f"127.0.0.1:{port}")
driver = webdriver.Chrome(service=service, options=options)
```
## 5. エラーコード対応表
- `0`: 成功
- `-1`: 認証失敗(App_ID / KEY 不正)
- `-105`: 代理 IP の認証または接続に失敗
- `-7`: 環境はすでに起動中です(※注:完全版ではさらに詳細な API リストが含まれますが、ここでは概要を記載しています)
