插件目录 / Developer / dsh-engineering-services
dsh-engineering-services
未验证 wefio
功能简介
LSP+DAP+TASK,但是只支持JS/TS、Python
未验证 — 尚未实测
LSP+DAP+TASK,但是只支持JS/TS、Python 尚未验证——请自行安装测试。
「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-engineering-services
IDE engineering services for DeepSeek Harness (dsh) — a host plugin porting thepi-engineering-services suite: LSP / DAP / Task three pillars + an IDE-tooling usage skill.
| Pillar | What it provides | Entry |
|---|---|---|
| LSP | 12 tools: diagnostics, navigation, rename, workspace symbol | src/lsp/dsh-lsp.ts |
| DAP | debug tool, ~28 actions (debugpy + js-debug) |
src/dap/dap.ts |
| Task | build/test/lint discovery & run (npm / make / just) | src/task/task.ts |
| Skill | usage policy & how-to for the three tool sets | skills/ide-three-pillars/SKILL.md |
| Runbook | install / activate / smoke / troubleshoot | skills/ide-runbook/SKILL.md |
Verified scope (kept from the pi edition)
- LSP: pyright (Python) + typescript-language-server (TS/JS). Others are configurable but experimental.
- DAP: debugpy (Python) + js-debug (JS/TS, vendored). Others are configured but experimental.
- Task: npm scripts / Makefile / justfile.
Language servers and debug adapters beyond this are present in the config but not tested.
Install
# from a local checkout (dev iteration)
cd dsh-engineering-services-dsh
npm i -D typescript # dev typecheck/build tooling (typescript)
npm run build # scripts/build.mjs → tsc emits lib/ + copies vendored dap assets
dsh plugin --profile web add link:$PWD
# restart dsh web + hard refresh, then in a new session:
# lsp_diagnostics on a .ts/.js/.py file
# task list / task run name=...
# debug launch program=... (needs debugpy / js-debug runtimes, see below)
Build tooling note: this package uses a plain Node ESM build (
scripts/build.mjs→tsc+ copy vendoreddap/js-debug/dap/debugpyintolib/). There is no tsdown/bundler.
For tsserver to work, the workspace must resolve atypescript@5withlib/tsserver.js;
see the runbook skill (section tsserver 的标准修法).
The plugin's node half registers the tools through the tools registry and the IDE-tooling
guidance section through the system-prompt registry (both probed at runtime, mirroring dsh-genui).
Configuration (pi-lsp.json)
Language servers are configured with the same schema as the pi edition:
- Project-local:
<workspace>/.dsh/pi-lsp.json - User/global:
~/.dsh/pi-lsp.json
{
"timeout": 20000,
"servers": {
"pyright": { "command": ["pyright-langserver", "--stdio"], "extensions": [".py", ".pyi"] },
"typescript-language-server": { "command": ["typescript-language-server", "--stdio"], "extensions": [".ts", ".tsx", ".js", ".jsx"] }
}
}
Without a config the plugin ships built-in defaults that now include pyright and
typescript-language-server out of the box; the broader list (biome, ruff, etc.) is
experimental — uninstalled default servers are auto-skipped by the tools.
Runtime notes / differences from the pi edition
- cwd: tools default to the calling session's workspace (
exec.agent.session.header.cwd),
not a per-process cwd. Pass an explicitcwd/rootto override. - debugpy: not vendored (pip-installable). Set
DSH_DEBUGPY_PYTHONto any interpreter
that has debugpy installed (test withpython -c "import debugpy"). The default${env:DSH_DEBUGPY_PYTHON|python3.13}is a guess — on many machines it'spython3.13
that lacks debugpy while the systempythonhas it. There is no hard 3.13 requirement;
pick whichever interpreter passes the import check. - js-debug: vendored under
src/dap/js-debug/(its own{"type":"commonjs"}package.json
isolates the CJSdapDebugServer.jsfrom the ESM package root). - No
/lspslash command: the pi edition's/lspcommand is replaced by thelsp_toggle
tool. There is no per-conversation active-tool-set toggle in DSH's host plugin surface. - No pi
ctx.ui.setStatus: the LSP runner's status banner is a no-op in DSH;
results carry the diagnostics/fix/navigation text directly.
Verify (typecheck)
pnpm run check # tsc --noEmit -p tsconfig.json
For offline typechecking, node_modules/@deepseek-ai/* are junctions into an installed@deepseek-ai/dsh profile's packages (dev-only; not committed). A real installed profile
provides the same packages at runtime.
Docs
- DETAILED.md — migration map: how each pi file maps to this port.
- THIRD-PARTY-NOTICES — upstream sources & licenses.
skills/ide-runbook/SKILL.md— operations runbook:
install into a dsh profile, restart, three-pillar smoke, and the tsserver/debugpy/Windows
pitfalls (incl. self-bootstrap verification).
MIT
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-engineering-services」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:wefio/dsh-engineering-services Headless(CLI)profile:
dsh plugin --profile headless add github:wefio/dsh-engineering-services 实测报告
尚未 L3 验证——若已跑过,见下方失败备注。
备注:验证: install-fail (0.1.0-rc.6) 浏览全部待验证失败 →
使用场景
扩展 agent 的编码能力面——给它一个新工具、工作流或集成,让它接手以前做不了的开发任务。
适合谁
想让 dsh 在真实代码库上像队友一样干活的开发者——能改、能跑、能验证,而不只是回答问题。
二次开发建议
工具/命令面就是缝:暴露更多 SDK 能力、加更聪明的上下文接线,或收紧改代码与验证之间的循环。