Тема
Язык

OMP (oh-my-pi)

Подключение агента OMP (oh-my-pi) к GetVibe API через ~/.omp/agent/models.yml: OpenAI-совместимый провайдер с baseUrl getvibeapi.com/v1 и автоматическим списком моделей.

OMP (oh-my-pi, команда omp) — агент для программирования в терминале, развитие Pi. Собственных провайдеров он читает из ~/.omp/agent/models.yml (YAML, не JSON). Старый models.json OMP один раз переносит в models.yml, если YAML-файла ещё нет.

1. Добавьте провайдера

Создайте или дополните ~/.omp/agent/models.yml. Блок discovery забирает список моделей из https://getvibeapi.com/v1/models вместе с размером контекста, лимитом ответа и поддержкой картинок каждой модели — вписывать модели вручную не нужно.

providers:
  getvibe:
    baseUrl: https://getvibeapi.com/v1
    apiKey: GETVIBE_API_KEY
    api: openai-completions
    discovery:
      type: openai-models-list
apiKey — это имя переменной окружения, а не сам ключ. Если переменная не задана, OMP отправит её имя как ключ, и сервер ответит 401. Ключ можно вписать прямо в файл, но переменная безопаснее.

2. Задайте ключ и выберите модель

Создайте ключ в личном кабинете.

export GETVIBE_API_KEY="sk-pv-..."
omp --model getvibe/gpt-6.1-sol

Внутри сессии модель меняется через /models или Ctrl+P. Примеры ID: getvibe/deepseek-v4.1-flash, getvibe/gpt-6.1-sol, getvibe/claude-sonnet-5.5. Полный список — в каталоге. Указывайте голое имя без :suffix: суффикс закрепляет один канал и отключает автоматическое переключение на здоровый канал.

Проверка

omp -p --model getvibe/gpt-6.1-sol "Reply with a single word: ready"

Claude в формате Anthropic (необязательно)

Провайдер выше отправляет все модели, включая Claude, через /v1/chat/completions — этого достаточно. Если нужен родной формат Anthropic (/v1/messages), добавьте второй блок в тот же providers:

  getvibe-claude:
    baseUrl: https://getvibeapi.com
    apiKey: GETVIBE_API_KEY
    auth: apiKey
    api: anthropic-messages
    models:
      - id: claude-sonnet-5.5
        name: Claude Sonnet 5.5
        reasoning: true
        input: [text, image]
        contextWindow: 1000000
        maxTokens: 128000
Здесь baseUrl — без /v1: OMP сам дописывает /v1/messages. Оставьте auth: apiKey — без этой строки OMP формирует запросы как для подписки Claude Code. Модель выбирается как getvibe-claude/claude-sonnet-5.5.

Формат файла описан в документации OMP: docs/models.md.

OMP (oh-my-pi) + GetVibe API — провайдер в models.yml | GetVibe API