Omni-IO Skills:将 Coding Agent 变成全模态原生 Agent 的即插即用 MCP Skill 框架 · 干货攻略

  • 链接:https://arxiv.org/abs/2609.31847
  • 分类:x-tips
  • 来源:X @_akhaliq
  • 作者:Jay
  • 更新:2026-10-04
  • 仓库:any2any-mllm/Omni-IO-Skill

这是什么

Omni-IO Skills 是由新加坡国立大学(NUS)与牛津大学(Oxford)联合发布的开源 Agent 外挂框架(Agent Harness),通过即插即用的 MCP Skill 机制,让已有的 Coding Agent(Codex、Claude Code 等)无需更换底层模型,即可原生支持图像、视频、音频、文档、3D 资产、代码、网页七大模态的理解与生成。

核心思路是:不改 agent 核心,在外层叠加能力。这比直接改 agent 核心(换模型、做多模态微调)更轻量、更易维护。

论文原文将其定位为 plug-and-play Agent Harness,发表于 2026 年 9 月(arXiv:2609.31847),仓库于 2026 年 8 月开源。


为什么值得关注

传统 Coding Agent(Claude Code、Codex 等)默认强项是代码生成和文本推理,但在面对"把一段会议录音转成带 action items 的 PPT"、"上传产品图生成配套海报和短视频"这类多模态任务时,往往力不从心。

两条主流解决路径都有明显缺陷:

  • 路径 A:等基础模型原生支持更多模态 → 成本高、迭代慢,受制于模型更新周期
  • 路径 B:自己组装各种单点工具(一个 TTS API、一个图像生成 API、一个 PDF 解析库)→ 工具碎片化,任务编排、跨轮持久化、并发执行全靠手写

Omni-IO 走的是路径 C:在 agent 外面套一层标准化的 Skill 层与 MCP 执行运行时,把多模态能力打包成声明式工作流。

关键数字(来自论文,测试基准为 UniM-90):

模型 指标 加 Omni-IO 前 加 Omni-IO 后
GPT-5.6 Sol Input Support Rate 40.00% 100%
Claude Sonnet 5 Input Support Rate 38.89% 100%
GPT-5.6 Sol Semantic-Quality Coupled Score 26.99 74.94
Claude Sonnet 5 Semantic-Quality Coupled Score 27.82 77.78
GPT-5.6 Sol Strict Structure Score — 100.00
Claude Sonnet 5 Strict Structure Score — 99.78

核验说明:以上数字来自 arXiv 论文原文(摘要部分),与 Hugging Face Papers 页面收录内容一致;HuggingFace 摘要链接:https://huggingface.co/papers/2609.31847。


核验过程

本次攻略依据以下来源进行核验:

  1. GitHub README(https://github.com/any2any-mllm/Omni-IO-Skill):覆盖项目定位、目录结构、27 项 Skill 分类、快速安装步骤(Codex / Claude Code / 通用 MCP host 三种方式)、Declare Execution Graph 工作流说明、Asset Registry 机制
  2. arXiv 论文摘要(https://arxiv.org/abs/2609.31847):来自 NUS + Oxford 团队,2026 年 9 月 25 日提交,确认作者阵容 Affiliation: National University of Singapore + University of Oxford;量化指标与 README 引用数据一致
  3. setup/feature_list.md(GitHub 内链):确认了各能力的默认 Provider 与费用结构——6 项完全免费(Claude 原生视觉、文档生成、本地代码/Markdown 生成、Edge TTS、Playwright 网页浏览),其余均为各平台免费额度
  4. Tavily 交叉检索:确认 arXiv HTML 全文页与 HuggingFace Papers 页面内容一致,未发现与 README/论文数字冲突的第三方引用

铁律确认:所有命令路径(如 python -m pip install -r mcp/requirements.txt)、目录结构(如 skills/、expert/、scenarios/)、配置字段(如 OMNI_OUTPUT_DIR、config/.env)均来自 GitHub README 原生内容,未使用 X 帖原文中未指明的补充信息。


上手步骤

环境要求

  • Python 3.10+
  • macOS / Linux / WSL(Windows 原生未测试)
  • 已安装 Git

第一步:克隆并创建虚拟环境

git clone https://github.com/any2any-mllm/Omni-IO-Skill.git Omni-IO-Skills
cd Omni-IO-Skills

python -m venv .venv
source .venv/bin/activate
python -m pip install -r mcp/requirements.txt

# 仅在使用本地网页浏览能力时需要
playwright install chromium

第二步:配置 API 密钥

cp config/.env.example config/.env

按需编辑 config/.env,启用你想用的能力对应的 API Key。不需要全部填——README 明确说明:"You do not need every API key. Start with the capabilities you want."

免费能力无需 Key(截至本文发布,来源为 GitHub README setup/feature_list.md):

能力 Provider 备注
图像理解 Claude 原生视觉 —
文档生成(PPT/Word/PDF/Excel) 本地库 —
代码/网页生成 Claude 原生能力 —
Markdown 生成 Claude 原生能力 —
语音合成(TTS) Microsoft Edge TTS config.yaml 默认启用
网页浏览 Playwright Chromium —

付费但有免费额度的能力(来源:setup/feature_list.md):

能力 Provider 免费额度
图像生成 fal.ai 注册送 US$10
音效生成 ElevenLabs 每月免费额度
音乐生成 Hugging Face 推理免费额度
3D 生成 Tripo3D 注册送免费额度
视频理解 Gemini 每天 1M tokens
文档 OCR Mistral 免费层
音频分析 Qwen (DashScope) 免费额度
网页搜索 Brave Search 每月 2000 次
视频生成 Wan2.7 (DashScope) 新用户免费,之后按量
语音识别 Whisper (OpenAI) 按量付费

第三步:连接到你的 Agent(以 Claude Code 为例)

# 建立 skill 软链接
mkdir -p "$HOME/.claude/skills"
ln -s "$(pwd)" "$HOME/.claude/skills/omni-io"

# 注册 MCP server
claude mcp add omni-io \
  --scope user \
  -e OMNI_OUTPUT_DIR="$HOME/Documents/OmniIO" \
  -- "$(pwd)/.venv/bin/python" "$(pwd)/mcp/server.py"

# 验证注册
claude mcp list

# 重启 Claude Code(新会话生效)

第四步:验证配置是否就绪

在新对话中发送:

Check my Omni-IO configuration and tell me which capabilities are ready.

成功配置后,系统会报告哪些能力已就绪、哪些需要补充凭证、哪些有无需 Key 的免费路径。

通用 MCP Host 接入方式

如果使用其他支持 Agent Skills + stdio MCP 的宿主(如 Cursor、RooCode 等),在 Skill Loader 中指向仓库根目录的 SKILL.md,然后按以下字段注册 stdio MCP server:

字段 值
Command /absolute/path/to/Omni-IO-Skills/.venv/bin/python
Arguments /absolute/path/to/Omni-IO-Skills/mcp/server.py
Environment OMNI_OUTPUT_DIR=/absolute/path/to/a/persistent/workspace

核心架构:Declare Execution Graph

Omni-IO 将多步骤任务建模为内部依赖图(Declare Execution Graph),这是整个框架的核心抽象:

  • 独立任务可并发执行(最大化并行度)
  • 依赖任务等待上游输出就绪后自动触发
  • Expert Workflow 会对产出进行质量检查,失败时只重做有问题的那一步(不是全链路重跑)
  • Asset Registry:所有成功输出都会注册到 registry.json,支持跨会话、跨对话引用("上一个视频"、"上周生成的那张图"等自然语言引用均有效)

配置与 Provider 解耦:切换后端(如把 fal.ai 换成 Replicate)只需改 config/config.yaml,Skill 层行为和 prompt 完全不变。


坑与适用边界

适用场景: - 需要 agent 处理多模态内容(图像/视频/音频/文档/3D)的创作、分析、转换任务 - 想复用现有 Coding Agent 能力,不想换模型或重训 - 需要多步骤、跨模态、涉及中间产物的复杂工作流 - 任务中包含"生成 → 检查 → 修订"闭环

不适用/需谨慎的场景: - 实时性要求极高的多模态任务(每次调用都涉及外部 API,网络延迟不可控) - 完全离线环境(部分能力如 fal.ai 图像生成、TTS 必须联网,但文档生成等少数能力支持本地) - 超大批量处理(当前架构面向会话级任务,批量队列未内置) - 中国区访问受限(DashScope/Qwen 等阿里云系服务在部分地区访问不稳定,配置前需确认网络)

已知的 Key-free 边界(来源:setup/feature_list.md,原帖未提及此细节): 6 项完全免费能力让 Omni-IO 可以零成本体验完整流程,但免费能力集不包含图像生成、视频生成、音乐生成——这些仍需要相关平台账号。

配置热重载:修改 config/.env 或 config/config.yaml 后必须重启 MCP 进程(重启 host 或单独重启 omni-io MCP server),更改不会即时生效。

版本稳定性:截至 2026 年 10 月,仓库仍处于活跃开发期,API 和配置格式可能在后续版本中变化,生产级集成建议锁定 commit SHA。


一句话结论

Omni-IO Skills 是目前最完整的"多模态外挂 Skill + MCP 执行运行时"方案——NUS+Oxford 学术背书、实测将 GPT-5.6 Sol / Claude Sonnet 5 的多模态覆盖率从 ~40% 提升到 100%、6 项能力零成本体验,适合不想改模型但想让 Coding Agent 真正 handle 全模态任务场的工程师。