从写代码,到创作下一幕

探索 字节跳动 - 火山方舟 的 AI 编程与视频创作活动。

Agent Plan & Coding Plan

一站体验多款热门模型,为 AI 编程与智能体开发提供更多选择。新用户可联系(微信: goo_lvyouyou)免费体验 9.9 agent plan。

Seedance 2.5

让创意,跃然成片。探索 30 秒视频、多模态参考与局部编辑,把脑海中的画面变成下一支作品。

中文

部署 Windows 应用和 Codex CLI

使用 Intune、SCCM 或其他企业管理工具部署 Windows 桌面应用和 Codex CLI

将 Windows 桌面应用、Codex CLI 或两者部署到受管理的 Windows 设备上。需要桌面访问时选择应用,需要终端访问时选择 CLI。

桌面应用和独立 CLI 使用不同的安装上下文。部署 CLI 之前,请选择并验证用于运行其安装程序的账户。

你的目标 入门指南
分发桌面应用 部署 Windows 应用
为员工提供独立的终端访问 在 Windows 上部署 Codex CLI
在 Windows 上应用 Codex 要求 配置托管要求
准备 Windows 命令执行环境 配置 Windows 沙箱

部署 Windows 应用

根据你的管理工具以及设备是否能够访问 Microsoft 的分发服务,选择部署方式。

部署前,请按照托管配置配置适用的控制措施。要为桌面应用中的 Codex 命令执行做好准备,请按照 Windows 沙箱设置操作。检查设备兼容性,并完成所需的旧版设置。

下方的 MSIX 链接下载的是各架构的最新版本,而非历史版本。请审查下载的安装包,并将已批准的制品保留在部署系统中。按照管理应用更新中的说明,协调应用内置更新程序与 Microsoft Store、Intune 及其他部署工具。

安装包来源

通过 Microsoft Store 部署

使用 Intune 的 Microsoft Store 集成安装和更新应用。

  1. 在 Intune 管理中心,转到应用 > 所有应用 > 创建。选择 Microsoft Store 应用(新)。

  2. 搜索 OpenAI 的 ChatGPT,或输入 Store 产品 ID 9PLM9XGG6VKS。选择该应用并检查其安装设置。

  3. 在应用信息 中,将安装行为 设置为系统。

  4. 在必需 下添加目标组,让 Intune 自动安装该应用, 然后选择创建。

若要通过公司门户提供可选安装,请改用可用于已注册的 设备。

设备需要能够访问 Microsoft 网络要求中列出的 Microsoft Store 和 Windows Update 终结点。如果这些终结点被阻止,请选择离线 MSIX。

有关安装上下文、网络要求和部署监视,请参阅 Microsoft 的 Intune Store 应用指南。

在 Windows 上部署 Codex CLI

准备 CLI 程序包,应用设备策略,并验证员工帐户能否从终端访问 CLI。

开始之前

  • 确定目标 Windows 设备、用户及设备的处理器架构,然后选择安装方式。确认用户拥有 Codex 访问权限,并且能够完成组织的登录流程。

  • 对于 Intune,请准备好应用管理权限、符合 Microsoft Win32 打包先决条件的已注册设备,以及无人值守安装程序包。

  • 明确 CLI 更新和移除的负责人。如果使用 npm,请考虑受管理的 Node.js/npm 安装及其全局程序包位置。

选择安装方式

选择安装方式并明确 CLI 版本。查看 GitHub 上的 CLI 版本,然后将示例中的 <approved-version> 替换为已批准的版本号,格式为 x.y.z。程序包和检测规则应使用相同的版本。

未指定版本时,独立安装程序默认使用 latest。显式设置 -Release 可将部署固定到某个版本;请参阅安装程序的版本参数。有关常规安装指南,请参阅 CLI 安装。

独立 PowerShell 安装程序。 在新的 PowerShell 窗口中下载安装程序,并传入已批准的版本:

$CodexRelease = '<approved-version>'
Invoke-WebRequest -UseBasicParsing -Uri 'https://chatgpt.com/codex/install.ps1' -OutFile '.\codex-install.ps1'
powershell -ExecutionPolicy Bypass -File .\codex-install.ps1 -Release $CodexRelease

npm。 如果设备上的 Node.js 和 npm 已纳入管理,请显式选择已批准的程序包版本:

$CodexRelease = '<approved-version>'
npm install -g "@openai/codex@$CodexRelease"

对于受管理的分发,请将经过审核的安装程序或程序包制品以及选定版本保留在 IT 部门维护的程序包中。明确定义安装上下文、检测、移除和更新行为。选择版本不会改变安装程序默认使用用户配置文件的行为,也不会提供完整的无人值守部署封装。

设置安装上下文

独立安装程序默认将运行时文件放在当前用户的配置文件中,将命令目录设为 %LOCALAPPDATA%\Programs\OpenAI\Codex\bin,并使用用户 PATH。

以 SYSTEM 身份运行未经修改的安装程序时,安装目标是 SYSTEM 配置文件和环境。在 Intune 中选择 System 并不会使其成为面向所有用户的安装。

部署方式 验证事项
为已登录的员工安装 在该用户的上下文中运行安装和检测。打开一个新终端,确认该员工能够找到并运行 codex。
构建设备范围的安装包 定义并验证计算机上的安装布局、运行时文件、权限、PATH 配置、检测和卸载方式。默认安装程序不提供此方案。
使用 npm 确认运行 npm 的账户所使用的全局包前缀和命令位置。“全局”不一定意味着适用于所有 Windows 用户。

将用户安装、设备策略下发和经管理员批准的沙箱设置分开处理。当某个步骤需要使用员工的用户配置文件时,请使用该员工的身份,而非 SYSTEM。

将独立运行所需的运行时文件保存在一起;仅复制 codex.exe 无法构成完整的独立安装包。

通过 Intune 打包和分配 CLI

准备并验证由 IT 管理的 Win32 安装包,为所选安装上下文配备无人值守安装程序、卸载程序和检测逻辑。

  1. 准备一个源文件夹,其中包含经批准的安装文件和无人值守安装脚本。在该脚本中指定经批准的 CLI 版本,不要让脚本自动解析 latest。将 Microsoft 打包工具和输出文件夹放在该源文件夹之外。

  2. 使用 Microsoft Win32 Content Prep Tool 生成 .intunewin 文件。本示例假设已审核的安装脚本名为 Install-Codex.ps1:

   IntuneWinAppUtil.exe -c C:\Packages\Codex\Source -s Install-Codex.ps1 -o C:\Packages\Codex\Output -q

该工具会打包源文件夹中的内容。请参阅创建 Win32 应用包。

  1. 在 Intune 中,创建一个 Windows 应用 (Win32) 并上传安装包。

  2. 设置与安装包匹配的安装和卸载命令、用户 或系统 行为、要求及检测规则。

  3. 将其分配为必需 或可用于已注册设备。

Intune 要求使用无人值守安装。自定义检测脚本必须以退出码 0 退出,并向 stdout 写入内容;向 stderr 输出内容会导致检测失败。请参阅添加和分配 Win32 应用。

即使管理代理报告了表示成功的退出码,也要使用员工账户验证 CLI。

对于 Configuration Manager (SCCM),请在应用部署工作流中采用已审核的 CLI 安装方案,并使用 CLI 专用的安装程序和检测规则。桌面应用的 MSIX 设置仅适用于桌面应用。

配置托管要求

将管理员强制执行的 Windows 要求部署到以下位置:

%ProgramData%\OpenAI\Codex\requirements.toml

通过终结点管理工具下发该文件。向目标用户授予读取权限,并防止普通用户更改由管理员管理的策略。

要求用于约束设置;配置默认值用于提供初始值。请同时检查本地文件和适用的云端策略,以确定实际生效的配置。

为权限、审批、网络访问和沙箱行为选择相应要求。有关支持的字段和优先级,请参阅托管配置。

部署后,以员工身份启动 Codex,并使用 /status 和 /debug-config 确认实际生效的策略。安装 CLI 或下发要求并不会授予工作区访问权限。

配置 Windows 沙箱

选择 Windows 沙箱之前,请检查设备兼容性。Windows 沙箱指南介绍了 Microsoft Execution Containers (MXC) 和旧版实现。

在兼容设备上优先使用 MXC

单独使用 CLI 时,请在 config.toml 中启用优先使用 MXC 的设置:

[features]
prefer_mxc = true

你也可以通过 requirements.toml 强制执行此功能设置值。此偏好设置允许在 MXC 不可用时回退到旧版实现。启用前,请检查 Windows 沙箱指南中的设备要求。

在 CLI 0.162.0 或更高版本中,从项目目录运行以下兼容性探测命令:

codex -c windows.sandbox=mxc sandbox --include-managed-config --permission-profile :workspace -- cmd.exe /d /c echo MXC_OK
$LASTEXITCODE

预期输出为 MXC_OK,退出码为 0。此操作检查的是显式指定 MXC 的命令;还应检查员工正常会话中的配置。

推广部署前,请对照沙箱指南中的网络限制检查你的托管网络策略。

准备旧版回退方案

当 MXC 不可用或被禁用时,优先使用 elevated 旧版回退方案。其设置过程需要管理员批准,但沙箱内的命令无需管理员权限即可运行。

针对员工账户和 Codex 主目录,按照由 IT 主导的设置流程操作。在具有适当提升权限的进程中运行以下示例:

codex sandbox setup --elevated --user 'DOMAIN\alice' --codex-home 'C:\Users\alice\.codex'

将示例身份和路径替换为目标用户的实际值。执行提权设置时,请使用管理员信任的 CLI 安装。

若要仅允许提权的旧版实现,请将以下内容添加到 %ProgramData%\OpenAI\Codex\requirements.toml,而非 config.toml。请参阅配置旧版回退方案:

[windows]
allowed_sandbox_implementations = ["elevated"]

这会限制旧版回退方案,但不会阻止使用 MXC。在允许 unelevated 之前,请评估其较弱的网络隔离能力,以及不支持禁止读取路径的限制。

验证 CLI 部署

以目标员工身份打开一个不具有管理员权限的新 PowerShell 窗口:

Get-Command codex
codex --version
codex

确认找到的可执行文件来自预期的安装位置,然后完成经批准的登录流程。在指定的测试项目中运行一个小任务,并检查当前生效的配置。

检查项 操作和预期结果
安装上下文 确认目标员工账户能够找到 CLI,包括重新登录后。
管理工具检测 检查已安装 CLI 的设备能否被检测到,以及未安装 CLI 的设备(包括已卸载 CLI 的设备)是否不会被检测为已安装。
托管要求 确认会话显示预期的实际生效策略。
Windows 沙箱 验证 MXC 能否在兼容设备上运行,并确认已在需要的设备上配置经批准的旧版回退方案。
更新 确认部署后员工能够运行经批准的新版本。
卸载 确认安装包能够移除其安装内容和 PATH 条目,且不会删除无关的用户配置或项目数据。

管理更新

桌面应用

应用默认会检查更新,即使是离线 安装后也会如此。若要启用自动更新,请允许设备访问 persistent.oaistatic.com。如果禁用自动更新,请通过管理工具部署更新的 安装包。

按照管理应用更新中的说明协调所有更新来源。禁用内置更新程序并不会阻止 Microsoft Store、Intune 或其他管理工具更新应用,也不会提供由 OpenAI 管理的版本固定功能或单独的发布渠道。请通过部署系统确认已安装的版本。

Codex CLI

每次更新 CLI 时,选择一个新获批的版本,更新部署包中明确指定的 -Release 值或 npm 包版本,并更新其检测规则。通过既定的打包部署流程进行部署,然后验证已安装的版本、账户上下文和检测行为。不要将受管理的包改回使用未明确指定版本的安装命令。请参阅 CLI 版本、CLI 安装与更新和 npm 版本选择。

故障排查

安装时提示用户输入管理员凭据

用户自行安装应用时,必须由管理员批准安装。

对于通过 Microsoft Store 进行的 Intune 部署:

  1. 在 Intune 管理中心,转到应用 > 所有应用,然后选择 ChatGPT。

  2. 检查应用属性 中的安装行为。如果设置为用户,请将 该应用重新添加为 Microsoft Store 应用(新),并在 应用信息 中选择系统。

  3. 在必需 或可用于 已注册设备 下,将应用分配给目标组。如果添加了新应用,请移除该组 在原应用中的分配。

  4. 将受影响的设备与 Intune 同步,然后检查设备安装状态。 对于可用分配,请在公司门户中重试安装。

如果应用已安装,使用系统 安装行为部署时,可能会 导致 Intune 报告 0x87D1041C。在这种情况下,安装仍然成功。 请在受影响的设备上验证应用。

安装失败并显示错误 `0x80073D28`

当 Windows 无法在没有管理员权限的情况下安装打包服务时, 会返回 0x80073D28(ERROR_PACKAGED_SERVICE_REQUIRES_ADMIN_PRIVILEGES)。 请以管理员身份运行安装,或将部署工具配置为 在设备或 System 上下文中安装。

对于现有的 SCCM 部署:

  1. 打开应用程序的属性 > 部署类型。
  2. 编辑 Windows 应用包 部署类型,并打开用户体验。
  3. 启用为设备上的所有用户预配此应用程序,然后保存。
  4. 刷新客户端的计算机策略,然后在软件 中心重试安装。

有关预配设置的详细信息,请参阅 Microsoft 的应用程序部署设置。

Codex CLI 安装与配置

症状 检查事项
Intune 报告成功,但员工无法运行 Codex 检查安装账户、运行时位置,以及更新了哪个账户的 PATH。未经修改的安装程序以 SYSTEM 身份运行时,不会安装到员工的用户配置文件中。
安装后无法识别 codex 打开一个新终端。检查目标账户的命令目录和 PATH。
启动了错误的 Codex 版本 使用 Get-Command codex 检查是否存在相互冲突的独立安装或 npm 安装位置。
MXC 探测失败 对照 Windows 沙箱指南检查设备功能、CLI 版本和托管策略。在适当情况下,预配已获批的旧版回退方案。
旧版沙箱设置请求管理员批准 由 IT 人员针对员工身份和 Codex 主目录完成设置。
托管设置与本地要求文件不一致 使用 /status 和 /debug-config 查看生效的设置、策略优先级和支持的字段。

相关资源