DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Vision Subagent — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-vision-subagent

Vision Subagent

为 DeepSeek Harness 提供基于能力的视觉支持:多模态模型原生支持图像输入,纯文本模型则使用隔离的一次性视觉路由回退方案。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-vision-subagent@0.5.0
README兼容性版本

兼容性与来源证明

Vision Subagent 以 dsh-vision-subagent 发布,当前版本为 0.5.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.5.0stable
2026/9/10
0.3.1stable
2026/8/20
0.3.0stable
2026/8/17
查看其余 1 个版本收起版本
0.1.0stable
2026/8/17
最新版
0.5.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
126.4 kB
文件数
30
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 1
周下载
79
最近提交
2026/9/10
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

README

dsh-vision-subagent

Capability-aware vision for DeepSeek Harness: multimodal current models receive pasted images through DSH's native path; text-only models delegate image reading to a one-shot subagent on a separately configured vision route (MiniMax / Kimi / any OpenAI-compatible provider). On the delegated path, image bytes and the vision model's intermediate context stay out of the main session — only the final text answer comes back.

Why a subagent

  • Context isolation: large screenshots and multi-image comparisons never occupy the main model's window
  • Multi-turn visual reasoning: the child can call read_image on more workspace files before answering
  • Cost & route separation: vision calls bill on the MiniMax/Kimi route; the main model only reasons

Quick start

sh dsh plugin --profile web add /path/to/dsh-vision-subagent

Then edit ~/.dsh/profiles/web/cordis.patch.yml:

`yaml

  • insert:
    • id: vision-subagent name: 'dsh-vision-subagent' config: provider: kimi-coding # or minimax-cn / a hand-declared route model: k3 # or MiniMax-M3 / MiniMax-VL-01 `

Restart dsh web, open a new session, and ask: "Look at ~/Desktop/error.png — what is the error?" The model calls vision_agent(images=[...], question=...) on its own.

Screenshots

Paste & askAnalyzingClean bubbleLightbox
composer with pasted image thumbnailanalysis progress capsulebubble: thumbnails plus your words onlylightbox with full analysis

Paste images into the composer (Codex-style)

The Web composer already supports native image blocks. The plugin defaults to capability-aware pasteMode: auto:

  • Current model accepts images → the plugin stays transparent and calls DSH's original sendSession(text, imageIds, mode, signal). The current model sees the original pixels with the full conversation context; no analysis capsule or pre-description is produced.
  • Current model is text-only → the plugin delegates to its configured vision route: validates and stores the image, performs one intent-aware analysis on an isolated context, then sends only the analysis text plus durable original-image links to the main model.

The screenshots above show the delegated fallback path. Its chat bubble contains only your own words plus thumbnails; the analysis lives in the thumbnail lightbox. Need the original bytes later (image editing, pixel-level inspection)? vision_image_fetch materializes the full-fidelity file into .dsh-vision/.

Set pasteMode: delegate to force the isolated route even for multimodal models, or pasteMode: native to bypass the plugin and leave all admission to DSH. On delegated-analysis failure the message is not sent and the composer draft is preserved.

MiniMax / Kimi vision models

ProviderbaseURLVision modelsKey env
Kimi (Moonshot)https://api.moonshot.cn/v1k3 / kimi-k3 / moonshot-v1-8k-vision-previewMOONSHOT_API_KEY
MiniMaxhttps://api.minimaxi.com/v1MiniMax-VL-01MINIMAX_API_KEY
MiniMax CN(built-in llm-pi-ai minimax-cn route)MiniMax-M3MINIMAX_CN_API_KEY

If a route already exists in Settings/Models (e.g. kimi-coding, minimax-cn), the plugin config only names provider + model — the key stays in the route's credential reference. The plugin itself never touches secrets.

Configuration

FieldDefaultMeaning
enabledtrueMaster switch
provider / model'' (dormant)Vision route; must be set together
subagentProviderspawnctx.subagents provider
maxDepth1Absolute delegation-depth cap for the spawned child; 1 lets the vision child run but forbids further delegation (0 would reject the child itself — a top-level agent's child is depth 1)
maxImages4Images per call
maxImageBytes10 MiBPer-image byte cap
maxPromptChars8000Question length cap
maxOutputChars32000Returned text truncation
maxTokens4096Output token cap for delegated vision calls; 0 leaves it to the route
pasteModeautoauto: native for image-capable current models, delegated fallback for text-only; delegate/native force one path
allowRemoteUrlsfalseReserved (v0.1 supports local paths only)
allowOutsideWorkspacefalseWorkspace containment bypass
extraAllowedRoots[]Extra allowed image roots
guidance''Extra instructions appended to the child prompt

Security model

  • Keys live only in the vision route's credential reference (env); the plugin accepts no plaintext secrets
  • Local images default to the session workspace; symlinks are rejected; reads are byte-capped
  • The child runs with maxDepth: 1 (runs, but cannot delegate further) and instructions forbid file modification and shell use
  • vision_image_fetch writes only under the session workspace's .dsh-vision/ with self-generated content-hashed filenames; no caller-controlled path segment reaches the disk

Architecture

Main model (text-only) └─ vision_agent(images, question) ──┐ │ 1. admission: ext / containment / symlink / byte cap │ 2. ctx.attachments.saveImage → durable content-addressed refs │ 3. ctx.subagents.start('spawn', { agentOptions: {provider, model} }) ▼ One-shot subagent (MiniMax/Kimi vision route, own context) └─ final text ──► main session (only this message enters main context)

The plugin consumes harness services structurally (duck-typed) and is rc-version tolerant. Runtime dependencies: @deepseek-ai/dsh-tools (defineTool) and @deepseek-ai/schemastery (config schema) only.

Roadmap

  • Web paste bridge: composer images auto-trigger vision analysis (v0.2)
  • Context-aware paste analysis: your draft message steers the vision focus; bubble stays clean (v0.3)
  • vision_image_fetch: materialize pasted originals into .dsh-vision/ for editing (v0.3)
  • Capability-aware paste routing: native ImageBlocks for multimodal models, delegated fallback for text-only (v0.4)
  • Settings panel for provider/model selection
  • Remote image URL support (bounded fetch)
  • Embedded SKILL.md steering when to delegate

Development

sh npm install && npm run typecheck && npm test && npm run build

Version 0.4.2 is developed and release-tested against DSH 0.1.1-rc.2. The delegated Web path uses rc.2's atomic batch image admission, forwards submit cancellation, returns the native SubmitOutcome, and releases draft images only after a successful Host admission. DSH runtime packages are optional exact peers rather than ordinary dependencies, preventing a profile install from adding a second Harness runtime copy.

License

MIT