Updated 2026-06-19
DeepSeek Oh My Pi setup: use the official `models.yml` compat block or expect thinking-mode tool calls to break
DeepSeek's official Oh My Pi page is stronger than a generic OpenAI-compatible setup note because it says the built-in DeepSeek entries are not enough for reliable use. The docs publish a custom `~/.omp/agent/models.yml`, lock in DeepSeek-specific compat fields, and explain why missing those fields can cause 400 errors in longer thinking-mode sessions with tool calls. That makes this one of the most useful current support-query pages in the official DeepSeek agent stack.
1. What DeepSeek officially says about Oh My Pi
DeepSeek describes Oh My Pi as a terminal AI coding agent, but the key signal is not the branding. It is the warning that the built-in DeepSeek model entries are incomplete and should not be trusted as the final compatibility layer.
That is unusually valuable documentation because it tells developers up front that a default tool surface is not the safe baseline. Start from DeepSeek's published file instead.
Sources checked
- DeepSeek official Oh My Pi integration guide - Primary source for the custom `models.yml`, compat fields, and known issues.
2. Create the provider file exactly where DeepSeek expects it
DeepSeek's page uses `~/.omp/agent/models.yml` as the source of truth. That path matters because Oh My Pi's built-in entries and your custom provider file are not the same thing.
If you edit the wrong location, you can spend time debugging an old compatibility block that the tool is still loading behind the scenes.
providers:
deepseek:
baseUrl: https://api.deepseek.com
api: openai-completions
apiKey: DEEPSEEK_API_KEY
authHeader: true3. Keep the model metadata and compat fields intact
The official page does more than add a URL and key. It defines DeepSeek V4 Pro and Flash with 1M context, 384K max tokens, thinking-mode metadata, and a full compat block.
Do not aggressively simplify that file on day one. The docs are telling you that ordinary defaults are not enough here.
models:
- id: deepseek-v4-pro
name: DeepSeek V4 Pro
reasoning: true
thinking:
minLevel: high
maxLevel: xhigh
mode: effort
contextWindow: 1000000
maxTokens: 384000
compat:
supportsToolChoice: false
requiresReasoningContentForToolCalls: true
requiresAssistantContentForToolCalls: true
reasoningEffortMap:
high: high
xhigh: max
extraBody:
thinking:
type: enabledSources checked
- DeepSeek official Oh My Pi integration guide - Provides the compat fields that prevent thinking-mode tool-call failures.
4. Understand the three critical failure guards
DeepSeek calls out three fields as essential for thinking-mode tool use: `supportsToolChoice: false`, `requiresReasoningContentForToolCalls: true`, and `requiresAssistantContentForToolCalls: true`.
This is the real reason the page matters. Without those fields, DeepSeek says Oh My Pi can hit `400` errors in longer tool-using reasoning sessions. That turns a vague compatibility complaint into a concrete integration contract.
| Field | Official value | Why it matters |
|---|---|---|
| supportsToolChoice | `false` | DeepSeek V4 thinking mode rejects the `tool_choice` parameter in this flow |
| requiresReasoningContentForToolCalls | `true` | Preserves reasoning content across tool-call turns to avoid 400 errors |
| requiresAssistantContentForToolCalls | `true` | Keeps assistant tool-call messages non-null in the way DeepSeek expects |
5. Do not append `/v1`, and map `xhigh` to `max`
DeepSeek's notes are explicit that the base URL should stay `https://api.deepseek.com` without appending `/v1` in this Oh My Pi provider block.
The page also maps Oh My Pi's `xhigh` effort level to DeepSeek's supported `max` value. Without that translation, the tool can send an unsupported effort label even if the rest of the file looks correct.
6. Use built-in entries only as discovery, not as the trusted runtime baseline
The official page says recent Oh My Pi builds may list DeepSeek V4 Pro and Flash in `omp --list-models deepseek`, but that is not enough. Those built-in entries still miss the critical compat fields.
That means the right support answer is not 'the tool already lists DeepSeek, so you're done.' The safe answer is 'use the DeepSeek-published `models.yml` anyway.'
For adjacent terminal harnesses, compare `/guides/deepseek-kilo-code-setup`, `/guides/deepseek-pi-coding-agent`, and `/guides/deepseek-crush-agent-setup`.
7. Where this guide fits on a DeepSeek-first site
This page captures DeepSeek support intent around a real agent integration. It does not imply that Oh My Pi is sold here, and it should not trigger any plan-card, stock, or payment-config changes.
The conversion path stays narrow: learn the official DeepSeek compat contract here, then visit `/pricing` only if you need an in-stock DeepSeek API key route.
FAQ
Which file should I edit for DeepSeek Oh My Pi setup?
DeepSeek's official guide uses `~/.omp/agent/models.yml` as the custom provider file.
Why does DeepSeek say the built-in Oh My Pi entries are not enough?
Because the official docs say the built-in entries miss critical compat fields needed for reliable thinking-mode tool calls, which can lead to 400 errors.
Should I use `https://api.deepseek.com` or `https://api.deepseek.com/v1` in Oh My Pi?
Use `https://api.deepseek.com` without `/v1`, which is the exact base URL noted in DeepSeek's official Oh My Pi page.
What causes 400 errors in DeepSeek Oh My Pi sessions?
A common cause is dropping the required compat fields for reasoning-content and assistant-content preservation in tool-call conversations.
Does this guide mean Oh My Pi is a purchasable plan on this site?
No. This page documents a DeepSeek integration path. Purchasable products still depend on actual stocked inventory on `/pricing`.
The practical Oh My Pi rule is simple: trust DeepSeek's custom `models.yml` over the built-in entries, keep the compat block intact, and treat any 400 in thinking-mode tool calls as a schema problem before you blame the model.
Related model comparisons
Continue from this guide into structured DeepSeek-first comparison pages with model tables, routing advice, and pricing context.