dsh-nomoreblind
Verified@cmnyhh/dsh-nomoreblind · v0.1.6 · MIT · Web UI
Side-channel image understanding for dsh: the describe_image tool routes one image (file path or conversation attachment) through the harness llm service to a separately configured image-capable model and returns the description as text, so a text-only co
Install
dsh plugin add @cmnyhh/dsh-nomoreblind Confirm the layer applied with dsh --profile default --dump-config — see the install guide.
Source
Published to npm without a public repository. Inspect the package contents before installing.
Tags
Readme
@cmnyhh/dsh-nomoreblind
dsh 旁路识图插件:注册 describe_image 工具,把一张图片发给单独配置的视觉模型,返回文字描述给主对话模型使用。主对话可以继续用纯文本模型(如 DeepSeek),截图、照片、图表照样能读。
工作方式
- 工具调用经 dsh 的
llm服务发起:识图模型就是 Models 页里配置的任意模型(自定义 OpenAI 兼容 provider、内网 Ollama / Xinference 均可),端点与密钥由 Models 页统一管理,插件不另存凭据。 - 图片两种来源:
- 文件路径 —— 会话工作区里的 PNG/JPEG/WebP/GIF 文件;
- 附件 sha256 前缀 —— 聊天里贴图后,模型看到的占位文本
[image omitted …; attachment sha256:xxxxxxxx]自带 8 位前缀,直接把这段前缀传给工具即可。
- 附件解析以会话日志为准:从当前会话的历史里按 sha256 前缀找到那条 image / file 块的完整持久引用,再走附件存储的公开读取接口取字节。因此不依赖后端把对象落在哪个磁盘路径上——会话跑在远程服务器(附件在服务端对象存储里)时同样可用。
- 只有会话历史里找不到时才回落到本地对象根扫描(
objects/<前2位>/<完整sha256>),本地起服务的老用法保持兼容。 - 图片统一落成持久附件引用后走正常 image 管线(规范化、请求图编码、能力预检)。
- 调用前预检模型
inputModalities:选了纯文本模型会直接报错并指出模型名,不会被静默剥图。
安装
在客户端 设置 → 插件 里搜索安装,或命令行:
dsh plugin add @cmnyhh/dsh-nomoreblind
安装会把本包挂进 profile 的 dsh.profile.bundles(插件行由包自带的
cordis.patch.yml 提供,行 id 为 nomoreblind)。不要手工往 profile 的
cordis.patch.yml 里写 - insert: 插一条同 id 的行——那样设置面板的保存会被
判成「配置被 home patch 覆盖」而拒绝。装完重启一次客户端生效。
配置
设置 → 插件 → @cmnyhh/dsh-nomoreblind 的 nomoreblind 行 → 配置,面板里填(0.1.4 起自带配置面板,字段写入 profile 的用户 patch 层):
| 字段 | 说明 |
|---|---|
provider |
下拉选 Models 页里的 provider 路由(留空用内置默认),也可切「手动输入」 |
model |
下拉选该 provider 下当前可路由的模型,标「纯文本」的不能读图 |
prompt |
可选,调用不带 prompt 时的默认指令 |
timeoutMs |
可选,单次请求超时毫秒数(默认 120000) |
maxBytes |
可选,图片字节上限(默认 20 MiB;面板未含,需要时写在 patch 里) |
maxTokens |
可选,视觉输出 token 上限(面板未含,需要时写在 patch 里) |
不用面板时也可以直接编辑 profile 的 cordis.patch.yml:
- id: nomoreblind
name: '@cmnyhh/dsh-nomoreblind'
config:
provider: my-vlm-provider
model: qwen2.5-vl
值支持间接引用(env:NAME、file:/path)。
peer 依赖说明
peerDependencies 只是运行时兼容性声明(dsh 0.2.1-alpha.1 线),profile 安装时 autoInstallPeers 为 false,不会去 registry 拉取;@deepseek-ai/* 由运行时拦截层供给,本包保持单一拷贝以维持 FsError / HarnessError 的 instanceof 语义。
变更记录
- 0.1.6 —— 修复「
no attachment objects exist under …/objects」:附件改为先从会话日志定位持久引用、再用附件存储公开接口读取,远程服务器/非本地对象根场景可用;读不到时给出新的提示(提示重新贴图或改用文件路径)。 - 0.1.5 —— 配置面板:输入框可正常编辑、provider/model 为原生下拉、保存按钮改回标准按钮样式。
- 0.1.4 —— 首个带配置面板的版本。
License
MIT