YJLTF/dsh-eyebrain--packages-dsh-eyebrain ↗★ 1
dsh-eyebrain
为纯文本主模型外挂多模态识图与思考控制 适合想给纯文本模型补充识图能力并精细控制思考档位的用户。
安裝
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:YJLTF/dsh-eyebrain#6598e911a4b9955a23171f937165364106e650f5&path:packages/dsh-eyebrain說明文件
閱讀完整 README ↗dsh-eyebrain
为 DeepSeek Harness(dsh)纯文本主模型补上「眼睛」和「思考旋钮」的后台插件。
- 识图桥:注册模型可见工具
understand_image,把图片交给配置好的小参数多模态模型(OpenAI 兼容/chat/completions)理解,返回文字证据给主模型。 - 思考档位控制:对自部署 OpenAI 兼容端点注入
reasoning_effort(关闭/低/高/最大),全局默认 + 输入框 pill 会话覆盖,下一轮请求生效。 - 发送接管:粘贴/上传的图片在发给纯文本端点前被改写为文本指针(携带附件只读路径与
understand_image调用指引)。 - Web 全托管:配置存于 settings 命名空间
dsh-eyebrain,在 dsh Web 设置 → 插件 → dsh-eyebrain 卡片修改,用户层持久化settings.yaml热生效,全程无需手改配置文件。
兼容 dsh 0.1.5-rc.2(基线)/ 0.1.6-alpha.1(适配),所有接缝均以两版实测源码为锚点(见 P7-INTEGRATION.md)。
宿主接缝(与官方同缝)
| 能力 | 接缝 | 官方先例 |
|---|---|---|
| 思考档位注入 | agent/request 瀑布改写 resolved call config 的 reasoningEffort(prepend 最外层)+ llm.resolveModelInfo 能力探测/钳制 | dsh-agent model-selection |
| 图片→文本指针 | agent/pre-step 瀑布改写 decision.messages | dsh-agent model-switch 通知 |
| 附件路径解析 | attachments 服务 imageHostPath(ref) | dsh-attachment-local |
| 工具注册 | ctx.tools.register(defineTool(def)) | dsh-tool-* |
| Web 配置 | settings.register('dsh-eyebrain', schema) + scope.watch | dsh-settings / 官方插件设置卡片 |
档位值域 off|low|high|max 与 dsh 适配器 reasoningEffort 完全一致;线上格式(reasoning_effort/thinking.type)由 dsh 适配器自行转换,插件不碰请求体。
出站行为语义
思考接管是清单开启制:dsh 内置提供方(DeepSeek 等)不碰,走官方 model-selection 的档位选择;自定义提供方加入清单并勾选「接管思考」后才注入全局/会话档位。
| 清单命中 | 图片处理 | 思考注入 |
|---|---|---|
| 未命中(含清单为空) | 剥离(安全侧默认) | 不注入(官方行为原样透传) |
text-only | 剥离 | 按条目 takeThinking |
multimodal | 直发(模型不吃图时兜底剥离) | 按条目 takeThinking |
能力护栏:模型未声明思考能力(reasoningEfforts)时自动跳过档位注入——
否则 dsh-llm 会以 UNSUPPORTED_REASONING_EFFORT 拒绝整轮请求(真机实测:
GLM 自定义提供方默认模型全部失败)。已声明的模型把四档钳制到声明集合;自定义
GLM 提供方(bigmodel 走 zai thinking.type 格式)声明后旋钮才真正生效。
安装
pnpm install && pnpm -r run build # 或直接使用仓库已提交的 lib/
dsh plugin add /path/to/packages/dsh-eyebrain
dsh web
设置卡片与思考 pill 需同时安装 dsh-eyebrain-client。
开发
pnpm run build # tsup(@deepseek-ai/dsh-tools、schemastery 为 external,宿主提供)
pnpm run typecheck # tsc --noEmit
pnpm run test # 冒烟测试 25 用例(发布质量门)
License
MIT