Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/orinvoss/dsh-math-team/vision-subagentnpx skills add OrinVoss/dsh-math-team --skill vision-subagentgit clone --depth 1 https://github.com/OrinVoss/dsh-math-teamWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/orinvoss/dsh-math-team/vision-subagent)<a href="https://agentmods.dev/skills/orinvoss/dsh-math-team/vision-subagent"><img src="https://agentmods.dev/badge/skills/orinvoss/dsh-math-team/vision-subagent.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00067 | $0.01546 |
| Opus 5 | $0.00034 | $0.00773 |
| Sonnet 5 | $0.00013 | $0.00309 |
| Haiku 4.5 | $0.00007 | $0.00155 |
Grade A, and why
vision-subagent scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 79 lines — stays where its author put it; the contents beside it link to each section on GitHub.
视觉子代理(Vision Sub-agent)
当主模型不支持图像输入(read_image 会拒读,如纯文本模型)时,用 workflow 派生一个指定视觉模型的子代理来"看"图——它可以用 read_image 读取图片,再根据你的要求描述内容或审查质量并返回结论。
本 skill 是全局可用的看图方案,任何预设/会话/项目都可加载,不限定业务场景。
触发条件
- 主模型
read_image报错拒读(如deepseek-v4-flash不声明图像输入) - 需要查看某张图片的实际内容、核对图片质量、或基于图片内容做判断,但主模型看不了
原理
DeepSeek Harness 的 workflow 工具允许在 agent() 上独立指定 provider 与 model。只要选一个当前部署里真正支持图像输入的模型(其 inputModalities 含 image),派生的子代理就能用 read_image 读取并处理图片。
不同部署注册的视觉模型名可能不同,不要硬编码模型名,应先探测。
如何找可用的视觉模型
用 llm 服务遍历各 provider 的模型,过滤出 inputModalities 含 image 的:
// 思路:遍历 provider -> resolveModelInfo -> 过滤 inputModalities 含 'image',得到 { provider, model }
const vision = /* inputModalities 含 'image' 的 {provider, model} */
await agent(prompt, { provider: vision.provider, model: vision.model })
成本优先(重要):识图/看图是高频、轻量任务,优先选择便宜的经济型视觉模型,不要使用贵的大模型。具体原则:
- 首选:
opencode-go/mimo-v2.5、kimi-coding/kimi-for-coding(K2.7 Code)、kimi-coding/kimi-for-coding-highspeed等经济型视觉模型(均 text+image)。 - 避免:
kimi-coding/k3、k3-256k这类旗舰/大上下文模型——识图不需要它们的强推理与长上下文,成本不划算。除非便宜模型全部不可用且任务确需更强能力,才考虑它们。 - 换部署后先探测:按"便宜视觉模型优先 → 经济型 → 旗舰兜底"的顺序选。
- 同一批图片审查应尽量一次性派发(一次 workflow 调用审多张),减少调用次数与成本。
已验证候选(示例):opencode-go/mimo-v2.5、kimi-coding/kimi-for-coding、kimi-coding/kimi-for-coding-highspeed(均 text+image,经济型)。
用法模板
用 workflow 派发看图子代理(provider/model 替换为探测到的可用视觉模型):
await agent(
'用 read_image 工具读取 <图片绝对路径>,然后完成任务:<你的具体诉求,如描述内容 / 审查质量 / 判断是否达标>,并结构化返回结论。',
{ provider: '<探测到的provider>', model: '<探测到的视觉 model>' } // 指定视觉模型
)
把"任务诉求"填进 prompt,子代理会先看图,再按你的要求输出。例如:描述图里有什么、检查是否有空白/遮挡/文字重叠、核验图与某条结论是否一致等。
输出约定(建议)
按需要求子代理给出结构化结果,例如:
- 内容描述:图中关键元素、布局、文字/标题等
- 质量核验:是否空白、模糊、遮挡/重叠、要素缺失
- 目标核对:图是否支撑它要支撑的结论或任务
- 判定:
PASS/FAIL,FAIL 时给原因与改进建议
复验闭环(FAIL → 修改 → 重审,强制)
图片核验不通过后,必须进入"修改-重审"循环,直到 PASS,才算完成。 不得"审一次出个 FAIL 就当作已核验"。
规则:
- FAIL 即回退修改:子代理返回
FAIL时,按它给出的缺陷与改进建议,把图片退回给制作/修改图片的一方进行修改。 - 修改后必须重审:每次修改后,重新派发识图子代理对修改后的图完整复审一遍,不能只让修改方自称"改好了"。
- 循环直至 PASS:复审
FAIL则继续"修改 → 重审",直到PASS为止;每次重审都记录结论(哪一版图、审了什么、结果)。 - 有界兜底(可选):可约定最大重审轮次(如 ≤3 轮);超限仍不 PASS 时,如实标记"多次修改未通过核验,存在持续缺陷",不得降级成"视为通过"。
- 记录留痕:把每次"FAIL 原因 → 修改动作 → 重审结果"写进审查/核验记录,供追踪与验收。
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 79 lines · 67 tokens per session scan A 89a6d73fa5b0
vision-subagent is a skill published in the GitHub repository OrinVoss/dsh-math-team (6 stars, last pushed 10d ago), licensed MIT. It adds 67 tokens to every session and 1,546 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
project-blueprint
为新项目快速建立完整 AI 编程规范体系(AGENTS.md、文档目录、CI/CD、Git规范、测试制度)。自主发现引擎:扫描项目→分类文件→推断技术栈,覆盖 7 语言 15 框架 70+ 组件,未知栈三层递进联网回退。Establish AI coding conventions for new projects — autonomous discovery engine with heuristic dep classification, 7 languages 15 frameworks 70+ components, web search fallback for unknowns.
design-taste-frontend
前端设计品味:反模板化的落地页/作品集/改版设计——先读需求推断调性(Design Read),再给设计方向与规范,避免 AI 味模板。当用户想要一个不像模板、有调性的页面时使用。Anti-slop frontend design taste for landing pages, portfolios, redesigns.
product-manager
产品经理:从需求发现到上线的产品全生命周期——澄清需求、写 PRD、机会评估、RICE 优先级、路线图、发布计划与度量。当用户想做某个产品/功能但需求模糊,或需要产品规划、需求文档时使用。.
coach-playbook
产品编排:面向非开发人员的「从 0 到 1」固定编排模式。当用户说「我想做一个网站 / 应用 / 小程序 / 看板 / 落地页」等想做产品的诉求时,用这个技能选择对应的固定流水线,按「澄清 → 产品体验与用户路径 → 配色与调性 → UI → 原型验证 → 实现 → 验收 → 上线」的顺序一步步带用户做出体验好的产品。Orchestration playbook for building a product end-to-end from zero.
deploy-to-vercel
Deploy applications and websites to Vercel. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment".
vercel-react-view-transitions
Guide for implementing smooth, native-feeling animations using React's View Transition API ( component, addTransitionType, and CSS view transition pseudo-elements). Use this skill whenever the user wants to add page transitions, animate route changes, create shared element animations, animate enter/exit of components…