設定

毎回のコマンドでフラグを繰り返し指定する代わりに、永続的なデフォルト値を設定するために agent-browser.json ファイルを作成してください。

設定ファイルの場所

agent-browser は2つの場所をチェックし、優先度順にマージします:

優先度場所スコープ
1(最低)~/.agent-browser/config.jsonユーザー単位のデフォルト値
2./agent-browser.jsonプロジェクト単位の上書き設定
3AGENT_BROWSER_* 環境変数設定値の上書き
4(最高)CLIフラグすべてを上書き

プロジェクト単位の値がユーザー単位の値を上書きします。環境変数が両方を上書きします。CLIフラグは常に優先されます。

デフォルトの場所ではなく、特定の設定ファイルを読み込むには --config <path> オプションまたは AGENT_BROWSER_CONFIG 環境変数を使用してください:

agent-browser --config ./ci-config.json open example.com
AGENT_BROWSER_CONFIG=./ci-config.json agent-browser open example.com

例:設定ファイル

{
  "headed": true,
  "proxy": "http://localhost:8080",
  "profile": "./browser-data",
  "userAgent": "my-agent/1.0",
  "ignoreHttpsErrors": true
}

全てのオプション

すべての CLI フラグは、そのケメルケース形式を使って設定ファイルで指定できます:

設定キーCLIフラグ
headed--headedboolean
json--jsonboolean
full--full, -fboolean
debug--debugboolean
session--sessionstring
sessionName--session-namestring
executablePath--executable-pathstring
extensions--extensionstring[]
profile--profilestring
state--statestring
proxy--proxystring
proxyBypass--proxy-bypassstring
args--argsstring
userAgent--user-agentstring
provider-p, --providerstring
device--devicestring
ignoreHttpsErrors--ignore-https-errorsboolean
allowFileAccess--allow-file-accessboolean
cdp--cdpstring
autoConnect--auto-connectboolean
colorScheme--color-schemestring (dark, light, no-preference)
downloadPath--download-pathstring
contentBoundaries--content-boundariesboolean
maxOutput--max-outputnumber
allowedDomains--allowed-domainsstring[]
actionPolicy--action-policystring
confirmActions--confirm-actionsstring
confirmInteractive--confirm-interactiveboolean
engine--enginestring (chrome, lightpanda)
native--nativeboolean (実験的)
headers--headersstring (JSON)

一般的な設定例

ローカル開発

{
  "headed": true,
  "profile": "./browser-data"
}

プロキシの背後にある状況

{
  "proxy": "http://proxy.corp.example.com:8080",
  "proxyBypass": "localhost,*.internal.com",
  "ignoreHttpsErrors": true
}

CI / Devcontainer

{
  "args": "--no-sandbox,--disable-gpu",
  "ignoreHttpsErrors": true
}

iOSテスト

{
  "provider": "ios",
  "device": "iPhone 16 Pro"
}

AIエージェントのセキュリティ

{
  "contentBoundaries": true,
  "maxOutput": 50000,
  "allowedDomains": ["your-app.com", "*.your-app.com"],
  "actionPolicy": "./policy.json"
}

ブール型オプションの上書き

ブール型のフラグは、オプションで true/false 値を指定することで設定値を上書きできます:

agent-browser --headed false open example.com

フラグをそのまま使用した場合(裸のフラグ)は、true を指定したのと同じです:

agent-browser --headed open example.com       # --headed true と同じ
agent-browser --headed true open example.com  # 明示的

このルールはすべてのブール型フラグに適用されます:--headed, --debug, --json, --ignore-https-errors, --allow-file-access, --auto-connect, --content-boundaries, --confirm-interactive, --native

拡張機能のマージ

ユーザーレベルとプロジェクトレベルの設定から得られる拡張機能は、置換ではなく連結されます。たとえば、~/.agent-browser/config.json["/ext1"] と指定し、./agent-browser.json["/ext2"] と指定している場合、結果は ["/ext1", "/ext2"] になります。

AGENT_BROWSER_EXTENSIONS 環境変数および CLI の --extension フラグは、標準の優先度ルールに従います(環境変数が設定を上書きし、CLI は末尾に追加)。

環境変数

これらの環境変数は、追加のデーモンおよびランタイム動作を構成します:

変数説明デフォルト
AGENT_BROWSER_AUTO_CONNECT実行中の Chrome インスタンスを自動検出・接続します。(無効)
AGENT_BROWSER_ALLOW_FILE_ACCESSfile:// URL がローカルファイルにアクセスすることを許可します。(無効)
AGENT_BROWSER_COLOR_SCHEME色テーマの好み (dark, light, no-preference)。(なし)
AGENT_BROWSER_DOWNLOAD_PATHブラウザのダウンロード用のデフォルトディレクトリ。(一時ディレクトリ)
AGENT_BROWSER_DEFAULT_TIMEOUTPlaywright のデフォルトタイムアウト(ミリ秒)。IPCタイムアウトを避けるため、30000未満に保ってください。25000
AGENT_BROWSER_SESSION_NAME自動保存/読み込みの状態保持名。(なし)
AGENT_BROWSER_STATE_EXPIRE_DAYSN日以上前に保存されたセッション状態を自動削除します。30
AGENT_BROWSER_ENCRYPTION_KEYAES-256-GCM によるセッション暗号化用の64文字のハッシュキー。(なし)
AGENT_BROWSER_EXTENSIONSコンマ区切りのブラウザ拡張機能パス。拡張機能はヘッド付きおよびヘッドレスモードの両方で動作します。(なし)
AGENT_BROWSER_HEADEDヘッドレスで実行する代わりにブラウザウィンドウを表示する (1で有効化)。(無効)
AGENT_BROWSER_STREAM_PORT指定されたポート(例:9223)でWebSocketストリーミングを有効化。(無効)
AGENT_BROWSER_IOS_DEVICEiosプロバイダ用のデフォルトのiOSデバイス名。(なし)
AGENT_BROWSER_IOS_UDIDiosプロバイダ用のデフォルトのiOSデバイスUDID。(なし)
AGENT_BROWSER_DEBUGデバッグ出力を有効化 (1で有効化)。(無効)
AGENT_BROWSER_CONTENT_BOUNDARIESLLMの安全性のためにページ出力を境界マークで囲みます。(無効)
AGENT_BROWSER_MAX_OUTPUTページ出力の最大文字数(上限を超える部分は切り詰められます)。(制限なし)
AGENT_BROWSER_ALLOWED_DOMAINSコンマ区切りの許可ドメインパターン(例:example.com,*.example.com)。(制限なし)
AGENT_BROWSER_ACTION_POLICYアクションポリシーのJSONファイルへのパス。(なし)
AGENT_BROWSER_CONFIRM_ACTIONS確認が必要なアクションカテゴリのコンマ区切りリスト。(なし)
AGENT_BROWSER_CONFIRM_INTERACTIVEインタラクティブな確認プロンプトを有効化(stdinがTTYでない場合は自動的に拒否)。(無効)
AGENT_BROWSER_ENGINE使用するブラウザエンジン:chrome(デフォルト)、lightpanda--native を意味します。chrome
AGENT_BROWSER_NATIVENode.js/Playwrightではなく、実験的なネイティブRustデーモンを使用。(無効)

エラー処理

  • 自動検出された設定ファイル~/.agent-browser/config.json./agent-browser.json)が存在しない場合、静かに無視されます。
  • --config <path> でファイルが存在しないか不正な形式の場合、エラーで終了します。
  • 自動検出されたファイル内の不正なJSON は標準エラー出力に警告を出力し、そのファイルは無視して継続します。
  • 不明なキー は前向き互換性のために静かに無視されます。

ヒント: プロジェクトレベルの agent-browser.json に環境依存の値(パス、プロキシなど)が含まれている場合、.gitignore に追加することを検討してください。