mcpField
V
vision-support

vision-support

github.com/penfickエージェントワークフロー12507 回インストール5 週間前に更新
リポジトリ

vision-support について

画像を扱えないモデル向けの画像認識ブリッジです。設定したビジョンモデルが画像をテキストで説明し、その結果を主モデルが後続の処理に使います。複数画像、フォールバックモデル、対話式設定に対応します。

主な機能

  1. 01ローカル画像や URL 画像のテキスト説明
  2. 02複数画像の分析と比較
  3. 03ビジョンモデルの対話式設定
  4. 04失敗時の別モデルへの切り替え
  5. 05カスタム OpenAI 互換プロバイダーの利用

活用シーン

  1. 01画像非対応モデルによるスクリーンショット分析
  2. 02画面レイアウトやデザインの問題調査
  3. 03複数画像の差分比較

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/penfick/skills --skill vision-support

インストール後、Claude Code で/vision-supportを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

config.example.json
install.mjs
install.sh
package.json
README.md
README.zh.md
bin/
cli.mjs
postinstall.mjs
references/
supported-models.md
scripts/
vision.mjs

詳細

プロジェクトの README より

Vision Support — 非多模态模型的图片识别桥接

铁律:本技能配置的所有模型仅用于图片内容识别,绝不参与主逻辑推理。 这些模型不会代替主模型做任何决策、分析或编码,它们只负责"看"图片然后把看到的内容用文字描述出来。

什么时候使用此技能

  • 用户在对话中附带了图片,但当前模型不支持图片理解
  • 用户提到截图/图片/界面/设计:"看看这个截图"、"界面有问题"、"这个设计稿"
  • 用户描述了一个视觉问题但说不清楚:"网页显示不对"、"布局乱了"
  • agent 在工作中遇到图片文件(PNG/JPG/WebP 等)
  • 通过指令 /vision 或 /skill:vision-support 手动触发

首次使用 — 一键初始化

node SKILL_DIR/scripts/vision.mjs init

交互式引导,只需三步:

  1. 选 Provider — 从预置的主流平台列表中选择
  2. 填密钥 — 输入 API Key(或环境变量名)
  3. 选模型 — 自动从 API 拉取可用模型列表供选择(如拉取失败则显示推荐列表)

支持的平台覆盖国内外主流:

分类平台
国际OpenAI、Google Gemini、Anthropic Claude、DeepSeek、Groq、Mistral、xAI (Grok)、OpenRouter、Fireworks AI
国内通义千问 (Qwen VL)、智谱 GLM (GLM-4V)、Moonshot (Kimi)、阶跃星辰 (Step)、MiniMax、SiliconFlow (硅基流动)、小米 MiMo
本地Ollama、LM Studio
自定义任何 OpenAI 兼容的第三方平台(自填 baseUrl)

添加备用模型

node SKILL_DIR/scripts/vision.mjs config add

同样的交互式引导,添加的模型作为 fallback 回退。主模型失败后自动尝试。

所有配置命令

# 交互式
node SKILL_DIR/scripts/vision.mjs init                    # 初始化主模型
node SKILL_DIR/scripts/vision.mjs config add              # 添加 fallback
node SKILL_DIR/scripts/vision.mjs config edit [name]      # 编辑模型

# 快捷命令
node SKILL_DIR/scripts/vision.mjs config list             # 列出所有模型
node SKILL_DIR/scripts/vision.mjs config primary [name]   # 设置主模型
node SKILL_DIR/scripts/vision.mjs config remove <name>    # 删除模型
node SKILL_DIR/scripts/vision.mjs config set-key <name> <key>   # 设置密钥
node SKILL_DIR/scripts/vision.mjs config set-url <name> <url>   # 设置 API 地址
node SKILL_DIR/scripts/vision.mjs config test [name]      # 测试连通性

使用方法 — 识别图片

单张
node SKILL_DIR/scripts/vision.mjs ./screenshot.png
node SKILL_DIR/scripts/vision.mjs ./ui.png "这个界面的布局有什么问题?"
node SKILL_DIR/scripts/vision.mjs "https://example.com/img.png" "描述这张图片"
多张
node SKILL_DIR/scripts/vision.mjs img1.png img2.png "对比这两张图的差异"
node SKILL_DIR/scripts/vision.mjs ./screenshots/*.png "分析这些界面截图"
node SKILL_DIR/scripts/vision.mjs ./local.png https://example.com/remote.jpg "描述这两张"
查找图片

如果用户提到图片但没给路径,先搜索:

find . -name "*.png" -o -name "*.jpg" -o -name "*.webp" | head -20
ls -lt *.png *.jpg *.webp 2>/dev/null

获取结果后的工作流

脚本成功后 stdout 输出的纯文本就是识别结果(stderr 是日志不影响)。

  1. 读取识别结果:stdout 内容即为图片描述
  2. 结合用户问题:把描述和用户需求结合
  3. 主模型继续工作:用识别结果作为上下文,主模型完成后续任务

回退机制

config list 中排第一位的 ★ 主模型优先调用。失败后自动依次尝试后续模型。所有模型都失败则非零退出码退出。

环境变量

变量说明
VISION_CONFIG_PATH自定义配置文件路径
VISION_DEFAULT_MODEL临时覆盖主模型(按 name 匹配)
VISION_API_KEY全局密钥回退

コメント