零配置接入语言服务器,为模型提供诊断、跳转与重构能力
29.7/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/11/2 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add satanfire/dsh-lsp该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · tool
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 4 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 9 处,展示前 9 条)
- 发起网络请求lib/runner.js:428
return await withTimeout(connection.request(method, params, signal), budget, this.spec, method); - 发起网络请求lib/runner.js:460
result = await this.request('textDocument/diagnostic', { textDocument: { uri } }, signal); - 发起网络请求lib/tools.js:178
const result = await session.request('textDocument/formatting', params, exec.signal); - 发起网络请求lib/tools.js:241
const workspaceEdit = await session.request( - 发起网络请求lib/tools.js:319
const actionsPayload = await session.request( - 发起网络请求lib/tools.js:423
? await session.request('workspace/symbol', { query }, exec.signal) - 发起网络请求lib/tools.js:424
: await session.request('textDocument/documentSymbol', { textDocument: { uri } }, exec.signal); - 发起网络请求lib/tools.js:469
const payload = await session.request( - 发起网络请求lib/connection.js:210
const result = await this.request('initialize', params, signal);
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 的零配置 LSP 工具:内置语言服务器目录,按 PATH 探测,外加六个扁平参数工具。
README
由 DeepSeek 最新模型翻译生成DSH LSP
为 DeepSeek Harness 提供 LSP 工具面:装好即用,不需要写一行配置。
插件内置一张语言服务器目录,挂载时按 PATH 逐个探测:找到的启用,找不到的跳过并在报错里点名。模型拿到的 6 个工具全部使用扁平参数,固定上下文成本约 860 tokens。
工具
| 工具 | 作用 | 写盘 |
| lsp_diagnostics | 单个文件的错误与警告 | 否 |
| lsp_symbols | 文件符号大纲,或工作区符号搜索 | 否 |
| lsp_hover | 位置上的类型、签名与文档 | 否 |
| lsp_format | 整文件格式化 | 是 |
| lsp_rename | 语义级重命名,可跨文件 | 是 |
| lsp_code_action | 服务器提供的快速修复与重构 | 否 |
位置统一是 1-based UTF-16,与 read 显示的行列一致。与服务器之间的 0-based 及 utf-8 / utf-32 转换在工具层以下完成。
展开完整文档(README 剩余 1 节)
DSH LSP 为 DeepSeek Harness 提供 LSP 工具面:装好即用,不需要写一行配置。 插件内置一张语言服务器目录,挂载时按 PATH 逐个探测:找到的启用,找不到的跳过并在报错里点名。模型拿到的 6 个工具全部使用扁平参数,固定上下文成本约 860 tokens。 工具 | 工具 | 作用 | 写盘 | | lsp_diagnostics | 单个文件的错误与警告 | 否 | | lsp_symbols | 文件符号大纲,或工作区符号搜索 | 否 | | lsp_hover | 位置上的类型、签名与文档 | 否 | | lsp_format | 整文件格式化 | 是 | | lsp_rename | 语义级重命名,可跨文件 | 是 | | lsp_code_action | 服务器提供的快速修复与重构 | 否 | 位置统一是 1-based UTF-16,与 read 显示的行列一致。与服务器之间的 0-based 及 utf-8 / utf-32 转换在工具层以下完成。 为什么不需要配置 内置目录覆盖 32 个服务器,包含两种主流安装家族: - 编辑器扩展家族:typescript-language-server、vtsls、pyright、pylsp - pi-lsp 家族:biome、ty、ruff、rust-analyzer、gopls、clangd、jdtls、zls、lua-language-server、texlab、tinymist、bash-language-server、yaml-language-server、terraform-ls 等 挂载时每个命令都通过子进程 seam 解析: - 目录条目不在 PATH 上就跳过,之后的「没有服务器认领此文件」会点名列出来,所以缺 rust-analyzer 不会影响 TypeScript; - 显式 servers 配置里的条目不在 PATH 上则是报错,因为那是用户点名的。 一个文件按扩展名路由到目录中第一个匹配的条目。顺序即优先级:类型检查服务器排在 lint / format 服务器之前。 环境要求 - 已配置模型的 DSH,要求 @deepseek-ai/dsh >= 0.2.0。 - Node.js 22 或更新版本。 - 语言服务器本体需自行安装并出现在 PATH 上,插件不代为下载: npm i -g typescript-language-server typescript pyright # TS/JS + Python go install golang.org/x/tools/gopls@latest # Go xcode-select --install # C/C++(clangd) brew install lua-language-server # Lua 安装 以依赖形式固定到某个提交: "@satanfire/dsh-lsp": "https://codeload.github.com/satanfire/dsh-lsp/tar.gz/<commit-sha>" 或用 CLI 从仓库安装(会读取仓库根目录的 package.json): dsh plugin --profile web add github:satanfire/dsh-lsp 本地开发时可直接指向 checkout: git clone https://github.com/satanfire/dsh-lsp.git dsh plugin --profile web add "$PWD/dsh-lsp" 装完重启 dsh web。插件默认启用,不需要在设置页打开开关。 配置(可选) 空的配置行就是有效配置。只有想替换目录,或表达目录无法描述的服务器时才需要: - id: lsp-auto config: servers: ts: command: typescript-language-server args: ["--stdio"] extensionToLanguage: ".ts": typescript ".tsx": typescriptreact projectMarkers: ["package.json", "tsconfig.json"] 非空 servers 表整体替换内置目录而不是合并:一张只列了一个服务器的表,不应该悄悄带回其余十七个默认项。 其余键均可选:maxDiagnostics(200)、maxSymbols(100)、maxCodeActions(50)、maxResultChars(16000)、maxDiffLines(60)、maxDocumentBytes(8 MiB)、timeoutMs(60000)。 已知限制 - 一个文件只路由到一个服务器。ty + ruff、biome + tsc 这类互补组合不会同时运行;此时诊断只来自其中一个。 - LSP 根目录等于会话工作目录。请在项目目录中开会话,否则 tsc 找不到 tsconfig.json,诊断会充满 "Cannot find module" 噪声。 - 目录条目的 initializationOptions 未内置,需要时通过 servers 配置覆盖。 设计说明 - 会话复用:每个(服务器,工作区根)一个会话,首次调用时懒启动,之后复用。 - 双通道诊断:先拉取(pull),再与最后一次 publishDiagnostics 合并去重。服务器在分析未完成时用空列表回答 pull 的情况,会先等一小段静默窗口,而不是当成「无问题」。 - 写盘走 harness 文件系统 seam:调用读取之后文件被外部改过,会以冲突失败而不是静默覆盖。 - 卸载回收子进程:插件卸载时先走协议 shutdown/exit,再在 grace 之后调用子进程 seam 的 terminate()——忽略 exit 的服务器不能活过会话。 可选的后续增强 - 按项目标记(tsconfig.json / package.json / pyproject.toml)自动选择 LSP 根目录。 - 单文件多服务器合并诊断。 致谢 - 协议层与工具架构来自 dsh-tool-lsp(MIT)。 - 内置目录与「探测-跳过」策略来自 @narumitw/pi-lsp(MIT)。 许可 MIT,见 LICENSE。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
satanfire/dsh-lsp
零配置接入语言服务器,为模型提供诊断、跳转与重构能力
相关插件 · 工具 / 效率
破甲管控台kingcharleslzy-ai/dsh-purge
dsh-purge Community · DeepSeek Harness 社区维护版:宿主兼容、状态诊断、提示词管理、更新与本机备份回滚。基于小杨 / YuJunZhiXue 的 dsh-purge。
★ 4,330已汉化DeepSeek 客户端
74.5
网文长卷lingfengQAQ/webnovel-writer
基于 Claude Code 的长篇网文辅助创作系统,解决 AI 写作中的「遗忘」和「幻觉」问题,支持 200…
★ 7,826已汉化DSH
72.2
花束设计alchaincyf/huashu-design
一句话生成网页、原型、PPT 与信息图等可交付设计
★ 28,638已汉化DSH
71.7
多智能体协作HKUDS/AutoSwarm
AutoSwarm: Unify Your Agents. Unify Your Context (Codex · Claude Code · DeepSeek Harness · Muse · Grok · WorkBuddy· nanobot · and more)
★ 2,349已汉化DSH
71.6
Vox 拼贴视频生成Alisa0808/vox-director
🎬 Vox Director拼贴动效导演
★ 2,129已汉化DSH
71.4
Agent 演化引擎Q00/ouroboros
智能体 OS:智能体自己变聪明,我们只守住底线:面试准入、分阶段评估、带预算的进化循环。MCP 服务器,14 种运行时:Claude Code、Codex CLI、Gemini CLI、OpenCode、Copilot、Kiro 等。
★ 6,311已汉化DSH
71.4
这是你的仓库?认领条目