# Devin Desktop（原 Windsurf）接入

> **最后核实**：2026-09-18 · 📄 依据官方文档（Devin Desktop 3.10.31（2026-09-16 发布））

## 接入速览

| 项目 | 说明 |
|---|---|
| 可用模型 | 取决于挂载的 ACP agent：Claude ✅（挂 Claude Agent / Claude Code，环境变量指向 QCode）· GPT / 国产取决于 agent · Gemini ❌ |
| 协议与 Base URL | agent 环境变量 `ANTHROPIC_BASE_URL=https://api.qcode.cc/api` |
| 配置位置 | Devin User Settings 的 Agents 标签，或 `~/.windsurf/acp/registry.json`（Windows：`%USERPROFILE%\AppData\Roaming\Code\User\acp\registry.json`）；给 agent 配环境变量用 `devin.acp.agentEnv.<agentName>` |
| 官方文档 | [docs.devin.ai](https://docs.devin.ai) |

> **⚠️ Windsurf 已更名。** 2026-06-02，Cognition 把 **Windsurf 更名为 Devin Desktop**，
> 以 OTA 方式推送。官方逐项承诺平移的是套餐、价格、设置与扩展；快捷键与 MCP 连接官方没有逐条承诺，
> 我们也没有逐条核对。原来的 **Cascade agent 已被移除**：官方 FAQ 当时的说法是
> "remains available through July"，实际 removal 落在 **v3.9.19（2026-09-08）** 的更新日志里
> ——「**Cascade** has been removed」，**Devin Local 成为 Devin Desktop 唯一自带的 agent**。

[Devin Desktop](https://devin.ai/desktop) 现在围绕 **[ACP（Agent Client Protocol）](/docs/ide/acp)** 构建：
它本身是宿主，你可以在里面挂载 Claude Code、Codex CLI、OpenCode 等任意会说 ACP 的 agent。
新增能力包括看板式 Command Center、Spaces（任务分组）、本地 agent **Devin Local**（官方说它与 Devin CLI 同一套架构）与 Codemaps。

## 用 QCode 的正确姿势：只有 ACP 这一条路

Devin Desktop **没有**可以填任意 Base URL 的 BYOK 入口：在官方全站文档索引里检索
BYOK / bring your own / custom endpoint / base URL / model override 是**零命中**，
可用模型是按套餐固定的目录。想用 QCode 的密钥与配额，只能**走 ACP 挂载自己的 agent**：

> 🔑 ACP agent 由 Devin Desktop 以**子进程**方式按需启动，双方通过 stdio 上的 JSON-RPC 通信（官方原文）。
> 官方给出的「给 agent 配环境变量」的做法有两种：Devin User Settings 的 **Agents** 标签里点 "..." 按钮，
> 或在 `settings.json` 里用 `devin.acp.agentEnv.<agentName>` 这个键。
> 至于「自动继承你 shell 的环境变量」，官方**没有**逐字承诺：常见如此但不保证，
> 所以下面第 1 步把配置落到 agent 自己的文件里才稳。

## 第 1 步：把 Claude Code 接到 QCode

```bash
export ANTHROPIC_BASE_URL="https://api.qcode.cc/api"
export ANTHROPIC_AUTH_TOKEN="cr_你的QCode密钥"
```

中国大陆把域名换成 `https://asia.qcode.cc/api`。

> **更稳的做法**是写进 `~/.claude/settings.json` 的 `env` 块，而不是 shell profile ——
> 从图标启动的 GUI 应用读不到 `~/.zshrc`，这是最常见的失败原因。
> 详见 [ACP 接入总览](/docs/ide/acp) 与 [环境变量配置](/docs/getting-started/environment)。

先在终端确认 CLI 能通：

```bash
claude -p "reply with exactly: OK"
```

## 第 2 步：在 Devin Desktop 里挂载 agent

Devin Desktop **内置的只有 Devin Local**。官方文档把 Codex CLI、Claude Agent、OpenCode、Junie、
Gemini CLI 列为 *Example agents*——它们是**可挂载的第三方 ACP agent，二进制得你自己先装好**
（官方明说：出于安全考虑，Devin Desktop 不会直接从注册表下载 agent 分发件）。
自 v3.10.23（2026-09-10）起 ACP 一直启用，原来的 Enable ACP 开关已被移除。挂载方式：

- 命令面板 `Cmd/Ctrl + Shift + P` → `Devin User Settings` → **Agents** 标签 → 勾选要用的 ACP agent
- 或者改本地注册表：macOS / Linux 是 `~/.windsurf/acp/registry.json`
  （Devin Desktop Next 为 `~/.windsurf-next/acp/registry.json`），Windows 是
  `%USERPROFILE%\AppData\Roaming\Code\User\acp\registry.json`
- 命令面板运行 `Open Local ACP Registry Config` 可直接打开该文件；改完执行
  `Reload ACP Connections` 生效，不必重启整个桌面端

字段结构与限制以 [Devin 官方 ACP 文档](https://docs.devin.ai/desktop/acp) 为准。

> ⚠️ 官方警告：工作区处于 **Restricted Mode** 时，**所有** agent（Devin Local 和 ACP agent 都一样）
> 不可用，hooks 也不会加载。如果「agent 一个都不出现」，先看这里。

挂载后在 Devin Desktop 里开一次会话，如果回复正常，说明它已经在用你的 QCode 配额。

## 验证是不是真的走了 QCode

打开 [probe.qcode.cc](https://probe.qcode.cc)，输入你的 API Key。刚才那次会话应当出现在请求列表里
（含模型、tokens、上下文长度）。**看不到就说明 agent 没继承到环境变量**，回第 1 步用
`~/.claude/settings.json` 的写法。

## 常见问题

| 现象 | 原因 | 处理 |
|------|------|------|
| 终端能用，Devin Desktop 里鉴权失败 | GUI 启动读不到 shell 环境变量 | 改用 `~/.claude/settings.json` 的 `env` 块 |
| 找不到 Cascade | 自 v3.9.19（2026-09-08）起已从 Devin Desktop 移除 | 改用 Devin Local，或挂载 ACP agent |
| 找不到填 Base URL 的地方 | 官方文档里没有 BYOK / 自定义端点入口 | 只能走 ACP 挂载 agent |
| probe 里看不到请求 | 会话没走 QCode | 检查环境变量是否被 agent 继承 |

## 相关文档

- [ACP 接入总览](/docs/ide/acp) — 一次配好，Zed / JetBrains 同样生效
- [环境变量配置](/docs/getting-started/environment)
- [接入点与 API 格式](/docs/getting-started/endpoints-and-api-paths)