Omnimodal
主模型使用纯文本模型时,只要任务需要看媒体、听媒体或生成媒体,就自动调用 omnimodal_* MCP 工具,不要等用户手动开启,也不要自行假设媒体内容。
自动触发
- 用户消息中有图片、视频、音频路径或附件。
- 任务包含 OCR、截图、UI、设计稿、图表、表格图片、错误弹窗、音频/视频理解。
- 主任务不是媒体任务,但为了完成它必须知道媒体内容。
- 用户要求生成图片、视频、语音、音乐、声音克隆或声音设计。
识别工具
- 单张图片:
omnimodal_recognize_image(image, task, mode)。image 支持本地路径、data: URL 和可解码的 base64。
- 多张图片:
omnimodal_recognize_images_batch(images, task, mode, max_workers)。
- 单个视频:
omnimodal_recognize_video(video, task, mode)。
- 批量视频:
omnimodal_recognize_videos_batch(videos, task, mode, max_workers)。
- 单个音频:
omnimodal_recognize_audio(audio, task, mode),长音频自动走 ASR 转写。
- 批量音频:
omnimodal_recognize_audios_batch(audios, task, mode, max_workers)。
- 剪贴板图片:
omnimodal_read_clipboard_image(task, mode)。
- 拖拽媒体:
omnimodal_read_dragged_image / omnimodal_read_dragged_video / omnimodal_read_dragged_audio。
网页动态内容先调用 omnimodal_capture_page(url, actions, viewport, output_dir),再把截图路径交给批量识别。Windows 全屏、主屏或指定窗口截图先调用 omnimodal_list_windows(),再调用 omnimodal_capture_windows(mode, window, output_dir)。
生成工具
omnimodal_generate_image(prompt, tier, size, n, wait, confirm):文生图。
omnimodal_generate_video(prompt, tier, duration, resolution, wait, confirm):文生视频。
omnimodal_generate_video_from_image(image, prompt, tier, duration, resolution, wait, confirm):图生视频。
omnimodal_edit_video(video, prompt, tier, duration, resolution, reference_image, wait, confirm):视频编辑。
omnimodal_generate_audio(text, voice, tier, kind, preview_text, wait, confirm):TTS、声音克隆、声音设计、音乐生成。
omnimodal_get_task_result(task_id):查询异步任务。
费用确认是强制规则:生成工具必须在调用时传 confirm=true;否则返回预计费用且不实际调用付费接口。不要绕过确认。
生成后不要自动识别验证:用户要求生成图片、视频或音频时,只调用对应生成工具并直接返回结果路径;不要为了“检查生成效果”再自动调用识别工具。只有用户明确要求检查生成结果、或生成结果明显异常时才允许追加识别。
mode 档位
识别档位统一为:
ocr:仅图片文字提取。
quick:快速识别,关闭思考,短输出。
standard:标准提取,默认。
full:完整提取,不限制输出。
quick_analysis / balanced_analysis / deep_analysis:逐步加强的分析档。
档位可通过插件目录 config/profiles.json 覆盖;本机私有覆盖写在 config/local.json,不会进入 Git。
配置
API Key 只写在插件根目录 .env:
OMNIMODAL_API_KEY=你的千问或DashScope API Key
OMNIMODAL_PROVIDER=dashscope
OMNIMODAL_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
OMNIMODAL_IMAGE_MODEL=qwen3.7-flash
OMNIMODAL_VIDEO_MODEL=qwen3.7-flash
OMNIMODAL_AUDIO_MODEL_STANDARD=qwen3.5-omni-flash
OMNIMODAL_AUDIO_MODEL_PRO=qwen3.5-omni-plus
可切换厂商:
OMNIMODAL_PROVIDER=zai:GLM 图片/视频/音频理解、GLM 文生图、GLM 文生视频和 GLM ASR。
OMNIMODAL_PROVIDER=openai_compatible:识别和 OpenAI Images 风格图片生成;视频/音频生成会返回明确的不支持提示。
模型目录、档位、超时、输出目录等默认值位于 config/model_catalog.json 和 config/profiles.json,均可用 config/local.json 覆盖。
Claude 桌面端
Claude 桌面端跨窗口拖入的媒体不落盘。图片复制进剪贴板后调用 omnimodal_read_clipboard_image;视频和音频请用户保存为文件后提供明确路径。禁止扫描 Temp、按时间戳猜文件,或输出“很可能/可能是你刚粘贴的图片”。
命令行兜底
uv run --project <插件根目录> omnimodal-recognize --image <图片路径> --task "<任务>" --mode standard
uv run --project <插件根目录> omnimodal-recognize --video <视频路径> --task "<任务>" --mode standard
uv run --project <插件根目录> omnimodal-recognize --audio <音频路径> --task "<任务>" --mode standard
生成服务仅支持 stdio MCP 模式;异步任务超时后返回 task_id,可稍后查询。
1---2name: omnimodal3description: 为纯文本主模型提供多模态能力:识别图片、视频、音频,并生成图片、视频、音频。遇到图片路径、截图、UI/网页截图、图表、错误弹窗、OCR、音频/视频理解、文生图/文生视频/TTS 或任何需要多模态能力的任务时自动启用。4---56# Omnimodal78主模型使用纯文本模型时,只要任务需要看媒体、听媒体或生成媒体,就自动调用 `omnimodal_*` MCP 工具,不要等用户手动开启,也不要自行假设媒体内容。910## 自动触发1112- 用户消息中有图片、视频、音频路径或附件。13- 任务包含 OCR、截图、UI、设计稿、图表、表格图片、错误弹窗、音频/视频理解。14- 主任务不是媒体任务,但为了完成它必须知道媒体内容。15- 用户要求生成图片、视频、语音、音乐、声音克隆或声音设计。1617## 识别工具1819- 单张图片:`omnimodal_recognize_image(image, task, mode)`。`image` 支持本地路径、`data:` URL 和可解码的 base64。20- 多张图片:`omnimodal_recognize_images_batch(images, task, mode, max_workers)`。21- 单个视频:`omnimodal_recognize_video(video, task, mode)`。22- 批量视频:`omnimodal_recognize_videos_batch(videos, task, mode, max_workers)`。23- 单个音频:`omnimodal_recognize_audio(audio, task, mode)`,长音频自动走 ASR 转写。24- 批量音频:`omnimodal_recognize_audios_batch(audios, task, mode, max_workers)`。25- 剪贴板图片:`omnimodal_read_clipboard_image(task, mode)`。26- 拖拽媒体:`omnimodal_read_dragged_image` / `omnimodal_read_dragged_video` / `omnimodal_read_dragged_audio`。2728网页动态内容先调用 `omnimodal_capture_page(url, actions, viewport, output_dir)`,再把截图路径交给批量识别。Windows 全屏、主屏或指定窗口截图先调用 `omnimodal_list_windows()`,再调用 `omnimodal_capture_windows(mode, window, output_dir)`。2930## 生成工具3132- `omnimodal_generate_image(prompt, tier, size, n, wait, confirm)`:文生图。33- `omnimodal_generate_video(prompt, tier, duration, resolution, wait, confirm)`:文生视频。34- `omnimodal_generate_video_from_image(image, prompt, tier, duration, resolution, wait, confirm)`:图生视频。35- `omnimodal_edit_video(video, prompt, tier, duration, resolution, reference_image, wait, confirm)`:视频编辑。36- `omnimodal_generate_audio(text, voice, tier, kind, preview_text, wait, confirm)`:TTS、声音克隆、声音设计、音乐生成。37- `omnimodal_get_task_result(task_id)`:查询异步任务。3839**费用确认是强制规则**:生成工具必须在调用时传 `confirm=true`;否则返回预计费用且不实际调用付费接口。不要绕过确认。4041**生成后不要自动识别验证**:用户要求生成图片、视频或音频时,只调用对应生成工具并直接返回结果路径;不要为了“检查生成效果”再自动调用识别工具。只有用户明确要求检查生成结果、或生成结果明显异常时才允许追加识别。4243## mode 档位4445识别档位统一为:4647- `ocr`:仅图片文字提取。48- `quick`:快速识别,关闭思考,短输出。49- `standard`:标准提取,默认。50- `full`:完整提取,不限制输出。51- `quick_analysis` / `balanced_analysis` / `deep_analysis`:逐步加强的分析档。5253档位可通过插件目录 `config/profiles.json` 覆盖;本机私有覆盖写在 `config/local.json`,不会进入 Git。5455## 配置5657API Key 只写在插件根目录 `.env`:5859```powershell60OMNIMODAL_API_KEY=你的千问或DashScope API Key61OMNIMODAL_PROVIDER=dashscope62OMNIMODAL_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v163OMNIMODAL_IMAGE_MODEL=qwen3.7-flash64OMNIMODAL_VIDEO_MODEL=qwen3.7-flash65OMNIMODAL_AUDIO_MODEL_STANDARD=qwen3.5-omni-flash66OMNIMODAL_AUDIO_MODEL_PRO=qwen3.5-omni-plus67```6869可切换厂商:7071- `OMNIMODAL_PROVIDER=zai`:GLM 图片/视频/音频理解、GLM 文生图、GLM 文生视频和 GLM ASR。72- `OMNIMODAL_PROVIDER=openai_compatible`:识别和 OpenAI Images 风格图片生成;视频/音频生成会返回明确的不支持提示。7374模型目录、档位、超时、输出目录等默认值位于 `config/model_catalog.json` 和 `config/profiles.json`,均可用 `config/local.json` 覆盖。7576## Claude 桌面端7778Claude 桌面端跨窗口拖入的媒体不落盘。图片复制进剪贴板后调用 `omnimodal_read_clipboard_image`;视频和音频请用户保存为文件后提供明确路径。禁止扫描 `Temp`、按时间戳猜文件,或输出“很可能/可能是你刚粘贴的图片”。7980## 命令行兜底8182```powershell83uv run --project <插件根目录> omnimodal-recognize --image <图片路径> --task "<任务>" --mode standard84uv run --project <插件根目录> omnimodal-recognize --video <视频路径> --task "<任务>" --mode standard85uv run --project <插件根目录> omnimodal-recognize --audio <音频路径> --task "<任务>" --mode standard86```8788生成服务仅支持 stdio MCP 模式;异步任务超时后返回 `task_id`,可稍后查询。