テーマ
言語

OMP (oh-my-pi)

~/.omp/agent/models.yml を使って OMP (oh-my-pi) コーディングエージェントを GetVibe API に接続します。baseUrl が getvibeapi.com/v1 で、モデルを自動検出する OpenAI 互換プロバイダーです。

OMP(oh-my-pi、コマンド omp)は Pi をベースにしたターミナル用コーディングエージェントです。カスタムプロバイダーは ~/.omp/agent/models.yml(JSON ではなく YAML)から読み込みます。YAML ファイルがまだない場合、OMP は古い models.json を一度だけ models.yml に移行します。

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 を付けない名前を使ってください。サフィックスは 1 つのチャネルに固定し、正常なチャネルへの自動切り替えを無効にします。

確認

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

Anthropic 形式の Claude(任意)

上記のプロバイダーは Claude を含むすべてのモデルを /v1/chat/completions 経由で送信するため、これで十分です。Anthropic のネイティブ形式(/v1/messages)を使う場合は、同じ providers の下に 2 つ目のブロックを追加します:

  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