插件目录 / Developer / dsh-open-in-code
dsh-open-in-code
已验证 · 实测可装 abbno
功能简介
Developer 类别的 DeepSeek Harness 插件。
可用 — 实测通过,早期项目
Developer 类别的 DeepSeek Harness 插件。 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-open-in-code
DeepSeek Harness 插件:在 Web GUI 会话头部一键用 Visual Studio Code 打开当前会话所属的工作区目录。
功能
- 在会话头部右侧工具区显示 "在 VSCode 打开" 按钮(位于 "Session log" 下载按钮左侧)。
- 点击后自动解析当前会话的工作区目录,并在 VS Code 中打开。
- 已运行 VS Code 时:转发到现有实例并立即返回;未运行时:启动新窗口。
安装(分发给其他人)
方式一:通过 Git 仓库(推荐)
接收方执行:
dsh plugin --profile web add git+https://github.com/abbno/dsh-open-in-code.git
安装后 dsh 会自动把包加入 profile 的 dsh.profile.bundles 层列表并生效,重启 dsh web 即可看到按钮。
若 pnpm 要求先放行构建脚本,按其提示在
$DSH_HOME/profiles/web/pnpm-workspace.yaml的allowBuilds中添加该包即可
(本插件纯 JS、无构建步骤,通常无需此操作)。
方式二:本地目录 / tarball
# 本地目录
dsh plugin --profile web add file:D:/path/to/dsh-open-in-code
# 或打完的 tarball
dsh plugin --profile web add ./dsh-open-in-code-0.1.0.tgz
手动编辑 profile(等价方式)
把以下内容加入 $DSH_HOME/profiles/web/package.json 的 dependencies 与dsh.profile.bundles(或直接 pnpm add 后重新运行 dsh,让其自动 reconcile):
{
"dependencies": {
"dsh-open-in-code": "git+https://github.com/abbno/dsh-open-in-code.git"
},
"dsh": {
"profile": {
"bundles": [/* ... */, "dsh-open-in-code"]
}
}
}
工作原理
cordis.patch.yml:profile bundle patch,insert一行挂载本插件的 Loader 条目。lib/index.js(Host):Cordis 插件apply(ctx),注册 DSH 内置命令open-in-vscode——- 从
invocation.agent.session.header.cwd读取会话的工作区目录(回退:注册表中按 session 归属找工作区路径); - 定位 VS Code
Code.exe(%LOCALAPPDATA%\Programs\Microsoft VS Code→ Program Files → PATH 上的codeshim 回溯); subprocess.spawn(['Code.exe', cwd])打开目录,不等待退出即返回成功。
- 从
lib/client.js(Client):window.__ModuleLoader__.load(...)注册到conversation.session.header.utilities插槽(id: open-in-vscode,order: -10,排在 Session log 前),
按钮点击后经 DSH 预置的ctx.remote.commands.execute(sessionId, '/open-in-vscode')
调用 Host 命令(无需自定义 RPC / typert)。
开发
dsh-open-in-code/
├── package.json # dsh.bundle.patch + dsh.client(platform: web)
├── cordis.patch.yml # 挂载行
├── lib/
│ ├── index.js # Host 插件(纯 JS,无构建)
│ └── client.js # Client 插件(__ModuleLoader__ 格式)
├── README.md
└── LICENSE (Apache-2.0)
纯 JavaScript、零构建、零运行时依赖(仅依赖 DSH 内置服务 commands / agents / subprocess / slots / remote)。
License
Apache License 2.0
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-open-in-code」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:abbno/dsh-open-in-code Headless(CLI)profile:
dsh plugin --profile headless add github:abbno/dsh-open-in-code 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。