browser

browser は開発時に自動的に開いて拡張機能を読み込むブラウザを設定するために使用されます:実行ファイルパス、user-data(profile)ディレクトリ、起動間での profile 保持。

概要

  • 型: Record<BrowserName, { path?: string; profile?: string; keepBrowserProfile?: boolean }>
  • デフォルト値: undefined(システムのデフォルトパスを使用)
  • 必須: いいえ

各ブラウザエントリは以下のフィールドをサポートします:

  • path — ブラウザ実行ファイルパス
  • profile — カスタム user-data(profile)ディレクトリ。相対パスはプロジェクトルートを基準に解決されます(デフォルト: <outputRoot>/cache/browser-profile/<name>-user-data)
  • keepBrowserProfile — 起動間でこのブラウザの profile を保持し、トップレベルの keepBrowserProfile を上書きします

Chromium 系ブラウザ

以下の Chromium ベースのブラウザをサポートしています:

ブラウザ設定キーデフォルトパス
Google Chromechrome自動検出
Chromiumchromium自動検出
Microsoft Edgeedge自動検出
Bravebrave自動検出
Vivaldivivaldi自動検出
Operaopera自動検出
Arcarc自動検出

設定例

// addfox.config.ts
export default defineConfig({
  browser: {
    chrome: { path: "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" },
    edge: { path: "/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge" },
  },
});

CLI で起動

pnpm
npm
yarn
bun
pnpm dev -- -b chrome
pnpm dev -- -b edge
pnpm dev -- -b brave

Firefox

Firefox は web-ext ツールを使用して拡張機能を管理し、パス設定方法は同じです:

export default defineConfig({
  browser: {
    firefox: { path: "/Applications/Firefox.app/Contents/MacOS/firefox" },
  },
});

Firefox の起動

pnpm
npm
yarn
bun
pnpm dev -- -b firefox
Info

Firefox 開発モードでは web-ext ツールを使用し、拡張機能のリロードは web-ext によって処理され、Addfox の WebSocket ではありません。

各プラットフォームの例

macOS

export default defineConfig({
  browser: {
    chrome: { path: "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" },
    edge: { path: "/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge" },
    firefox: { path: "/Applications/Firefox.app/Contents/MacOS/firefox" },
  },
});

Windows

export default defineConfig({
  browser: {
    chrome: { path: "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" },
    edge: { path: "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe" },
  },
});

Linux

export default defineConfig({
  browser: {
    chrome: { path: "/usr/bin/google-chrome" },
    chromium: { path: "/usr/bin/chromium-browser" },
    firefox: { path: "/usr/bin/firefox" },
  },
});

非推奨: browserPath

browserPath は引き続き使用できますが、ターミナルに非推奨の警告が表示されます。browser に移行してください:

// 移行前(非推奨)
export default defineConfig({
  browserPath: { chrome: "/path/to/chrome" },
});

// 移行後
export default defineConfig({
  browser: { chrome: { path: "/path/to/chrome" } },
});

同じブラウザに browserPath と browser の両方が設定されている場合、browser が優先されます。

関連設定