开源项目
开源项目

Qwen-MM-Plugins 深拆:让任意 agent 原生多模态

QwenLM/Qwen-MM-Plugins(2,908 星、Python、Apache-2.0、2026-07-29 创建、最近 push 2026-09-18,截至 2026-09-19 GitHub API)定位"让任意 agent harness 原生支持多模态":Skill 加 MCP 双层的按需感知插件集,接入 Claude Code、OpenClaw 等主流框架,补上 2026 年 coding agent 看不了音视频的短板。核心判断:它背靠 QwenLM 官方生态位,与 Qwen3.8-Omni-Flash 协同演进,是"模型加工具链"打法的具体落子;Apache-2.0 许可无商用红线,但插件深度绑定千问系模型,换底座时的迁移成本要心里有数。

发布于 2026年9月19日8 分钟阅读
<!-- qwen-mm-plugins-resource | open-source | Qwen-MM-Plugins 深拆:让任意 agent 原生多模态 -->

一、为什么 2026 年的 coding agent 还"看不了"视频

过去一年,写代码的人身边多了一类新同事:编码 agent。它们会开终端、跑命令、改文件、跑测试、提 PR,像一群不知疲倦的数字劳动力。可一旦你把一个视频文件、一段会议录音、一张设计稿丢给它们,大多数 agent 立刻露怯:它们看不懂、听不了、也说不清这张图里到底有什么。一个能帮你重构三个模块、还能跑通 CI 的 agent,面对一段两小时的讲座录像,常常只能干瞪眼。

这件事的荒诞之处在于,模型侧明明已经追了上来。阿里千问在 9 月 18 日发布了全模态模型 Qwen3.8-Omni-Flash,文本、图像、音频、视频一起喂进去,它能理解、能转写、能生成。模型本事够了,问题却卡在中间那层"harness"上。所谓 harness,就是包裹着模型的那个运行外壳:Claude Code、Codex、Cursor、OpenClaw、Qwen Code 这些名字,都属于这一类。它们从设计之初就围绕"文本进、文本出"这条主轴,对多模态输入既无约定,也无通道。

具体卡在哪?第一,主模型本身可能是纯文本模型,harness 没有把媒体文件转成它能消化的格式;第二,哪怕是多模态模型,harness 也往往把视频、音频当成附件丢在一边,最多塞个文件路径,并不真正把画面帧、声音轨送进上下文;第三,想让模型"看懂"一段视频,你得自己写脚本抽帧、做 OCR、跑转写、再把结果拼回 prompt,这套胶水代码每个项目都要重写一遍;第四,也是最隐蔽的,README 自己也点破了一句:绝大多数 harness 至今还无法把音频原生地喂给主模型。音频这条路,现在基本只能绕道 API。

于是出现了一道诡异的落差:模型能力跑到了 harness 能力前面。Qwen3.8-Omni-Flash 这种全模态模型已经能原生处理音视频,可围着它的外壳还停留在纯文本时代。补上这道落差的,正是 Qwen-MM-Plugins 想要做的事。关于这次模型发布本身,可以顺手看这篇 Qwen3.8-Omni-Flash 热点解读

二、Qwen-MM-Plugins 是什么:按需感知的插件集合

Qwen-MM-Plugins 是 QwenLM 组织下的开源项目,一句话定位是"Make any agent harness multimodal-native"(让任意 agent harness 原生支持多模态)。它不直接造一个全新的 agent,而是给已有的 harness 打补丁,把多模态感知与处理能力按需接进去。仓库在 GitHub,采用 Apache-2.0 协议。

项目配套了一个 Hub 站点(qwenlm.github.io/qwen-mm-plugins-hub),可以按能力浏览插件、预览各自的 Skill 与工具定义,还带嵌入视频和交互式样例的 cookbook。也就是说,你不只拿到代码,还拿到一整套"这能力到底能干嘛、怎么调"的活例子。

接入方式很轻。引导式安装器支持 Claude Code、CodeBuddy、Codex、Qoder、OpenClaw、Qwen Code 和 Gemini CLI 等主流 harness,共享配置落在 ~/.qwen-mm-plugins/config。WorkBuddy、QoderWork、QwenWork 走应用内配置,DeepSeek Harness、Hermes Agent、opencode、pi、QwenPaw 等则有手动接入指引。换句话说,你既有的工作流原样保留,它只补多模态这一块,不替你换 agent。

它最核心的设计判断是:能力要按模型选型、按需安装,而不是塞一个万能大包。每个能力以独立插件形式安装,由一个 Skill 加一个可选的 MCP server 组成,命名统一为 qwen-mm-plugins-<capability>。官方强烈建议多模态模型先装 core 插件:它让主模型原生读取图像、视频帧,以及文档、代码、数据、三维模型和 NIfTI 体数据,而不是把这些内容绕道某个外部 API 或临时 shell 命令去处理。默认原生模式下连 API key 都不需要。

三、能力清单逐条拆:Skill 加 MCP 的双层结构

Qwen-MM-Plugins 把能力分成三档,按你主模型的型号来挑。下面逐条转述 README,并给出我的判断。

通用档(任意模型可用):

  • core:读取本地图像与视频帧,把文档、代码、数据、三维模型、NIfTI 体数据可视化给 agent 检视;含媒体元数据、裁剪、边界框标注、页面与帧导出。默认原生模式无 API key。我的判断:这是整个项目里最该先装的一个,它把"看"的事从外部服务拉回到模型本地上下文。
  • api:调用模型服务理解图像、视频、音频,覆盖视觉对话、OCR、定位、全模态转写、说话人分离、字幕、事件分析,以及专用 ASR 和 SAM3 分割;用 DashScope 或兼容的自托管服务,按模型族配置。超大的本地音视频可借 DashScope 自动走模型绑定的临时 OSS。
  • search:面向任意模型的网页搜索与页面抽取,支持 Serper、Exa、Tavily、Serply;反向图片搜索走 Serper。

Qwen VL 系列模型档(如 Qwen3.8-Max、Qwen3.7-Plus):

  • video-memory:为长视频建立分层记忆,之后问视频相关问题直接从记忆里答,不用重看一遍;需 DashScope key 与 ffmpeg。
  • video-edit:生成图像、视频、音频,并跑编辑工作流;需 DashScope key、ffmpeg 与 Node。
  • blender:驱动运行中的 Blender,做建模、材质、灯光、渲染;需已装 Blender。
  • freecad:驱动运行中的 FreeCAD,做参数化 CAD、STEP/STL 与有限元;需已装 FreeCAD。
  • edu-agent:生成中文数理化讲解视频与交互页面;仅 Skill,需 Node 与 ffmpeg。

Qwen Omni 系列模型档(如 qwen3.8-omni-flash):

  • omni-chatcut:面向音乐转 MV、影视解说、保留说话人的视频翻译的视频创作 Skill 集合;需相应生成/Omni 服务、ffmpeg/ffprobe,翻译配音可选外部配音服务。
  • omni-video2note:用 Omni 音视频理解把本地教程视频转成带插图的 PDF,并带审阅反馈;需 DashScope key 与 ffmpeg。
  • omni-skill-creator:把一段演示视频变成可复用的 Agent Skill;需 DashScope key 与 ffmpeg。
  • omni-memory:为长视频建立音视频记忆,记录谁在场、谁说了什么、怎么说的、听起来怎样;Omni 模型连同音轨一起读视频;需 DashScope key 与 ffmpeg。

这里要如实转述 README 的一句提醒:多数 harness 还无法把音频原生喂给主模型,所以音频目前仍走 API。也就是说,omni 系列的能力强大,但音频那部分暂时依赖外部服务,不是纯本地原生链路。

四、上手与使用:安装、配置与命令示例

安装是单行命令,引导式安装器会替你接好 harness:

bash
curl -fsSL https://raw.githubusercontent.com/QwenLM/Qwen-MM-Plugins/main/install.sh | bash

已装能力想更新,加一个参数即可:

bash
curl -fsSL https://raw.githubusercontent.com/QwenLM/Qwen-MM-Plugins/main/install.sh | bash -s -- update

装完某个能力后,使用方式非常朴素:在对话里引用一个文件,用自然语言提要求,Skill 会自动挑出相关的 MCP 工具。README 给了一组直白的例子:

text
@report.pdf         总结第 3 页并抽取其中的表格。
@meeting.mp4        带说话人标签和时间戳转写这段录音。
@place.jpg          识别这张照片在哪里拍的,并在网上核实。
@lecture-2h.mp4     列出要点并标上时间戳。
@tutorial.mp4       在 /absolute/path/tutorial-notes.pdf 生成带插图的 PDF 笔记。
@brain.nii.gz       检查元数据并显示正交中心切片。

core 以动态分辨率读取媒体,通常不需要手动缩放。NIfTI 文件留在本地且只读打开,这种可视化不用于临床诊断。

配置与校验方面,安装器提供 Configure 与 Verify 两个动作来填凭证、查依赖。依赖上,项目用 uv 提供的 uvx 按需装 Python 依赖;本地 core 工具在默认原生图像模式下不需要 API key,而文本兜底转写、云端、搜索类能力则需要各家提供方的凭证。视频、文档、浏览器、Blender、FreeCAD 等工作流可能还需要系统级应用。权限与依赖的边界很清楚:本地看图看视频免费,调用云端理解服务才要 key。

五、与 Qwen3.8-Omni-Flash 的协同:模型加工具链

把 Qwen-MM-Plugins 单独看是工具,把它和 9 月 18 日发布的 Qwen3.8-Omni-Flash 放一起看,才是它真正的定位:模型与工具链的协同演进。模型负责"能不能理解音视频",工具链负责"让 harness 把音视频真正喂进去、把结果接出来"。两者缺一个,多模态 agent 都跑不起来。

最典型的协同落在 omni 系列插件上。omni-memory 让 Omni 模型连同音轨一起读视频,建立"谁在场、谁说了什么、怎么说的、听起来怎样"的音视频记忆;omni-video2note 把一段教程视频转成带插图的 PDF;omni-skill-creator 把演示视频变成可复用 Skill。这些能力的存在前提,正是底层有个能原生吃音视频的模型。模型强了,插件的价值才显出来;插件顺了,模型的强才用得出来。

这种"模型加工具链"的绑定,也解释了它和通用多模态 MCP 方案的区别:通用方案讲究与模型无关、到处能插;Qwen-MM-Plugins 则是针对自家模型族调过、配了 cookbook 与 Hub 的官方配套。如果你已经在用 Qwen 全模态模型,这条链路是现成且被官方维护的。想了解怎么直接调模型 API,可以看这篇 Qwen3.8-Omni-Flash API 接入 SOP;想横向比较各家音视频模型的成本,可以看这篇 音视频模型成本横评

六、Apache-2.0 与"官方配套框架"定位判断

最后落到许可证与生态位上,给一个清醒的判断。Qwen-MM-Plugins 采用 Apache-2.0,这是对企业最友好的宽松协议之一:商用、修改、再分发基本无门槛,只要保留版权与许可声明,且自带专利授权条款,比 MIT 在专利上更稳。对项目使用者来说,这意味着你可以放心把它接进公司内部的 agent 流水线,不用怕传染式开源义务。

生态位上,它背靠 QwenLM 组织,是 Qwen 系列模型的官方配套工具链。这个位置有利有弊。利是:官方维护、随模型版本演进、文档与 cookbook 齐备、Hub 直接可试;弊是:部分能力(api、video-memory、omni 系列等)依赖 DashScope key 或自托管 Qwen 服务,和 Qwen 生态绑定较深。对比通用多模态 MCP 方案,Qwen-MM-Plugins 在"开箱即用、模型适配、官方可信"上占优,但在"模型中立、跨厂商通用"上要让位于后者。

用数据给一个冷判断。截至 2026 年 9 月 19 日 GitHub API 核实,仓库 2,908 颗星、183 个 fork,主语言 Python,Apache-2.0,创建于 2026 年 7 月 29 日,最近一次 push 在 2026 年 9 月 18 日。换句话说,这是一个不到两个月、随 Qwen3.8-Omni-Flash 发布而快速起量的年轻项目。星标涨得快,说明需求真实存在;但年轻也意味着 API、配置、插件清单都可能还在变动,现在上车要做好跟 breaking change 的心理准备。

我的结论:如果你已经在用 Qwen 多模态或全模态模型,又苦于 harness 看不了音视频,Qwen-MM-Plugins 值得现在就试,它补的是真实短板;但把它当成生产关键链路里不可替代的唯一支柱,目前为时过早。建议先在开发机和实验性 agent 上跑通 core 与几个 omni 能力,观察后续版本在稳定性、插件生态和跨 harness 兼容性上的动作,再决定是否托付核心工作流。

常见问题

问题一:这个插件只能配 Qwen 模型用吗,能不能接别的模型?

A1:不完全绑定。项目按模型选型来装能力:core 面向任意多模态模型,让它原生读图、读视频帧;search 明确面向任意模型;api 走 DashScope 或兼容的自托管服务。VL 系列与 Omni 系列插件(如 video-memory、omni-memory)则是为对应 Qwen 模型族调过的。所以非 Qwen 多模态模型也能用上相当一部分能力,只是最深度的 omni 协同需要 Qwen 全模态模型打底。

问题二:音频为什么还要走 API,不能直接喂给主模型吗?

A2:README 自己点破了:绝大多数 harness 至今还无法把音频原生喂给主模型。所以 omni 系列里涉及音频的部分,目前通过 API(DashScope 或兼容服务)来处理,而不是纯本地原生链路。这是 harness 侧的限制,不是模型侧的限制。等主流 harness 原生支持音频输入,这部分才会真正回到本地上下文。

问题三:用这个要花钱吗,要不要配 API key?

A3:分情况。本地 core 工具在默认原生图像模式下不需要 API key,看图、看视频帧、可视化文档与三维模型都是免费的;文本兜底转写、云端理解、搜索类能力才需要各家提供方的凭证(如 DashScope、Serper、Exa 等)。视频、Blender、FreeCAD 等工作流还可能需要系统级应用和 ffmpeg。结论:本地"看"免费,调云端"理解"才要 key。

问题四:它支持哪些 agent harness,我正在用的能不能接?

A4:引导式安装器原生支持 Claude Code、CodeBuddy、Codex、Qoder、OpenClaw、Qwen Code、Gemini CLI;WorkBuddy、QoderWork、QwenWork 走应用内配置;DeepSeek Harness、Hermes Agent、opencode、pi、QwenPaw 等则有手动接入指引。覆盖面已经相当广,常见的 coding agent 基本都能接。共享配置统一在 ~/.qwen-mm-plugins/config,你已有的工作流原样保留。

问题五:和通用的多模态 MCP 方案比,它到底特殊在哪?

A5:差别在"官方配套、模型调过、配套齐全"。Qwen-MM-Plugins 是 QwenLM 组织的官方工具链,针对自家模型族调优,带 cookbook 与可交互 Hub,装完就能照例子跑;通用多模态 MCP 方案则强调与模型无关、跨厂商通用,灵活但开箱即用程度通常不如官方配套。简单说:用 Qwen 全模态模型,这条官方链路最省心;想要模型中立、跨厂商通吃,通用方案更合适。

本文由 AI 辅助生成,经人工审核编辑。最后更新:2026-09-19

常见问题

这个插件只能配 Qwen 模型用吗,能不能接别的模型?
不完全绑定。项目按模型选型来装能力:`core` 面向任意多模态模型,让它原生读图、读视频帧;`search` 明确面向任意模型;`api` 走 DashScope 或兼容的自托管服务。VL 系列与 Omni 系列插件(如 video-memory、omni-memory)则是为对应 Qwen 模型族调过的。所以非 Qwen 多模态模型也能用上相当一部分能力,只是最深度的 omni 协同需要 Qwen 全模态模型打底。
音频为什么还要走 API,不能直接喂给主模型吗?
README 自己点破了:绝大多数 harness 至今还无法把音频原生喂给主模型。所以 omni 系列里涉及音频的部分,目前通过 API(DashScope 或兼容服务)来处理,而不是纯本地原生链路。这是 harness 侧的限制,不是模型侧的限制。等主流 harness 原生支持音频输入,这部分才会真正回到本地上下文。
用这个要花钱吗,要不要配 API key?
分情况。本地 `core` 工具在默认原生图像模式下不需要 API key,看图、看视频帧、可视化文档与三维模型都是免费的;文本兜底转写、云端理解、搜索类能力才需要各家提供方的凭证(如 DashScope、Serper、Exa 等)。视频、Blender、FreeCAD 等工作流还可能需要系统级应用和 ffmpeg。结论:本地"看"免费,调云端"理解"才要 key。
它支持哪些 agent harness,我正在用的能不能接?
引导式安装器原生支持 Claude Code、CodeBuddy、Codex、Qoder、OpenClaw、Qwen Code、Gemini CLI;WorkBuddy、QoderWork、QwenWork 走应用内配置;DeepSeek Harness、Hermes Agent、opencode、pi、QwenPaw 等则有手动接入指引。覆盖面已经相当广,常见的 coding agent 基本都能接。共享配置统一在 `~/.qwen-mm-plugins/config`,你已有的工作流原样保留。
和通用的多模态 MCP 方案比,它到底特殊在哪?
差别在"官方配套、模型调过、配套齐全"。Qwen-MM-Plugins 是 QwenLM 组织的官方工具链,针对自家模型族调优,带 cookbook 与可交互 Hub,装完就能照例子跑;通用多模态 MCP 方案则强调与模型无关、跨厂商通用,灵活但开箱即用程度通常不如官方配套。简单说:用 Qwen 全模态模型,这条官方链路最省心;想要模型中立、跨厂商通吃,通用方案更合适。

相关文章

开源项目

context-mode 深拆:AI 编程代理的上下文窗口优化

mksglu/context-mode(23,324 星、TypeScript、Elastic License 2.0、2026-02-23 创建、最近 push 2026-09-16,数据截至 2026-09-18 GitHub API)定位"为 AI 编程代理做上下文窗口优化":以 MCP 层沙箱拦截与压缩上下文,配 SQLite/FTS5 知识库与会话连续性设计,覆盖 17 个客户端。核心判断:它切中了长会话膨胀、关键指令被稀释、token 成本随长度上涨三重痛点;但必须如实指出 ELv2 不是 OSI 认证开源,有"不得作托管服务、不得移除许可证声明"两条红线,个人使用无碍,公司引入前要过法务。

2026年9月18日8 分钟阅读
开源项目

herdr 深拆:AI 时代的 tmux,编码 agent 的运行时

herdrdev/herdr(39,133 星、Rust、Apache-2.0、2026-03-27 创建、周榜 20260914 期第 8 名周增 2,458 星)定位"编码 agent 运行住的运行时":断开连接后台继续跑、多机一窗聚合 agent 列表、每个面板标记 working/blocked/idle、通过 CLI 与 socket API 实现 agent 互相调用与等待、单 Rust 二进制无 Electron。核心判断:它卡的是 tmux 在 AI 时代的继任位置,agent-native 的 socket API 才是它区别于"套壳 tmux"的关键;但项目不足半岁,API 与存储格式未固化,建议先管开发机与实验性 agent,勿当生产关键链路唯一支柱。

2026年9月17日8 分钟阅读
开源项目

firecrawl:把全网网页变成 LLM 能直接吃的干净数据(GitHub 星 16.1 万)

firecrawl/firecrawl(★16.1万、TypeScript、AGPL-3.0、2024-04-15 创建、8/5 仍在 push)是开源的 web context API,search/scrape/interact 三件套把任意网页转成干净 Markdown 或结构化 JSON 喂给 LLM 和 Agent。官方称覆盖 96% 网页、P95 3.4s,一条命令接 Claude Code/MCP。云端起约 $16-19/月,自托管免费但部分能力仅云端。

2026年8月5日8 分钟阅读