> 开源地址:https://github.com/auspiceflow/dsh-vscode (MIT 协议,欢迎 Star ⭐)

> 一句话:给 dsh 原生加一个 VS Code 的窗口——上下文管理、工具调用、任务执行全部由 dsh 自己完成,不经过任何中间层。

## 一、为什么要做这个插件

DeepSeek Harness(`dsh`)本身就是一个完整的 Agent 框架:**统一上下文管理、工具调用、任务执行、子代理、审批流**全部内置。但它的原生入口是 Web GUI 和终端——写代码时,你不得不离开编辑器,在浏览器和 IDE 之间反复切换。

市面上的常见做法,是把 dsh「塞进」另一个框架:比如通过 Claude Code 或其他 Agent 客户端间接调用。这条路的问题在于**每多一道中转,就要多付一道成本**:

- dsh 的输出要被翻译成另一套协议,prompt 被改写、上下文在两个系统之间来回搬运

- 翻译层本身就是 token 消耗——你花的每一分钱里,都有一部分在给「转接」买单

- 更糟的是语义损耗:dsh 的上下文管理策略(压缩、skill、预设)经过中间层曲解后,能力会打折扣

**这个插件的思路反过来了:不引入任何中间层,给 dsh 原生加一个 VS Code 的窗口。** 扩展直接复用 dsh 官方 Web GUI 的同一套主机 API,把整个框架原样搬进编辑器侧边——dsh 的上下文管理、工具调用、任务执行**原封不动地工作**,零适配、零翻译、零额外 token。

## 二、核心创新点

**1. 协议级原生,不是桥接**

扩展通过 dsh 官方主机 API(RPC + WebSocket 事件流)驱动框架——这正是 dsh 网页客户端自己用的协议。没有抓包、没有 hack、没有协议翻译,dsh 升级新能力,扩展自动获得。

**2. 每个工作区一个独立 dsh 实例**

VS Code 打开哪个文件夹,扩展就为它启动一个 `dsh web`,工作区根 = 该文件夹。上下文、会话、工具操作天然隔离,安全边界清晰;关闭窗口实例自动退出。

**3. 会话在 dsh 侧原生持久化**

会话存在 dsh 自己那里。你在 VS Code 面板、浏览器 GUI、终端之间切换,看到的是**同一个会话**——历史、工具轨迹、目标状态完全一致。

**4. 流式体验 + 工程韧性**

token 级流式渲染、工具调用过程可视化、审批确认按钮、Agent 提问直接作答。底层还有 WebSocket 断线自动重连、失败降级轮询的兜底,网络抖也不丢对话。

**5. 零依赖、免编译、打 tag 即发版**

扩展本体零运行时依赖、纯 JS 免编译;仓库自带端到端冒烟测试和 GitHub Actions,推 `v*` tag 自动测试、打包、发布 Release。

## 三、功能一览

- **右侧聊天面板**:编辑器标题栏右上角 dsh 图标,点击弹出/收起,就像 Claude Code 一样

- **逐字流式输出**:token 级渲染,不用等一整段

- **多轮会话记忆**:会话持久化,关面板重开历史自动恢复

- **工具调用可视化**:bash、文件读写、搜索等工具的执行过程实时展示

- **审批确认按钮**:Agent 需要写文件/执行命令时,在聊天里点「允许/拒绝」

- **Agent 提问交互**:dsh 反问你时直接在面板作答

- **工作区绑定**:项目隔离互不干扰

- **Full GUI 侧边栏**:需要完整网页版功能(目标、任务、技能)时一键切换

## 四、三分钟安装

### 前置

- Node.js ≥ 18

- VS Code ≥ 1.85

- DeepSeek API Key(https://platform.deepseek.com 申请)

### 第 1 步:安装 dsh 命令行工具

```bash

npm install -g @deepseek-ai/dsh

dsh --version   # 验证

```

### 第 2 步:配置 API Key(三选一)

方式一,环境变量(PowerShell):

```powershell

setx DEEPSEEK_API_KEY "sk-你的密钥"

```

方式二,可视化:运行 `dsh web` 打开 GUI → 设置 → Models 页填入密钥。

方式三,文件:在 `C:\Users\<用户名>\.dsh\.env` 写入 `DEEPSEEK_API_KEY=sk-...`。

验证:`dsh --profile headless "说一句你好"` 能回复即成功。

### 第 3 步:安装扩展

到 [Releases](https://github.com/auspiceflow/dsh-vscode/releases) 下载最新的 `dsh-vscode-x.y.z.vsix`:

```powershell

code --install-extension dsh-vscode-x.y.z.vsix

```

### 第 4 步:使用

1. `Ctrl+Shift+P` → `Developer: Reload Window`

2. 打开任意项目文件夹

3. 点编辑器**右上角 dsh 图标** → 右侧弹出聊天面板,开始对话

4. 选中代码 → `Ctrl+Shift+P` → `dsh: Ask About Selection…`,选区会作为上下文带给 dsh

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐