Skip to main content
使用全局标志在所有命令中一致地控制 CLI 行为,尤其是遥测和机器可读输出。 Extension.js 的遥测设计上是匿名且对隐私友好的:最多发送两类事件(command_executedcommand_failed)。每个事件包含 commandsuccessversioncreate 运行还会加上 templatesource。此外还会附带粗粒度的环境信息(osarchnode_majoris_ciis_source_build)。

全局标志能力

全局选项

--format--output 的一个已废弃别名。它仍然可用,但 CLI 每次运行会在 stderr 上打印一条废弃警告。更早的 --wait-format 别名同理。 标志用错会以稳定的错误码失败:在 dev 之外使用 --no-reload、在 dev / start / preview 之外使用 --no-browser,都会以 E_FLAG_NOT_SUPPORTED_HERE 失败。已移除的 --no-runner 标志会以 E_REMOVED_FLAG 失败,请改用 --no-browser 你也可以在 extension.config.js 中用 commands.<command>.noBrowser: true 为单个命令设置 no-browser 模式。两者同时存在时,CLI 标志优先。

可选的布尔标志

文档中标注为 [boolean] 的标志(例如 --polyfill--zip--zip-source--silent--wait--install) 接受显式的值,因此你无需单独的 --no-* 标志即可启用或禁用它们:
  • 裸标志表示启用:extension dev --polyfill
  • false0nooff 表示禁用:extension dev --polyfill false
  • true1yes 表示启用:extension build --zip true
这在从命令行覆盖 extension.config.* 中设置的默认值时很有用,也可用于在脚本中传入一个计算得到的值(extension build --zip "$SHOULD_ZIP")。

退出遥测的选项

按优先级顺序,有三种方式禁用遥测:
当策略要求所有运行都不上报遥测时,在持续集成 (CI) 中设置 EXTENSION_TELEMETRY_DISABLED=1

实用示例

在 CI 构建中禁用遥测

当策略明确要求自动化运行禁用遥测时使用。

为工具生成机器可读的 help

适用于解析命令 help 输出的 AI 工具、包装器或脚本。

在本地调试中保留可读 help 输出

当你希望得到对助手友好但终端中也好读的输出时使用 pretty 模式。

行为说明

  • CLI 会先解析全局标志,再解析命令特有选项。
  • 遥测行为与隐私细节请参见 Extension.js 仓库中的 docs/TELEMETRY.md遥测与隐私
  • 使用 extension telemetry status 检查当前同意状态。
  • 命令文档另外说明每个命令的特有标志。
  • 全局标志可与命令特有选项组合使用。
  • 自动化工具(AI 助手与 CI 脚本) 应该从 dist/extension-js/<browser>/ready.json 读取命令就绪状态,而不是解析终端日志。参见 ready.json

下一步