DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Image Format Converter — DeepSeek Harness 插件(DSH Plugin)
← Plugins
I

dsh-image-format-converter

Image Format Converter

将绑定到模型的图像转换为 JPEG/PNG/WebP,以兼容 LM Studio

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:M0R1C/dsh-vision-fix-lmstudio#3a5f8f238cb9088519a919214112e2c5f6ea543f
README兼容性版本

兼容性与来源证明

Image Format Converter 以 dsh-image-format-converter 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/12

版本

0.2.0stable
2026/9/12

相关插件

正在加载相关插件…

最新版
0.2.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
未声明
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/12
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

继续浏览 vision-media 分类下经过校验的插件。

Tool Describe Image@linxin666/dsh-tool-describe-image面向模型的 describe_image 工具,用于 dsh Web GUI:通过在兼容 OpenAI 的端点调用视觉语言模型,为文本模型提供图像理解能力,以描述一张图像(本地路径、http(s) URL 或附件引用)。可热插拔 —Modlens@liustack/modlens面向仅支持文本的 LLM 的插件视觉能力,由免费的 Antigravity CLI 提供支持Deepseek Ivideodeepseek-ivideoiPolloWork HyperFrames Video Studio,以及 27 个可编辑视频模板,以原生 DeepSeek Harness 对话视图呈现。Imagegen@dickpy/dsh-imagegendsh Web GUI 的 AI 图像生成插件:通过可配置的提供商渠道实现文生图和图生图(gpt-image-2 / grok-imagine-image / nanobanana series / seedream-5.0-pro / dall-e-3,支持原生 xAI Grok Imagine、Google Nano Banana a

README

dsh-vision-fix-lmstudio

Починка ошибки 400: 'url' field must be a base64 encoded image при работе с локальными vision-моделями в LM Studio из DeepSeek Harness Desktop.

Плагин конвертирует изображения, отправляемые в модель, в подходящий формат — на лету, до того как запрос уйдёт в провайдер. Просто отметьте галочками модели, для которых конвертация включена, и нажмите «отправить».


🎯 Какую проблему решает

LM Studio и большинство локальных vision-моделей ожидают изображения в JPEG и падают с ошибкой 400: 'url' field must be a base64 encoded image при попытке отправить WebP.

Облачные провайдеры (OpenAI, Anthropic, DeepSeek и др.) — наоборот, часто принимают только WebP или PNG, и отправка JPEG в них приводит к ошибке или заметной потере качества.

До этого плагина приходилось выбирать что-то одно:

  • Держать прокси-сервис, который перехватывает запрос и пересобирает его.
  • Мириться с ошибками и вручную конвертировать картинки перед отправкой.

Теперь — один раз настроили галочки в UI DSH, и забыли.


📦 Установка

Через DSH CLI

dsh plugin --profile web add github:MORIC/dsh-vision-fix-lmstudio

Через магазин плагинов

Откройте DSH Desktop → Настройки → Плагины (или «Магазин плагинов»), найдите «Формат изображений» и нажмите «Установить».

Вручную

Склонируйте репозиторий и добавьте его как плагин:

git clone https://github.com/MORIC/dsh-vision-fix-lmstudio.git
cd dsh-vision-fix-lmstudio
pnpm install
pnpm build
dsh plugin --profile web add .

⚙️ Использование

  1. Откройте DSH → Настройки → Формат изображений.
  2. Появится список всех ваших провайдеров и моделей, сгруппированный по провайдеру.
  3. Поставьте галочки напротив моделей, которые должны получать сконвертированные картинки. Модели без галочки получают изображения в исходном формате.
  4. Настройки применяются автоматически — ничего нажимать не нужно, справа снизу появится «Сохранено».

Быстрые действия

  • Кнопки «Вкл / Выкл» у каждого провайдера — массово включить или отключить все модели одного провайдера одним кликом.

  • Поиск — фильтр по имени провайдера или модели. Полезно, когда моделей десятки.

  • «Дополнительные шаблоны» — ручной список wildcard-масок для случаев, когда нужной модели ещё нет в списке (или вы хотите отключить целого провайдера разом):

    lmstudio/*
    openai/gpt-4-vision-preview
    

    Строка, начинающаяся с #, игнорируется.


🔧 Тонкая настройка

Все параметры конвертации задаются в cordis.patch.yml в корне пакета и применяются ко всем моделям, для которых включена конвертация:

- insert:
    - id: image-format-converter
      name: 'dsh-image-format-converter'
      config:
        targetFormat: jpeg       # jpeg | png | webp
        jpegQuality: 90          # 1..100
        pngCompression: 6        # 0..9
        webpQuality: 85          # 1..100
        convertOversized: true   # уменьшать ли слишком большие картинки
        maxDimension: 2048       # максимальная сторона, px

Чтобы изменить — поправьте cordis.patch.yml и перезапустите DSH.

Скоро: выбор формата в самом UI, без правки yml. Следите за обновлениями.


🖥️ Требования

КомпонентВерсия
DeepSeek Harness0.1.2-rc.1 или новее
Node.js≥ 20
DSH Desktop2.0.5+ (если используете десктоп-версию)
ОСWindows 10/11, Linux, macOS

sharp (используется для конвертации) устанавливается автоматически с пре-собранными бинарниками для всех популярных платформ. Если установка падает на этапе сборки — см. документацию sharp.


🩺 Диагностика

Плагин не появился в настройках

Откройте F12 → Console в окне DSH и посмотрите на ошибки. Также проверьте, что при запуске DSH в его логах есть строка:

[image-format-converter] Активен; target=jpeg; excluded=0

Список моделей пустой

Проверьте прямой запрос к роуту плагина (порт DSH виден в адресной строке браузера):

http://127.0.0.1:<port>/image-format-converter/models

Если ответ {"providers":[],"warning":"…"} — пришлите текст warning в Issues: там будет видно, какой именно метод llm не отвечает на вашей версии DSH.

Картинки не конвертируются

В логах хоста DSH при отправке сообщения с картинкой должны пробегать строки:

[image-format-converter] image/webp → image/jpeg (234567 → 89123 байт)
[image-format-converter] lmstudio/… в списке исключений — пропускаем

Если строк нет — значит либо модель без галочки (проверьте UI), либо excludedModels пуст (т.е. всё включено). Если строка есть, но в LM Studio всё равно ошибка — пришлите содержимое строки в Issues.


🤝 Совместимость с другими плагинами

  • dsh-plugin-wallpaper-engine — работает независимо, конфликтов нет.
  • Любые другие llm/stream-хуки — плагин защищён от повторной обработки одного запроса (через WeakSet), так что если несколько плагинов патчат llm/stream, каждый обработает запрос ровно один раз.

🛠️ Разработка

git clone https://github.com/MORIC/dsh-vision-fix-lmstudio.git
cd dsh-vision-fix-lmstudio
pnpm install
pnpm build       # собирает lib/index.js и lib/client.js

Структура

src/
  index.ts        # хост-часть: конвертация, HTTP-роут /models, llm/stream-хук
  client.tsx      # клиентская секция настроек (React)
  shared.ts       # общие типы + BASE_PATH

lib/              # скомпилированный результат (закоммичен)
scripts/
  postbuild-client.mjs   # переименовывает client.iife.js → client.js
cordis.patch.yml  # манифест плагина для DSH

Как это работает

  1. При llm/stream плагин смотрит на поле options.provider/model — это ключ модели.
  2. Сверяет его с excludedModels (wildcard lmstudio/* поддерживается).
  3. Если модели нет в списке исключений — проходит по messages[].content[], находит блоки типа image, читает байты аттачмента, конвертирует через sharp, сохраняет как новый аттачмент и подменяет блок.
  4. Если конвертировать нечего или модель исключена — просто передаёт управление дальше.

📄 Лицензия

MIT — см. LICENSE.


Если плагин сэкономил вам вечер — поставьте ⭐ репозиторию и откройте Issue с описанием вашего сценария: чужие кейсы помогают другим быстрее понять, что это работает не только у них.