Files
vision-bridge/README.md
T

109 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Opencode Vision Bridge Plugin
Этот плагин позволяет Opencode работать с изображениями, даже если активная модель не поддерживает мультимодальность. Он перехватывает изображения, отправляет их в указанную vision-модель для анализа, а затем заменяет изображение текстовым описанием в контексте диалога.
## Требования
- Доступ к API-эндпоинту Ludmila AI (https://ai.totmin.ru/v1).
- Ключ API Ludmila AI.
## Установка
### 1. Добавьте плагин в `~/.config/opencode/opencode.json`
В секцию `plugin` добавьте следующую запись:
```json
{
"plugin": [
// ... другие плагины
"git+https://git.totmin.ru/en2zmax/vision-bridge.git"
]
}
```
### 2. Настройте провайдер Ludmila AI
В секцию `provider` вашего `~/.config/opencode/opencode.json` добавьте или обновите блок `ludmila-ai`:
```json
{
"provider": {
"ludmila-ai": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ludmila AI",
"options": {
"baseURL": "https://ai.totmin.ru/v1",
"apiKey": "<ЗАМЕНИТЕ_НА_ВАШ_API_КЛЮЧ>"
},
"models": {
"gemini/gemini-2.5-flash": {
"attachment": true,
"limit": {
"context": 1048576,
"output": 65536
}
}
}
}
}
}
```
**ВАЖНО**: Замените `<ЗАМЕНИТЕ_НА_ВАШ_API_КЛЮЧ>` на ваш реальный API-ключ Ludmila AI.
### 3. Скопируйте файл субагента
Субагенты не загружаются из npm-пакетов, поэтому скопируйте файл `vision.md` в соответствующий каталог:
```bash
cp ~/totmin/opencode/plugins/vision-bridge/agents/vision.md ~/.config/opencode/agents/vision.md
```
### 4. Перезапустите Opencode
Изменения в конфигурации применяются только после перезапуска Opencode.
## Пример конфигурации (`examples/opencode.json`)
```json
{
"$schema": "https://opencode.ai/config.json",
"plugin": [
"opencode-browser",
"git+ssh://git@git.totmin.ru:en2zmax/vision-bridge.git"
],
"provider": {
"ludmila-ai": {
"npm": "@ai-sdk/openai-compatible",
"name": "Ludmila AI",
"options": {
"baseURL": "https://ai.totmin.ru/v1",
"apiKey": "<ЗАМЕНИТЕ_НА_ВАШ_API_КЛЮЧ>"
},
"models": {
"gemini/gemini-2.5-flash": {
"attachment": true,
"limit": {
"context": 1048576,
"output": 65536
}
}
}
}
},
"agent": {
"vision": {
"mode": "subagent",
"model": "ludmila-ai/gemini/gemini-2.5-flash",
"description": "Анализ изображений и скриншотов (OCR текста или разбор UI)",
"permission": {
"read": "allow",
"glob": "allow",
"external_directory": "allow",
"edit": "deny",
"bash": "deny"
}
}
}
}