AI 编程工具内网离线部署方案

AI 编程工具内网离线部署方案

为什么需要这个?

在国内的金融、军工、政府、运营商等场景中,内网开发是常态。机器物理隔离,没有 GitHub 访问,没有 npm registry,甚至没有互联网连接。

但 AI 编程工具——Claude Code、Codex CLI、Codex Desktop——默认都依赖联网安装:npm install、GitHub Releases 下载、微软商店在线分发。这让内网用户望而却步。

有没有一套方案,能先在一台联网机上下载好所有材料,拷进内网,一条命令装好

有。我把三个工具的内网部署脚本打包成了一个仓库。

仓库地址:github.com/Nemocccc/cc_codex-offline-installation


整体思路

所有三个工具遵循同一套四步走流程,零学习成本:

  1. 联网机下载— 在一台能访问 GitHub / npm / Node.js 官网的机器上运行pack-online.bat,自动下载所有依赖
  2. 拷贝到内网— USB 或内部共享,把整个目录拷进去
  3. 内网安装— 右键setup.bat→ 以管理员身份运行,一键装好
  4. 配置内网 API— 设置环境变量指向内网 LLM 网关,即刻使用

一、Claude Code CLI

离线部署全流程

第 1 步 — 联网机下载
cd cc-offline scripts\pack-online.bat

这个脚本会从 GitHub、nodejs.org 等源头下载以下材料到本地目录:

下载项本地位置大小
nvm-windowsnvm\16 MB
Node.js 26.4.0 + npmnode\115 MB
claude.exe 原生二进制claude-code-offline\225 MB
总计~355 MB

下载完成后,整个cc-offline\目录就是可移植的离线包。

第 2 步 — 拷贝到内网

cc-offline\目录完整复制到内网机器的任意位置,比如D:\tools\cc-offline\

第 3 步 — 内网安装
# 右键 → 以管理员身份运行 setup.bat

setup.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
下载项本地位置大小
微软商店安装器 stubpkg\CodexDesktopInstaller.exe1.3 MB

注意这里只下载了 stub 安装器(1.3 MB)。如果你的内网机器能够访问微软 CDN(比如有白名单代理),那直接用这个安装器即可。如果是完全断网的环境,需要额外一步。

第 2 步 — 拷贝到内网
第 3 步 — 获取纯离线 MSIX(完全断网环境)

如果内网完全断网(连微软 CDN 也访问不了),需要提前从一台已安装 Codex Desktop 的机器上提取完整安装包。

在这台有网机器上(已经装好 Codex Desktop),以管理员身份运行:

scripts\extract-msix.bat

这个脚本会自动:

  1. 扫描C:\Program Files\WindowsApps\目录
  2. 找到 OpenAI.CodexDesktop 的安装文件夹
  3. 完整复制到pkg\AppxPackage\目录

pkg\AppxPackage\拷回内网机器即可。

第 4 步 — 内网安装
# 右键 → 以管理员身份运行 setup.bat

setup.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 也可以解决。