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 skills add macgaf/multimodal-proxy-plugin --skill multimodal-proxygit clone --depth 1 https://github.com/macgaf/multimodal-proxy-pluginWrote 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/macgaf/multimodal-proxy-plugin/multimodal-proxy)<a href="https://agentmods.dev/skills/macgaf/multimodal-proxy-plugin/multimodal-proxy"><img src="https://agentmods.dev/badge/skills/macgaf/multimodal-proxy-plugin/multimodal-proxy/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/macgaf/multimodal-proxy-plugin/multimodal-proxy"><img src="https://agentmods.dev/badge/skills/macgaf/multimodal-proxy-plugin/multimodal-proxy.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00314 | $0.02052 |
| Opus 5.5 | $0.00126 | $0.00821 |
| Sonnet 5.5 | $0.00063 | $0.00410 |
| Haiku 4.5 | $0.00031 | $0.00205 |
Grade A, and why
multimodal-proxy 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 1mo 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 — 135 lines — stays where its author put it; the contents beside it link to each section on GitHub.
multimodal-proxy 使用规范
通过 multimodal-proxy MCP 的工具,把多模态任务外包给配置好的外部多模态模型,再把文字
结果回填给当前主模型。仅适用场景:已确认主模型是纯文本模型(如 glm-5.2、deepseek-v4 等),
且无法直接理解图像/视频/音频。
激活决策(必须先判断)
-
先判断当前主模型是否多模态(能力信息优先于模型名称)
- 优先读取当前运行时、系统提示或模型元数据声明的输入能力;若标明支持图片、视频或音频, 即视为多模态。
- 无法获取能力声明时,按下方模型名称清单判断;名称也不在清单中 → 默认视为多模态、不自动激活。
- 已知多模态模型:GPT-4o / GPT-4.1 / GPT-5(包括 GPT-5.5 及后续支持多模态的版本)、 Claude 3.5+、Gemini 全系、doubao-vision、qwen-vl、glm-4v、Kimi-vision 等
- 已知纯文本模型:glm-5.2、deepseek-v4-flash/pro、多数纯文本 LLM
- 不确定 → 不得仅因用户提交媒体或使用触发词而激活本 skill;优先由主模型原生处理, 或在无法接收媒体时向用户说明能力状态不明并询问是否要使用外部代理。
-
若主模型是多模态模型
- 默认由主模型直接处理,不调用 multimodal-proxy
- 仅当用户显式要求"用外部模型""强制外包""用 doubao 分析"时才调用
-
若主模型已确认是纯文本模型,且用户有多模态需求
- 必须调用 multimodal-proxy 工具;不要尝试让纯文本主模型直接"看"图
-
优先级
- 用户明确要求外部代理 > 已确认纯文本模型 > 主模型原生多模态能力 > 能力不明时不自动代理。
工具
save_clipboard_to_file(剪贴板落盘)
读取系统剪贴板内容,如果是图片则保存为临时 PNG 文件并返回路径。
跨平台支持:macOS(osascript)、Windows(PowerShell)、Linux(wl-paste / xclip)。
用途:绕过纯文本 Agent 主模型对图片输入的硬拦截。用户 Ctrl-V 粘贴截图会被拦截, 但截图仍在系统剪贴板中。本工具从剪贴板读出图片,落盘为文件,返回路径供后续分析。
无参数。
返回值:
- 图片:返回文件路径(如
/tmp/mmp-clip-1234567890.png) - 文本:返回
clipboard_text: <内容>(剪贴板里是文字而非图片) - 空:返回提示信息(剪贴板为空或不含图片)
调用时机:当用户说"分析一下我刚截的屏""看看剪贴板里的截图""分析截屏"等, 且当前无法通过 Ctrl-V 粘贴图片时,先调用本工具获取文件路径。
process_multimodal(核心工具)
接收任意数量的图片/视频/音频 + 提示词,按顺序组装成多模态请求交给模型处理。
参数:
media(必填):媒体文件列表,每个元素是本地路径或 http(s) URL- 图片:jpg/png/gif/webp/bmp/svg
- 视频:mp4/mov/webm/avi/mkv
- 音频:mp3/wav/m4a/flac/aac/ogg
- 可混用多种类型
prompts(可选):提示词列表,0~n 条,作为任务指令在媒体之前提交model(可选):覆盖默认模型provider(可选):覆盖默认 provider
用法示例:
- 单图分析:
process_multimodal(["/path/img.png"], ["描述这张图"]) - 多图对比:
process_multimodal(["/a.png", "/b.png"], ["对比这两张图"]) - OCR 提取:
process_multimodal(["/scan.jpg"], ["提取图中所有文字", "保留原始格式"]) - 图表解读:
process_multimodal(["/chart.png"], ["解读这个图表的数据"])
generate_image(图像生成)
根据文字提示词生成图片。需在配置中设置 image_generation 模型。
工作流
场景一:用户给出文件路径
仅在主模型已确认是纯文本模型,或用户明确要求外部代理时:用户直接提供图片/视频/音频文件路径
→ 直接调用 process_multimodal 分析。否则由主模型原生处理。
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 1mo ago First seen · 135 lines · 314 tokens per session scan A 7d3044b1e775
multimodal-proxy is a skill published in the GitHub repository macgaf/multimodal-proxy-plugin (2 stars, last pushed 3mo ago), licensed MIT. It adds 314 tokens to every session and 2,052 once invoked, about $0.0013 per session on Opus 5.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
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…