🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

VS Code 侧栏助手 MJ-Chang/dsh-vscode

DeepSeek Harness
MJ-Chang74 天前有提交已提供中文文档扫描:含敏感能力

在编辑器右侧边栏对话,让 AI 读写项目并执行命令

30.2/100
综合分
4
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add MJ-Chang/dsh-vscode
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · dev
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
数据截至 2026/11/03·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 74 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包deepseek-harness-chat(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/7 10:41:00

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 29 处,展示前 26 条)
  • 写入本地文件
    esbuild.mjs:37
    mkdirSync(join(root, 'dist'), { recursive: true })
  • 写入剪贴板
    src/chatView.ts:210
    await vscode.env.clipboard.writeText(message.text)
  • 读取本地文件
    src/chatView.ts:302
    const content = readFileSync(uri.fsPath, 'utf8')
  • 读取本地文件
    src/chatView.ts:354
    const template = readFileSync(
  • 读取本地文件
    src/node-resolve.ts:36
    if (candidate !== undefined && candidate !== '' && existsSync(candidate)
  • 读取本地文件
    src/node-resolve.ts:47
    return existsSync(cli) ? cli : undefined
  • 写入本地文件
    src/plugins.ts:73
    await mkdir(dir, { recursive: true })
  • 读取本地文件
    src/plugins.ts:78
    await readFile(ownManifest, 'utf8')
  • 写入本地文件
    src/plugins.ts:80
    await writeFile(ownManifest, JSON.stringify({
  • 读取本地文件
    src/plugins.ts:107
    const entries = await readdir(dir, { withFileTypes: true })
  • 读取本地文件
    src/plugins.ts:141
    manifest = JSON.parse(await readFile(path.join(pkgDir, 'package.json'), 'utf8')) as typeof manifest
  • 读取本地文件
    src/plugins.ts:152
    await readFile(candidate)
  • 读取本地文件
    src/plugins.ts:164
    manifest = JSON.parse(await readFile(path.join(dir, 'package.json'), 'utf8')) as typeof manifest
  • 读取本地文件
    src/plugins.ts:173
    patchData = parseYaml(await readFile(path.join(dir, patch), 'utf8'))
  • 写入本地文件
    src/plugins.ts:199
    await mkdir(dir, { recursive: true })
  • 写入本地文件
    src/plugins.ts:219
    await writeFile(userConfigPath(paths), content, 'utf8')
  • 写入本地文件
    src/plugins.ts:269
    await mkdir(path.dirname(target), { recursive: true })
  • 写入本地文件
    src/plugins.ts:270
    await writeFile(target, stringifyYaml(rows), 'utf8')
  • 删除本地文件递归
    src/plugins.ts:276
    await rm(pluginsDir(paths), { recursive: true, force: true })
  • 发起网络请求
    src/runtime.ts:156
    await client.request('session/setMode', { sessionId: this.sessionId, mode }, 5_000)
  • 写入本地文件
    src/runtime.ts:199
    await mkdir(sessionsRoot, { recursive: true })
  • 发起网络请求
    src/runtime.ts:285
    const result = await client.request(
  • 发起网络请求
    src/runtime.ts:317
    const result = await client.request('models/list', {}, 5_000) as { models?: ModelInfo[] }
  • 发起网络请求
    src/runtime.ts:330
    const result = await client.request('session/list', {}, 5_000) as { sessions?: SessionInfo[] }
  • 发起网络请求
    src/runtime.ts:345
    const result = await client.request('presets/list', {}, 5_000) as { presets?: PresetInfo[] }
  • 发起网络请求
    src/runtime.ts:359
    await client.request('session/new', {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/cordis-plugin-timer@deepseek-ai/dsh-agent@deepseek-ai/dsh-agent-instructions@deepseek-ai/dsh-agent-loop@deepseek-ai/dsh-agent-presets@deepseek-ai/dsh-agent-spine-demo@deepseek-ai/dsh-bash-local@deepseek-ai/dsh-bash-sandbox@deepseek-ai/dsh-compaction-basic@deepseek-ai/dsh-fs@deepseek-ai/dsh-fs-local
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 侧栏对话智能体
  • 读写项目文件
  • 执行项目命令

DeepSeek Harness 的 VS Code 版:右侧聊天智能体,能读、能改、能跑你的项目——像 Claude Code / Codex / Copilot 那样。

README

由 DeepSeek 最新模型翻译生成
dsh-vscode — 适用于 VS Code 的 DeepSeek Harness GitHub Release CI License: MIT VS Code 在 VS Code 右侧边栏使用 DeepSeek Harness 的聊天 agent——像 Claude Code / Codex / Copilot 一样,直接对话让它读取、编辑你的项目并执行命令。Everything is a plugin:整套东西(扩展功能 + harness bridge 插件)都以插件形式组装在 DeepSeek Harness 之上。 安装 方式一:下载安装包(最简单,推荐) 1. 到 Releases 页面 下载 deepseek-harness-chat-0.2.0.vsix (直链:deepseek-harness-chat-0.2.0.vsix) 2. 安装(任选一种): - VS Code 扩展面板 → ⋯ → Install from VSIX... → 选择刚刚下载的文件;或 - code --install-extension deepseek-harness-chat-0.2.0.vsix 3. 重载窗口(若原本开着):Ctrl+Shift+P → Developer: Reload Window
展开完整文档(README 剩余 1 节)
dsh-vscode — 适用于 VS Code 的 DeepSeek Harness

GitHub Release
CI
License: MIT
VS Code

在 VS Code 右侧边栏使用 DeepSeek Harness 的聊天 agent——像 Claude Code / Codex / Copilot 一样,直接对话让它读取、编辑你的项目并执行命令。Everything is a plugin:整套东西(扩展功能 + harness bridge 插件)都以插件形式组装在 DeepSeek Harness 之上。

安装

方式一:下载安装包(最简单,推荐)

1. 到 Releases 页面 下载 deepseek-harness-chat-0.2.0.vsix (直链:deepseek-harness-chat-0.2.0.vsix)
2. 安装(任选一种):
- VS Code 扩展面板 → ⋯ → Install from VSIX... → 选择刚刚下载的文件;或
- code --install-extension deepseek-harness-chat-0.2.0.vsix
3. 重载窗口(若原本开着):Ctrl+Shift+P → Developer: Reload Window

之后 VS Code 右侧边栏会出现 DeepSeek Harness 图标,点开 → 输入 API key → 开始使用。

Marketplace 版本上架后也会出现在扩展搜索中。

方式二:自行打包(开发者)

见 CONTRIBUTING.md。

开始使用

1. 打开一个项目文件夹(File → Open Folder)——聊天框需要一个工作区才能操作文件
2. 打开聊天框:点右侧边栏的 DeepSeek Harness 图标;或 Ctrl+Shift+P → DeepSeek Harness: Open Chat(若右侧栏没开,先 View: Toggle Secondary Side Bar)
3. 输入 API key:第一次打开会显示设置界面,粘贴 sk-... → Connect。key 存在 VS Code SecretStorage;也可改用环境变量 DEEPSEEK_API_KEY 或工作区 .env(优先级:SecretStorage → 环境变量 → .env)
4. 开始对话:输入框打字 → Enter 发送;助手回复流式显示,工具调用以卡片展开

发送栏控件:

| 控件 | 作用 |
| 📎 | 附加文件(VS Code 选文件对话框),内容会随消息发送给模型 |
| model ▾ | 切换模型(deepseek-v4-flash / deepseek-v4-pro…),切换即开新对话 |
| Workspace ▾(色标) | 权限模式:Read-only(红)/ Workspace(蓝)/ Full access(橙,需确认) |
| 0↑ · 0↓ | 本对话 token 用量(输入/输出) |
| history ▾ | 历史对话(含标题)——点选续接 |
| preset ▾ | agent preset:default(shell + fs + todo)/ minimal(仅文件工具) |
| Send / Stop | 发送 / 忙碌时变为 Stop 可中止 |

其他:顶部工作区名称——多 root 工作区点击可切换 agent 操作的文件夹,单文件夹点击复制路径;DeepSeek Harness: Set API Key / Clear API Key 命令可事后管理 key。

功能

- 右侧边栏聊天框,使用 VS Code 主题配色
- 流式回复(每 frame 节流渲染,长回复不卡顿);回合失败直接显示错误信息(例如没设 API key 不会看到空白回复)
- 工具调用卡片(bash / read / write / edit / grep / glob…):默认折叠、出错自动展开
- 模型选择、历史续接(含标题)、agent preset、附件
- 权限模式即时切换,切到 Full access 需要确认
- 多 root 工作区切换;切换对话前自动中止进行中的回合(不留后台孤儿)
- harness 插件管理:Install Plugin(npm / git / 路径)——「一切皆插件」在嵌入式 runtime 一样成立
- Windows 上执行命令不会闪 console 窗口

需求

- VS Code ≥ 1.90
- DeepSeek API key(可在聊天框内输入,或环境变量 / .env)
- Node.js(建议,非必须):有装的话 Windows 上执行命令不会闪窗口;没装也能用,但 shell 命令可能闪出 console 窗口
- npm / pnpm 不需要:核心功能不碰包管理器;只有可选的「Install Plugin」功能需要 Node.js 附带的 npm

设置
| Key | 默认 | 说明 |
| dshVscode.model | deepseek-v4-flash | 对话使用的模型 |
| dshVscode.apiKeyEnv | DEEPSEEK_API_KEY | 存放 API key 的环境变量名称 |
| dshVscode.workspaceWriteOnly | true | 限制 agent 只能操作工作区;false = 完整文件权限(小心) |

它是如何运作的

扩展功能背后是一个真正的 DeepSeek Harness runtime 子进程(不是包装 API 的玩具):runtime/cordis.yml 组出完整插件树——sandbox、session persistence、compaction、token-meter、agent presets、stdio JSON-RPC bridge——所以 harness 的插件架构、沙箱策略与持久化在 VS Code 里全部保留。

VS Code (Webview 聊天框) │ postMessage Extension host (spawn + 事件转译) │ stdio JSON-RPC Harness runtime 子进程(sandbox + 文件/命令工具 + LLM)

安全

详见 SECURITY.md。重点:API key 存 SecretStorage;默认 sandbox 只允许操作工作区;Webview 严格 CSP + 文本全转义;「Install Plugin」等同执行任意代码,只装你信任的插件。

已知限制(v1)

- 内置 Markdown 渲染支持标题/列表/代码块/粗体/斜体/链接;表格、引用等进阶语法尚未支持
- 无 ask 权限流程:需要人工批准的操作直接拒绝(由 sandbox 当安全边界)
- 尚未包含 subagent / workflow / MCP 等进阶能力(v2 候选)
- 版本跟随 DeepSeek Harness 的 0.1.0-rc.x(上游为开发者预览,可能有 breaking changes)

开发与贡献

开发者请见 CONTRIBUTING.md;打包、发布 Marketplace 与 GitHub Release 的步骤见 PUBLISHING.md。

License

MIT(LICENSE)。第三方依赖与授权清单见 THIRD_PARTY_NOTICES.md。
预览分享卡片长什么样 ↓MJ-Chang/dsh-vscode
分享 · DeepSeek Harness Hub
MJ-Chang/dsh-vscode

在编辑器右侧边栏对话,让 AI 读写项目并执行命令

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部