> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 更新气隙环境下的 Devin Desktop 和 CLI

> 介绍新的气隙版 Devin Desktop 和 CLI 如何出现在门户下载页面，以及在没有自动更新的情况下如何验证、安装和确认更新。

> [!NOTE]
>
> 本文档适用于 Devin 的联邦部署。[返回 Devin 文档](/zh/get-started/devin-intro)

气隙版 Desktop 和 CLI 不会自行更新：Desktop 构建已禁用自动更新，CLI 也已禁用 `devin update`。每次更新都会提供一个新的文件包，你需要从门户下载并验证，然后在每台工作站上安装，流程与首次[安装](/zh/federal/air-gapped/install)相同。本页介绍后续更新与首次安装的不同之处。

***

## 新版本如何呈现

门户的 **Install → Air-gapped downloads** 页面 ([`windsurf.fedstart.com/install/airgap`](https://windsurf.fedstart.com/install/airgap)) 每次只提供一个发布版本。版本号显示在 **Downloads** 标题中 (例如 `version 1.66.101 (0123abcdef)`) ，每个文件的 SHA-256 校验和可通过旁边的 **Show checksum** 控件查看。

当 Cognition 向您的门户发布新的气隙构建时，该页面会直接以新版本及其校验和替换旧版本；页面不提供版本选择器，也不会发送通知。如需跟踪发布版本，请在日常维护中定期检查下载页面上的版本标签。

## 步骤 1：检查你正在运行的版本

在工作站上，将已安装的 CLI 版本与下载页面上显示的版本进行对比：

```sh theme={null}
devin --version
```

```text theme={null}
devin-federal <version>+airgap.<sha>
```

`devin --version` 会输出发布版本号以及该构建对应的短 commit 哈希。Desktop 与其内置的 CLI 基于同一 commit 构建，因此该版本号对两者均适用。

## 步骤 2：下载并验证新的文件包

针对新版本，按照安装指南中的[步骤 1](/zh/federal/air-gapped/install#step-1-download-the-bundle-from-the-portal)和[步骤 2](/zh/federal/air-gapped/install#step-2-verify-the-checksum)进行操作：为设备集群中的每个平台下载软件包，记下门户页面上显示的校验和，将文件传入气隙环境，并在安装前确认 SHA-256 值一致。

每个发布版本的校验和都不相同。请在下载时记下门户页面上的新值，切勿沿用旧版本的校验和。

## 步骤 3：覆盖安装现有版本

请先退出 Desktop，并停止工作站上所有正在运行的 `devin` 会话。配置、会话历史、审计日志和 SSO (单点登录) 登录信息均存储在应用程序之外 (参见[磁盘存储格式](/zh/federal/air-gapped/on-disk-formats)) ，更新后仍会保留。

**macOS**

打开新的 `.dmg`，将 **Devin - Airgap** 拖入 `/Applications`，并在出现提示时替换现有应用程序。然后按照[安装指南的步骤 3](/zh/federal/air-gapped/install#step-3-install) 验证签名：

```sh theme={null}
spctl --assess --type execute --verbose "/Applications/Devin - Airgap.app"
```

```text theme={null}
/Applications/Devin - Airgap.app: accepted
source=Notarized Developer ID
```

**Linux (.deb / .rpm)**

```sh theme={null}
sudo dpkg -i Devin-linux-x64-<new-version>.deb   # Debian/Ubuntu
sudo rpm -U Devin-linux-x64-<new-version>.rpm    # RHEL/Fedora
```

`dpkg -i` 会直接原地升级已安装的软件包；而 `rpm` 需使用 `rpm -U` (而非 `rpm -i`) ，这样才会替换已安装的版本，而不是拒绝安装。气隙构建版本不提供 apt 或 yum 软件源。

**Linux (.tar.gz)**

先将旧的解压目录移走，再将新归档文件解压到原位置，以确保启动器路径 (`/opt/Devin-linux-x64/bin/devin-airgap`) 以及指向内置 `devin` 二进制程序的 `PATH` 条目仍然有效：

```sh theme={null}
sudo mv /opt/Devin-linux-x64 /opt/Devin-linux-x64.previous
sudo tar -xzf Devin-linux-x64-<new-version>.tar.gz -C /opt
```

新版本验证通过后，删除 `/opt/Devin-linux-x64.previous`。

**Windows (installer)**

按照[安装指南的步骤 3](/zh/federal/air-gapped/install#step-3-install) 验证新安装程序的 Authenticode 签名，然后以管理员身份运行该程序：

```powershell theme={null}
Get-AuthenticodeSignature .\DevinSetup-x64-<new-version>.exe | Format-List Status, SignerCertificate
```

气隙构建版本没有更新 URL；对于已安装的副本，只能通过新安装程序进行升级。

**Windows (.zip)**

将 `Devin-win32-x64-<new-version>.zip` 解压到单独的文件夹，按照[安装指南的步骤 3](/zh/federal/air-gapped/install#step-3-install) 验证解压后可执行文件的签名，然后从新文件夹运行 Desktop。

新版本验证通过后，删除旧文件夹，并更新指向内置 `devin.exe` 的 `PATH` 条目。

`/etc/devin/` (Windows 上为 `C:\ProgramData\Devin\`) 下的许可证文件、模型文件和认证文件不属于软件包，更新时不会被改动。

## 步骤 4：验证更新

在每台已更新的工作站上，以普通用户身份运行：

```sh theme={null}
devin --version
devin airgap doctor
```

```text theme={null}
devin-federal <new-version>+airgap.<sha>
pass  license                                seat alice@example.gov (account acme), expires 2027-03-01
...
10 check(s): 10 passed, 0 warning(s), 0 failure(s)
```

然后启动一次 Desktop，确认它能连接您的模型端点并打开会话。

更新后需要留意以下两类特有的失败项：

| 症状 | 原因 | 操作 |
| - | - | - |
| 更新后立即出现 `LIC004` | 新构建内嵌了一组轮换后的公开密钥，而您的许可证所用的签名密钥已不再受该构建信任。 | 从门户签发新的许可证，并按照[续订或替换许可证](/zh/federal/air-gapped/license#renew-or-replace-a-license)中的说明替换该文件。然后运行 [`kid` 检查](/zh/federal/air-gapped/license#check-the-key-id)进行确认。 |
| 之前已通过验证的模型文件出现 `MDL` code | 新发布版本变更了模型文件的验证规则。 | 运行 `devin models validate`，诊断信息会指出相关字段和 code。参见[模型文件](/zh/federal/air-gapped/models-file)。 |

每条 `session_start` 审计记录都带有 `cli_version`，因此您的 SIEM 可以据此确认 rollout 进度：来自已更新工作站的会话会上报新版本号。

## 回滚

在新版本于所有机器上验证通过之前，请保留上一版本的软件包及其校验和。回滚的步骤与安装相同：先验证旧版软件包的校验和，再将其覆盖安装到新版本上。在 RPM 系统上，需添加 `--oldpackage`，否则 `rpm -U` 会拒绝用旧版本替换新版本：

```sh theme={null}
sudo rpm -U --oldpackage Devin-linux-x64-<previous-version>.rpm
```

## 发布说明

气隙构建的发布说明与 Devin 的其他发布说明一同发布在[近期更新](/zh/release-notes/overview)中。在推出新版本之前，请阅读该版本对应的条目，并重点关注以下内容：磁盘存储格式或审计日志 schema 的更改 (即 `schema_version` 值) 、新增或变更的错误代码，以及任何需要重新签发许可证的许可证密钥轮换。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.