Skip to main content
在开发期间,使用受管理、持久或自定义的 profile 来控制浏览器状态隔离。 按你的工作流让浏览器会话保持隔离或保持持久。Extension.js 在启动浏览器时会带上感知 profile 的默认值。你可以选择全新运行、可复用的状态,或一个显式的本地 profile 路径。

工作原理

Extension.js 按以下顺序选择 profile 模式:
  1. 显式的 profile 路径(如果提供)
  2. 受管理的 profile 模式(默认)
    • 默认是临时(ephemeral)
    • persistProfile: true 时则保持持久
  3. EXTENSION_USE_SYSTEM_PROFILE=true 时,使用系统 profile 模式

profile 能力

profile 模式

Extension.js 会在以下位置创建受管理的 profile:
  • dist/extension-js/profiles/<browser>-profile/<...>
持久模式使用:
  • dist/extension-js/profiles/<browser>-profile/dev

extension.config.* 中配置

你也可以按命令为 profile 默认值划定作用域:

CLI 用法

直接使用显式的 profile 路径:
startpreview 上用法类似。

生命周期说明

  • Extension.js 为每次运行创建一个临时的受管理 profile。
  • Extension.js 在多次运行之间复用持久的受管理 profile(dev)。
  • Extension.js 会自动清理旧的受管理 profile 文件夹。可通过 EXTENSION_TMP_PROFILE_MAX_AGE_HOURS 控制最大保留时长。

最佳实践

  • 基线测试用受管理临时 profile:减少隐藏状态,降低不稳定复现的概率。
  • 长时间调试会话用 persistProfile:在多次运行之间保留 auth / 会话 / devtools 状态。
  • 按浏览器家族保持各自的自定义 profile:避免跨浏览器互相污染。
  • 有意识地使用系统 profile 模式:适合复现,但隔离性不如受管理 profile。

下一步