前言¶
在 DeepSeek Harness(DSH)里接自建网关、第三方中转或兼容 OpenAI / Anthropic 协议的端点时,模型能力往往要在 cordis.patch.yml 里手写 provider 与 models 条目。与 @WorkBuddy-ai/dsh-llm-pi-ai 配合使用时,模型是否支持图片,取决于 YAML 里有没有 input 字段:未声明时按纯文本处理,本地会拦截带图请求并提示不支持 image input。
手改几百行 YAML 时,缩进和列表层级很容易出错,还可能破坏原有注释与格式。dsh-pi-ai-patch 把「是否声明 text + image」做成设置面板里的勾选框,只改 DSH 侧的模型声明,不碰 API 与网络请求本身。
这是什么¶
dsh-pi-ai-patch 是维护者 sdwf4wgv5z-rgb 发布的 DSH 客户端插件(社区目录:SkillHub 条目)。定位是 cordis.patch.yml 的可视化配置模板工具:对你指定的模型写入或移除如下片段,其余 YAML 内容尽量原样保留。
input:
- text
- image
勾选后 DSH 会认为该模型可收图,本地拦截不再触发,上传的图片会随请求发到你配置的端点;端点是否真能识图,由你的 API 决定。声明与能力不符时,错误可能从 DSH 本地提示变为上游返回的错误。
它做什么,不做什么¶
插件只做一件事:在目标模型条目下增加或删除 input 列表(text / image)。它不会给 API 增加能力,不会改写请求体,不会访问外网业务逻辑。
在 dsh-llm-pi-ai 中,input 是模态声明;默认等价于 ["text"]。因此本插件解决的是「声明与使用意图一致」,而不是替后端实现多模态。
核心功能¶
下面能力均来自仓库 README 与 package.json 说明。
- 设置 → 识图配置:按 provider 分组列出模型,勾选即写入
input: [text, image](或仅 text 相关组合),取消即移除该字段。 - 安全编辑:行级、字节级编辑,尽量保留注释、键顺序与引号风格;写入前做 YAML 校验,解析失败则放弃写入。
- 自动备份:每次保存前备份为
cordis.patch.yml.bak-vision-config。 - 本机 HTTP 服务:仅监听
127.0.0.1:19877,供设置页与本地逻辑通信。 - 客户端实现方式:通过
settings.section与fetch接入,不依赖 DSH 私有 API,小版本升级相对不易被打挂。 - Bundle 补丁:插件 bundle 携带
cordis.patch.yml补丁入口(见package.json的dsh.bundle.patch)。
依赖:yaml ^2.9.1;运行环境 Node.js >= 20。许可证 MIT,当前 package 版本 1.0.0。
安装与启用¶
官方快速开始以 本地 link 注册 为主,而非目录页拼接的安装命令。先做依赖安装,再在 profile 里声明 bundle。
- 将仓库放到本机目录(README 示例为 Windows 路径,Linux 可换成等价目录):
git clone https://github.com/sdwf4wgv5z-rgb/dsh-pi-ai-patch.git C:\dsh-pi-ai-patch
cd C:\dsh-pi-ai-patch
npm install --omit=dev
- 在 profile 的
package.json(通常为~/.dsh/profiles/desktop/package.json)中注册 link 与 bundle:
{
"dependencies": {
"dsh-pi-ai-patch": "link:C:/dsh-pi-ai-patch"
},
"dsh": { "profile": { "bundles": ["...", "dsh-pi-ai-patch"] } }
}
路径需改成你本机 clone 的实际位置;bundles 数组里保留原有条目,并加入 dsh-pi-ai-patch。
- 完全退出 DSH 再启动,打开 设置 → 识图配置,按端点能力勾选模型。
保存后需 再次重启 DSH 生效,因为 provider 配置在启动时加载。
安装前建议阅读 GitHub 仓库 源码与 LICENSE;插件以当前 DSH 进程权限在本机运行,并会修改你的 cordis.patch.yml。
典型用法与写入效果¶
在识图配置里为某个 model id 勾选支持图片后,插件只在对应模型块插入 input 段,例如:
models:
- id: gpt-4o
name: GPT-4o
contextWindow: 128000
input:
- text
- image
注释、键顺序、引号、BOM、换行符等其余内容按设计应尽量不动。更完整的原理、HTTP 接口与开发说明见仓库内 README.full.md(中文)与 README.en.md。
适用场景与注意¶
适合:已在 DSH 中使用 llm-pi-ai、通过 cordis.patch.yml 声明自建或中转模型,且需要部分模型在 DSH 侧声明 image 输入,又不想手改 YAML 的用户。
务必知晓:
- 只改 DSH 声明,不保证上游多模态;请按端点真实情况勾选。
- 固定端口
19877;若占用,需同时改index.js的PORT与client.js的VISION_BASE。 - 面板默认遍历
llm-pi-ai段;使用其他 llm 插件时需调整findModelIdx。 - 仅修改
cordis.patch.yml,不碰package.json、node_modules及.dsh下其他状态文件。
DSH 生态强调「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。本插件在目录中分类为客户端,当前 GitHub 星标为 0,以仓库与目录页信息为准。
结尾¶
若你的痛点是「识图能力其实已在网关侧具备,却被 DSH 默认纯文本声明拦住」,dsh-pi-ai-patch 用设置里的一行勾选,把 input 模态写进 cordis.patch.yml,并尽量保证 YAML 编辑安全。进一步了解可访问 SkillHub 插件页 与 GitHub:sdwf4wgv5z-rgb/dsh-pi-ai-patch。