本文档适用于 Devin 的联邦部署。返回 Devin 文档
TLS 要求
- 每个模型的
base_url以及 SSO (单点登录) 的issuer都必须使用https://。只有回环主机 (localhost、127.0.0.0/8、[::1]) 才允许使用普通的http://。 - 证书会通过操作系统的信任存储进行验证 (macOS 上为 Security.framework,Linux 上为系统 CA 存储) 。如果您的端点由工作站上已安装的 CA 签名,则无需额外配置。
- 如果您的端点由不在操作系统信任存储中的私有 CA 签名,请按下文所述,通过
DEVIN_CA_BUNDLE添加该 CA。CLI 始终不会禁用证书验证。
使用 DEVIN_CA_BUNDLE 信任私有 CA
DEVIN_CA_BUNDLE 用于指定一个 PEM 文件,其中的证书会在操作系统信任存储之外额外获得信任。该设置适用于推理请求、devin airgap doctor 探测,以及 CLI 在 SSO (单点登录) 登录和重新验证期间向您的 IdP 发出的所有请求。
1
组装文件包
将私有 CA 的根证书 (以及中间证书,如有) 放入同一个 PEM 文件中。该文件可以包含多个 各端点无需共用同一证书或同一 CA。整个智能体进程只使用一个文件包,且该文件包适用于所有连接。因此,如果不同端点由不同的私有 CA 签发,请将这些 CA 全部合并到同一个文件中:使用该文件包后,
-----BEGIN CERTIFICATE----- 块。https://vllm.corp.example (由 corp-root-ca 签发) 、https://models.ml.example (由 ml-platform-ca 签发) 以及您的 IdP (由 idp-root-ca 签发) 都将受到信任。如果端点由操作系统信任存储中已有的 CA 签发,则无需添加条目。模型文件不提供按模型设置的证书或 TLS 字段,也不支持为每个端点单独配置文件包。2
在智能体的环境中导出该变量
devin.acp.agentEnv 设置中,或在 macOS 上运行 launchctl setenv DEVIN_CA_BUNDLE /etc/devin/ca-bundle.pem (open 不会将 shell 环境传递给应用) 。3
使用 doctor 确认
trusted only via DEVIN_CA_BUNDLE 表明端点正是借助该文件包才获得信任:doctor 会对每个可达端点仅使用操作系统信任存储重试一次,并报告该次尝试是否在 TLS 阶段失败。如果未设置该变量,CA bundle 一行将显示 not configured (OS trust store only; set DEVIN_CA_BUNDLE to add a private CA)。CFG004 及解析器的报错信息 (例如 failed to read CA bundle '/etc/devin/ca-bundle.pem': No such file or directory) 。而在运行时,同样的情况并不会导致致命错误:CLI 会输出一行 warning: ignoring DEVIN_CA_BUNDLE: …,并回退到操作系统信任存储。因此,路径拼写错误不会表现为启动错误,而是表现为访问端点时出现 NET003 TLS 失败项。请修复文件包,然后重新运行 doctor。
代理
气隙 CLI 的出站代理处理方式与标准 Devin CLI 相同。默认情况下 ("mode": "system") ,它会遵循 HTTP_PROXY、HTTPS_PROXY、ALL_PROXY 和 NO_PROXY 环境变量,以及操作系统的 PAC/自动代理设置。如需强制使用特定代理或完全绕过代理,请在用户配置文件 (即共享 Devin 配置目录中的 config.json;参见磁盘存储格式) 中添加 proxy 块:
no_proxy 在所有模式下均生效,语法与 NO_PROXY 环境变量相同。若要为主机上的所有用户统一设置代理,请将相同的 proxy 块放入全系统策略文件 system.json (Linux 上为 /etc/devin/system.json,macOS 上为 /Library/Application Support/Devin/system.json,Windows 上为 C:\ProgramData\Devin\system.json) ;如果两个文件都定义了 proxy,CLI 将拒绝启动,直到你删除用户级的副本。完整的选项说明请参阅 CLI 配置文件参考。
如果代理会终止 TLS 并用自己的 CA 对流量重新签名,则该代理视同私有 CA:请将其证书添加到 DEVIN_CA_BUNDLE。连接仍然只会发往本页顶部列出的目标地址;代理改变的只是连接路径,而非目标地址范围。
超时
探测超时会报告为
NET005。
NET 代码
devin airgap doctor 会为每个失败的端点探测附上以下代码之一。你在支持请求中看到的也是这些代码。完整目录请参阅错误代码页面。

