Theme
Language

OMP (oh-my-pi)

Connect the OMP (oh-my-pi) coding agent to GetVibe API through ~/.omp/agent/models.yml: an OpenAI-compatible provider with baseUrl getvibeapi.com/v1 and automatic model discovery.

OMP (oh-my-pi, the omp command) is a terminal coding agent built on Pi. It reads custom providers from ~/.omp/agent/models.yml (YAML, not JSON). OMP migrates an old models.json to models.yml once, if no YAML file exists yet.

1. Add the provider

Create or extend ~/.omp/agent/models.yml. The discovery block pulls the model list from https://getvibeapi.com/v1/models together with each model's context size, output limit and image support, so you do not list models by hand.

providers:
  getvibe:
    baseUrl: https://getvibeapi.com/v1
    apiKey: GETVIBE_API_KEY
    api: openai-completions
    discovery:
      type: openai-models-list
apiKey is the name of an environment variable, not the key itself. If the variable is unset, OMP sends its name as the key and the server answers 401. You can paste the key into the file instead, but the variable is safer.

2. Set the key and pick a model

Create a key in the dashboard.

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

Inside a session, switch models with /models or Ctrl+P. Example IDs: getvibe/deepseek-v4.1-flash, getvibe/gpt-6.1-sol, getvibe/claude-sonnet-5.5. The full list is in the catalog. Use the bare name without a :suffix: a suffix pins one channel and turns off automatic failover to a healthy one.

Check

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

Claude in Anthropic format (optional)

The provider above sends every model, Claude included, through /v1/chat/completions, which is enough. For the native Anthropic format (/v1/messages), add a second block under the same 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
This baseUrl has no /v1: OMP appends /v1/messages itself. Keep auth: apiKey — without it OMP shapes requests for a Claude Code subscription. Select the model as getvibe-claude/claude-sonnet-5.5.

The file format is described in the OMP docs: docs/models.md.

OMP (oh-my-pi) + GetVibe API — models.yml provider | GetVibe API