dsh2vs — VS C++ bridge (unofficial)

Registre officiel Outils de développement

Unofficial, independent (not DeepSeek AI/Microsoft). VS C++ build+debug via MSBuild and cdb.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

MCPB package https://github.com/aaalzk/dsh2vs/releases/download/v0.1.0/dsh2vs-0.1.0.mcpb

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. 安装:两步,先起桥,再接 DSH
  2. 这是什么(30 秒版)
  3. 为什么不用现成的 VS MCP 插件
  4. 与现有 MCP 的关系(不重复造轮子)
  5. 文档
  6. 反馈与许可

# dsh2vs

中文 · English

让你的 AI 助手(DSH 或任何 MCP 客户端)真正"动手"操作 Visual Studio 的 C++ 工程:加载项目、编译、断点调试、崩溃取证。

不装 VS 插件,不需要 Visual Studio 开着,不会弹出「项目已过期,是否重新生成」这种没人点的对话框。

⚠️ 非官方、独立第三方项目

dsh2vs 是独立开发者 aaalzk 的个人项目,与 DeepSeek AI、Microsoft 以及 Model Context Protocol 项目均无隶属关系,也未获其认可或背书。 名字里的 "dsh" 指 DeepSeek Harness(它对接的工具)、"vs" 指 Visual Studio(它驱动的对象)—— 两者都只是被本项目从外部调用的第三方产品。本项目不发行、不代表、不打包其中任何一个。


安装:两步,先起桥,再接 DSH

dsh2vs 由两个独立部分组成,只装一半会连上一个不存在的地址:

部分是什么怎么装
① 桥一个 .NET 程序,真正调 MSBuild 编译、起 cdb 调试、分析崩溃下载绿色版解压即用,或自己 dotnet build
② DSH 插件一个纯配置包,只负责告诉 DSH「桥在 127.0.0.1:8790」dsh plugin --profile web add dsh2vs
DSH  ──MCP──▶  ② 插件(6 行 YAML:告诉 DSH 打哪个号码)
                    │
                    ▼  HTTP
                ① 桥(真正干活儿的 .NET 程序)
                    ├─▶ MSBuild.exe      编译
                    ├─▶ cdb.exe          调试
                    └─▶ 崩溃 dump + 报告
第 1 步:起桥

A. 绿色版(推荐:不用装 .NET SDK、不用 git、不用编译)

去 Releases 下载 dsh2vs-win-x64.zip,解压后运行:

.\Dsh2Vs.Server.exe --Dsh2Vs:WorkspaceRoot=D:\Projects\你的C++工程

B. 源码构建(要改代码才需要)

git clone https://github.com/aaalzk/dsh2vs.git
cd dsh2vs; dotnet build
.\scripts\start.ps1 -Workspace D:\Projects\你的C++工程

C. MCPB 单文件包(给 Claude Desktop 等支持 MCPB 的客户端)

从 Releases 下载 dsh2vs-0.1.0.mcpb(自带 .NET 9 运行时,约 43 MB), 直接用 Claude Desktop 打开即可;或解压后手动以 stdio 模式启动:

.\Dsh2Vs.Server.exe --stdio

stdio 模式下 stdout 只走 MCP 协议,日志全部写 stderr,不会污染通信。

第 2 步:接到 DSH
dsh plugin --profile web add dsh2vs

(npm 不通时用源码安装:dsh plugin --profile web add github:aaalzk/dsh2vs)

重启 DSH 会话(MCP 连接只在会话启动时加载),mcp__vs__* 那 40+ 个工具就会出现。

⚠️ 只装插件、桥没起 → DSH 会明确报错(failOnStartupError: true),不会静默丢工具。 顺序一定是:先确认 healthz 返回 ok,再装插件。

确认桥活着
(Invoke-WebRequest http://127.0.0.1:8790/healthz -UseBasicParsing).Content
{"status":"ok","name":"dsh2vs","version":"0.1.0","msbuild":"...MSBuild.exe"}

status 是 degraded 说明没找到 MSBuild —— 见常见问题。


这是什么(30 秒版)

  • 一个常驻后台的小服务,把「VS 能干的那三件 C++ 的事」变成 HTTP 接口:加载工程 / 编译 / 调试。
  • AI 助手通过 MCP 调用它,就能自己改代码、编译、下断点、看调用栈和变量,不需要你在电脑前点按钮。
  • 它不是 VS 插件、不是在 VS 里聊天的机器人、也不替代 VS —— 你想看界面时随时自己打开 VS。

适合谁:让 AI 在无人值守/远程机器上跑 C++ 项目;需要「编译报错 → 改代码 → 再编译」自动循环;想摆脱「一弹窗就卡住、还得人工点」。

不适合谁:只想在 VS 里跟 AI 聊天(用 Claude Code / cv4vs 那类插件更合适);需要 VS 调试器图形界面;需要调试托管 .NET。

为什么不用现成的 VS MCP 插件

Unofficial-VS-MCP、VS-MCPServer、cv4vs-agents 都是进程内方案:工具调用最终要回到 VS 的 UI 线程。于是 VS 一弹模态框,调用就阻塞,只能等人点;RDP 断开、锁屏、VS 重启都会让连接挂掉。

场景进程内插件dsh2vs
VS 弹「项目已过期」对话框调用卡住,等人点不经过 VS,没有这个弹窗
RDP 断开 / 锁屏UI 自动化失效无影响
VS 崩溃或重启连接断开,要人工恢复服务独立,重连即用
客户端重启要重新拉起 stdio 代理进程固定一个 URL,一直在

结论:C++ 的加载、编译、调试,没有一样必须由 VS 进程提供。桥就做桥。

与现有 MCP 的关系(不重复造轮子)

生态里已有同类,我们不装作没有。完整对照见下,边界一句话:如果你只想要"会跑 cdb 的 MCP",那别用本项目 —— mcp-windbg 更成熟(1700+ star、支持内核与 TTD)。

项目关系
mcp-windbg调试原语重叠,它比我们深
微软官方 WinDbg MCP(WinDbg 内置)要 GUI 交互,无人值守用不了 ← 我们的位置
VS-MCPServer / VS IDE Bridge进程内,VS 必须运行
msbuild-mcp-server构建原语重叠,但没有"编译完接着调试"
dsh2vs从 .sln 出发的无人值守闭环 + 诊断层

三条只有我们做的:

  1. 不依赖任何 GUI —— 整条链路都不碰 VS:构建走 MSBuild CLI,调试走 cdb 子进程。
  2. 工程感知 —— 别人给你 debugger,你得自己告诉它 exe 在哪;我们从解决方案和配置推出来。
  3. 诊断层 —— 启动失败直接给 0xC0000135 + 缺哪个 DLL;卡在弹窗直接判定"CRT 断言,不是死锁";崩溃自动 dump + 报告。

文档

想看去看
全部 40+ 个工具怎么用docs/tools.md
配置项、多工作区、让它常驻docs/configuration.md
常见问题(12 条)、已知限制、源码构建细节docs/faq.md
目录结构、路线图、给 agent 的 Skilldocs/development.md
架构决策记录(ADR-001…009)docs/design.md
面向 AI agent 的完整操作流程skills/dsh2vs/SKILL.md

反馈与许可

  • 开 issue:bug 请附上 healthz 输出、VS 版本、artifacts/ 下的构建日志片段。
  • MIT © 2026 aaalzk
GitHub 直连不通?

作者搭建了一个加速服务:https://gh.223456.xyz/

服务本身只是部署:跑的是第三方开源的 GitHub 代理镜像程序,Docker 镜像来自该上游项目, 非本项目开发或构建,作者只提供部署与带宽,不对其实现与安全性背书。

git clone https://gh.223456.xyz/github.com/aaalzk/dsh2vs.git
git clone https://gh.223456.xyz/github.com/<任意仓库>.git

支持 git clone / git ls-remote / raw 文件下载;网页浏览不支持(会返回 400),看网页请走原站。

Questions fréquentes

Qu'est-ce que dsh2vs — VS C++ bridge (unofficial) ?

Unofficial, independent (not DeepSeek AI/Microsoft). VS C++ build+debug via MSBuild and cdb.

Comment installer dsh2vs — VS C++ bridge (unofficial) ?

Suivez les étapes d'installation de sa documentation, affichée sur cette page et dans son dépôt.

Faut-il une clé API pour dsh2vs — VS C++ bridge (unofficial) ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

dsh2vs — VS C++ bridge (unofficial) est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient dsh2vs — VS C++ bridge (unofficial) ?

Il est publié par aaalzk. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.