为什么需要这个?
在国内的金融、军工、政府、运营商等场景中,内网开发是常态。机器物理隔离,没有 GitHub 访问,没有 npm registry,甚至没有互联网连接。
但 AI 编程工具——Claude Code、Codex CLI、Codex Desktop——默认都依赖联网安装:npm install、GitHub Releases 下载、微软商店在线分发。这让内网用户望而却步。
有没有一套方案,能先在一台联网机上下载好所有材料,拷进内网,一条命令装好?
有。我把三个工具的内网部署脚本打包成了一个仓库。
仓库地址:github.com/Nemocccc/cc_codex-offline-installation
整体思路
所有三个工具遵循同一套四步走流程,零学习成本:
- 联网机下载— 在一台能访问 GitHub / npm / Node.js 官网的机器上运行
pack-online.bat,自动下载所有依赖 - 拷贝到内网— USB 或内部共享,把整个目录拷进去
- 内网安装— 右键
setup.bat→ 以管理员身份运行,一键装好 - 配置内网 API— 设置环境变量指向内网 LLM 网关,即刻使用
一、Claude Code CLI
离线部署全流程
第 1 步 — 联网机下载
cd cc-offline scripts\pack-online.bat这个脚本会从 GitHub、nodejs.org 等源头下载以下材料到本地目录:
| 下载项 | 本地位置 | 大小 |
|---|---|---|
| nvm-windows | nvm\ | 16 MB |
| Node.js 26.4.0 + npm | node\ | 115 MB |
| claude.exe 原生二进制 | claude-code-offline\ | 225 MB |
| 总计 | ~355 MB |
下载完成后,整个cc-offline\目录就是可移植的离线包。
第 2 步 — 拷贝到内网
将cc-offline\目录完整复制到内网机器的任意位置,比如D:\tools\cc-offline\。
第 3 步 — 内网安装
# 右键 → 以管理员身份运行 setup.batsetup.bat 会帮你做这些事:
- 安装 nvm-windows 到
%USERPROFILE%\.nvm\ - 用 nvm 安装 Node.js 26.4.0 + npm 到
%USERPROFILE%\.nvm\nodejs\ - 将 claude.exe 放到
%USERPROFILE%\claude-code\bin\claude.exe - 注册命令行入口到
%USERPROFILE%\.nvm\claude.cmd - 修改 PATH 环境变量,追加 nvm 目录
- 设置
ANTHROPIC_BASE_URL环境变量
安装完成后关掉当前终端,重新打开一个新终端。
第 4 步 — 配置内网 API
有两种方式:
方式 A:settings.json 预配置
将 repo 根目录下的settings.json复制到内网机器的%USERPROFILE%\.claude\下:
{ "hasCompletedOnboarding": true, ... }这个方式适合统一管理团队配置,比如预设 model picker、禁用 telemetry 等。
方式 B:cc-switch 代理
用 cc-switch 配置代理指向内网 LLM 网关,设置环境变量:
set ANTHROPIC_BASE_URL=https://your-internal-gateway/api⚠️重要提醒:方式 A 中的hasCompletedOnboarding: true和方式 B 的"跳过首次登录"是互斥的,两者不能同时设置。
验证安装
claude二、Codex CLI
离线部署全流程
第 1 步 — 联网机下载
cd codex-offline scripts\pack-online.bat相比 Claude Code,Codex CLI 的离线包更大,因为包含了 Rust 编译的原生二进制(约 308 MB)。
第 2 步 — 拷贝到内网
将整个codex-offline\目录复制到内网机器。
第 3 步 — 内网安装
# 右键 → 以管理员身份运行 setup.bat安装内容:
| 组件 | 安装到 |
|---|---|
| nvm-windows | %USERPROFILE%\.nvm\ |
| Node.js + npm | %USERPROFILE%\.nvm\nodejs\ |
| codex.js + native binary | %USERPROFILE%\codex\ |
| 命令行入口 | %USERPROFILE%\.nvm\codex.cmd |
| 环境变量 | PATH +OPENAI_BASE_URL |
验证安装
codex三、Codex Desktop
离线部署全流程
第 1 步 — 联网机下载
cd codex-desktop-offline scripts\pack-online.bat| 下载项 | 本地位置 | 大小 |
|---|---|---|
| 微软商店安装器 stub | pkg\CodexDesktopInstaller.exe | 1.3 MB |
注意这里只下载了 stub 安装器(1.3 MB)。如果你的内网机器能够访问微软 CDN(比如有白名单代理),那直接用这个安装器即可。如果是完全断网的环境,需要额外一步。
第 2 步 — 拷贝到内网
第 3 步 — 获取纯离线 MSIX(完全断网环境)
如果内网完全断网(连微软 CDN 也访问不了),需要提前从一台已安装 Codex Desktop 的机器上提取完整安装包。
在这台有网机器上(已经装好 Codex Desktop),以管理员身份运行:
scripts\extract-msix.bat这个脚本会自动:
- 扫描
C:\Program Files\WindowsApps\目录 - 找到 OpenAI.CodexDesktop 的安装文件夹
- 完整复制到
pkg\AppxPackage\目录
将pkg\AppxPackage\拷回内网机器即可。
第 4 步 — 内网安装
# 右键 → 以管理员身份运行 setup.batsetup.bat 会按以下优先级尝试安装:
| 优先级 | 安装方式 | 条件 |
|---|---|---|
| ① | Add-AppxPackage -Register | 已有pkg\AppxPackage\目录 |
| ② | Add-AppxPackage -Path | 已有pkg\*.msix文件 |
| ③ | Add-AppxProvisionedPackage | 已有pkg\AppxPackage\目录 |
| ④ | DISM 命令安装 | 已有pkg\AppxPackage\目录 |
| ⑤ | 运行安装器 stub | 需要能访问微软 CDN |
也就是说,你只要准备了上述任意一种材料,setup.bat 都能自动识别并使用最佳方式安装。
仓库目录结构全貌
pack/ ├── cc-offline/ Claude Code CLI 离线包 │ ├── settings.ini 版本号与 API 配置 │ ├── settings.json Claude Code 预配置(放入 ~/.claude/) │ ├── setup.bat 内网安装脚本(管理员运行) │ └── scripts/ │ ├── pack-online.bat 联网机下载脚本 │ └── verify.bat 安装后验证脚本 │ ├── codex-offline/ Codex CLI 离线包 │ ├── settings.ini │ ├── settings.json │ ├── setup.bat │ └── scripts/ │ ├── pack-online.bat │ └── verify.bat │ └── codex-desktop-offline/ Codex Desktop 离线包 ├── settings.ini ├── setup.bat └── scripts/ ├── pack-online.bat ├── extract-msix.bat 从已装机提取离线 MSIX 包 └── verify.bat常见问题
Q:setup.bat 提示需要管理员权限?
A:右键setup.bat→ 选择"以管理员身份运行"。安装 Node.js 和写系统 PATH 都需要管理员权限。
Q:pack-online.bat 下载失败?
A:检查联网机的网络连接。需要能访问 GitHub Releases、nodejs.org、npmjs.org。如果公司网络有代理,需要先配置好代理环境变量。
Q:安装后命令行找不到 claude / codex?
A:关掉当前终端,打开一个新终端。因为 setup.bat 修改的是系统 PATH 环境变量,已经打开的终端不会感知到变化。重启 Windows 也可以解决。