逐跳检查本地桥链路,定位首个断点并给出修复建议
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add yangjinbin2006/dsh-doctor该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/22) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0⚪ 扫描:无法判定尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。
- · 包内无可扫 JS
- · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/10/31(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
检查 DeepSeek Harness 的本地桥接配置:配置、TCP、/v1/models、一次真实对话请求,把上游错误码转成原因和修复方法。
README
由 DeepSeek 最新模型翻译生成dsh-doctor
一个给 DeepSeek Harness 做链路检查的小工具,专治挂了本地桥之后的各种不通。
dsh 本身可以接任何 OpenAI 兼容端点。前面加一层桥之后,大部分故障在聊天窗口里长得一样:
一个 400、一坨 JSON、一个错误码。错误码是唯一线索,但它基本不指向真正出问题的地方。
这个工具把链路按顺序走一遍,遇到第一处断点就停下:配置文件、TCP、/v1/models、一次真实对话请求。输出会告诉你是哪一跳失败,以及可以改什么。
只用 Python 标准库,3.8 以上,Windows、macOS、Linux 都能跑。
python dsh_doctor.py
链路正常时:
dsh-doctor 1.0.0
[ OK ] dsh-home found dsh home
[ OK ] patch-layer using ~/.dsh/profiles/desktop/cordis.patch.yml
[ OK ] provider local-bridge -> http://127.0.0.1:8080/v1, 3 model(s) [supportsDeveloperRole=false, thinkingFormat=openai]
chat-model, long-context-model, vision-model
展开完整文档(README 剩余 1 节)
dsh-doctor 一个给 DeepSeek Harness 做链路检查的小工具,专治挂了本地桥之后的各种不通。 dsh 本身可以接任何 OpenAI 兼容端点。前面加一层桥之后,大部分故障在聊天窗口里长得一样: 一个 400、一坨 JSON、一个错误码。错误码是唯一线索,但它基本不指向真正出问题的地方。 这个工具把链路按顺序走一遍,遇到第一处断点就停下:配置文件、TCP、/v1/models、一次真实对话请求。输出会告诉你是哪一跳失败,以及可以改什么。 只用 Python 标准库,3.8 以上,Windows、macOS、Linux 都能跑。 python dsh_doctor.py 链路正常时: dsh-doctor 1.0.0 [ OK ] dsh-home found dsh home [ OK ] patch-layer using ~/.dsh/profiles/desktop/cordis.patch.yml [ OK ] provider local-bridge -> http://127.0.0.1:8080/v1, 3 model(s) [supportsDeveloperRole=false, thinkingFormat=openai] chat-model, long-context-model, vision-model [ OK ] tcp 127.0.0.1:8080 reachable (11ms) [WARN] auth-source env BRIDGE_API_KEY is NOT set in this process fix: - Set the environment variable, then fully restart dsh so it inherits it. [ OK ] models 3 model(s) served [ OK ] chat round-trip OK via 'chat-model' 6 ok, 1 warning(s), 0 failure(s) 真出问题时,返回体被替换成看得懂的说明: [FAIL] chat POST /v1/chat/completions -> 400 [11128] The upstream gateway rejected the request because the client does not look like an approved channel. That is a request-fingerprint check. The API key is usually fine. fix: - 把桥升级到会改写客户端身份(提示词前缀、User-Agent)的版本。 - 有些客户端会发 developer 角色,上游不接受。在 provider 的 compat 里设 supportsDeveloperRole: false。 - 用 curl 直接打同一个端点复测。curl 通而客户端不通,就是指纹问题。 为什么从配置文件查起 dsh 的 provider 配置放在 ~/.dsh/profiles/<profile>/cordis.patch.yml。它不是普通配置 文件,而是 YAML 数组形式的 loader patch,出错时不会报错:providers: 下面缩进错一格, provider 就直接从模型列表里消失,没有任何提示。 同时这个文件也是大家贴 API Key 的地方,所以它既制造"跑不起来",也制造"key 泄露"。 dsh-doctor 直接解析这个结构,因此能指出客户端只会笼统报 400 的那些问题。 检查项 | 检查项 | 输出内容 | | dsh-home | dsh 的状态目录在哪里,识别 DSH_HOME | | patch-layer | 当前生效的补丁文件,以及还存在哪些 | | provider | llm-pi-ai 下每个 provider 的 baseURL、模型数量、compat 标志 | | secret | YAML 里明文的 apiKey:,带行号 | | tcp | baseURL 里的 host 和 port 能不能连上,耗时多少 | | auth-source | apiKeyEnv 指定的变量在当前进程里存不存在 | | models | GET /v1/models 结果,以及声明了但端点没提供的 id | | chat | 用默认模型发一次 max_tokens=16 的请求 | 错误码对照 | 编码或特征 | 含义 | | 11128 Illegal API invocation from an unapproved channel | 请求指纹被拒,不是鉴权问题。一般是桥版本旧,或者带了 developer 角色消息。 | | 11140 | 账号对这个模型没有权限。换出口重试只是白烧额度。 | | no usable account | 桥在跑,但该路由下账号池为空。 | | 429 / rate limit | 被限流。退避、加账号,或者开跨出口回退。 | | 401 / invalid api key | dsh 进程没继承到这个环境变量,或者 key 过期了。 | | model not found | 声明的 id 和端点实际提供的不一致,大小写敏感。 | | developer ... not supported | 设 supportsDeveloperRole: false。 | | context length | contextWindow 写得比上游允许的大。 | 更详细的排查记录在 docs/error-codes.md。 参数 --profile NAME 只检查这个 profile --json 机器可读输出 --timeout SECONDS 网络超时,默认 30 --skip-network 只查配置,不发请求 --proxy 走系统代理,默认关闭 --no-color 关闭 ANSI 颜色 --proxy 默认关闭是有原因的。企业代理和沙箱代理经常让一个正常运行的本地桥返回 502,所以工具默认直连。 退出码 0 表示全部通过或只有警告,1 表示至少一处失败。可以直接放进 CI,不用再解析输出。 说明 - 对话探测只发 16 个 token,--skip-network 则一个请求都不发。 - 不会完整打印密钥,最多显示成 sk-02****abcd。 - 只读,不写任何文件。 - 完整样例在 examples/report-sample.txt。 相关项目 - dsh-config-gen:生成并校验本工具检查的补丁层。 许可 MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
yangjinbin2006/dsh-doctor
逐跳检查本地桥链路,定位首个断点并给出修复建议
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,462已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,848已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,246已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 4,717已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,711已汉化DSH
71.1