Oh My Pi (OMP)
prism and prism-responses provider blocks into ~/.omp/agent/models.yml. Because OMP's bundled catalog rules can strip image input from some model ids, Prism adds a per-model compatibility carve-out for vision models.Last updated Reviewed against Prism v0.3.26
One-click setup
Open the Agents tab
Agents. OMP is detected when ~/.omp/agent/models.yml exists or the omp binary is on PATH.Click Setup
Select a Prism model in OMP
What Prism writes
providers:
prism:
baseUrl: http://127.0.0.1:11434/v1
apiKey: prism
api: openai-completions
auth: apiKey
models:
- id: "glm-5.1:cloud"
name: GLM 5.1 (Ollama Cloud)
input: [text, image]
contextWindow: 128000
maxTokens: 16384
reasoning: true
compat:
stripImageInput: false
prism-responses:
baseUrl: http://127.0.0.1:11434/v1
apiKey: prism
api: openai-responses
auth: apiKey
models: []Per-model fields
| Field | Source |
|---|---|
| id | The model's route key, which OMP sends to Prism. |
| name | The readable name from your Prism catalog. |
| input | text, plus image for vision models. |
| contextWindow / maxTokens | Your configured values, defaulting to 128000 and 16384. |
| reasoning | true only for reasoning models. |
| compat.stripImageInput | false for vision models on the Chat Completions route — see below. |
Why the vision carve-out exists
OMP ships catalog class rules that match on the bare model id. A rule written for one vendor's model can therefore catch a same-named model served through Prism and silently strip image parts, even though Prism faithfully forwards them upstream. Setting compat.stripImageInput: false on that model opts it out.
The Responses route has no such rule, so prism-responses models need no compatibility block. The key is type-checked by OMP and ignored by older builds, so it is safe across versions.
Two providers, one protocol each
| Provider | api value | Holds |
|---|---|---|
| prism | openai-completions | Every chat_completions model. |
| prism-responses | openai-responses | Models marked api: responses, and Codex OAuth models. |
OMP's protocol is set per provider, so mixing protocols requires both blocks. A block with no models is removed on re-sync rather than left empty, and the legacy prism-codex block is cleaned up automatically.
Add MCP servers
OMP keeps MCP servers in a separate file, ~/.omp/agent/mcp.json, beside the models.yml Prism already writes. Enabling OMP in the MCP tab adds a streamable-HTTP entry there. See MCP Gateway.