feat: add the DeepSeek platform provider and deepseek-flash #84

Merged
dank merged 1 commits from feat/83-deepseek-provider into main 2026-10-29 14:52:48 -07:00
Owner

Add DeepSeek's hosted API to agent/models.yml and register deepseek-flash.

  • Provider label is the bare deepseek: pi-catalog/src/hosts.ts keys the
    direct-DeepSeek behaviour set (max_tokens field, thinking extraBody,
    thinking-disable mode) off that exact name and off api.deepseek.com, so the
    house <api> (<host>) pattern would silently lose the endpoint's quirks.
  • Key is command-backed (!cat ~/.config/secrets/deepseek_api_key, 600) — no
    sk-… in the tracked tree; rotation is rewrite-then-restart.
  • Row declares the model card's pair: contextWindow: 1048576, maxTokens: 262144,
    input: [text, image], plus the October 2026 peak rate card in cost and the
    built-in descriptor's compat block (supportsToolChoice: false,
    supportsDeveloperRole: false, reasoning_content, thinking: enabled,
    temperature 1.0 / top_p 1.0).
  • Docs: new omp-docs/core/deepseek-provider.md, listed in core/index.md,
    entry in omp-docs/log.md. The WAN-door header comment no longer claims this
    file's only off-network provider is the OpenWebUI door.

Verified: scripts/kb-lint.sh 0 violations; bats tests/ 137/137 ok; scratch-HOME
omp models --no-extensions shows deepseek (4) with deepseek-flash 1M/262K
and zero validation failures; live omp --model 'deepseek/deepseek-flash:off' -p 'Reply with exactly the word OK' answers OK in 2.6 s, with a poisoned-port
control that hangs instead (proving the auth came from the new apiKey line).

Refs #83


cwd: /home/blank/.omp/wt/wt-20261029-142121-7c8a99d · session: ephemeral

Add DeepSeek's hosted API to `agent/models.yml` and register `deepseek-flash`. - Provider label is the bare `deepseek`: `pi-catalog/src/hosts.ts` keys the direct-DeepSeek behaviour set (`max_tokens` field, thinking `extraBody`, thinking-disable mode) off that exact name and off `api.deepseek.com`, so the house `<api> (<host>)` pattern would silently lose the endpoint's quirks. - Key is command-backed (`!cat ~/.config/secrets/deepseek_api_key`, 600) — no `sk-…` in the tracked tree; rotation is rewrite-then-restart. - Row declares the model card's pair: `contextWindow: 1048576`, `maxTokens: 262144`, `input: [text, image]`, plus the October 2026 peak rate card in `cost` and the built-in descriptor's compat block (`supportsToolChoice: false`, `supportsDeveloperRole: false`, `reasoning_content`, `thinking: enabled`, `temperature 1.0` / `top_p 1.0`). - Docs: new `omp-docs/core/deepseek-provider.md`, listed in `core/index.md`, entry in `omp-docs/log.md`. The WAN-door header comment no longer claims this file's only off-network provider is the OpenWebUI door. Verified: `scripts/kb-lint.sh` 0 violations; `bats tests/` 137/137 ok; scratch-HOME `omp models --no-extensions` shows `deepseek (4)` with `deepseek-flash 1M/262K` and zero validation failures; live `omp --model 'deepseek/deepseek-flash:off' -p 'Reply with exactly the word OK'` answers `OK` in 2.6 s, with a poisoned-port control that hangs instead (proving the auth came from the new `apiKey` line). Refs #83 --- cwd: /home/blank/.omp/wt/wt-20261029-142121-7c8a99d · session: ephemeral
dank added 1 commit 2026-10-29 14:48:01 -07:00
Refs #83

The first vendor-cloud chat row in agent/models.yml. The provider label is the
bare word `deepseek` because pi-catalog/src/hosts.ts keys the direct-DeepSeek
behaviour set (max_tokens field, thinking extraBody, thinking-disable mode) off
that exact name and off api.deepseek.com; the house `<api> (<host>)` pattern
would not match and the row would lose the quirks the endpoint answers to.

The key is command-backed (`!cat ~/.config/secrets/deepseek_api_key`, 600), so
no sk-… value enters the tracked tree, and the row declares the model card's own
pair: contextWindow 1048576 / maxTokens 262144, input [text, image], with the
October 2026 peak rate card in cost. Docs move to the new
omp-docs/core/deepseek-provider.md, indexed and logged in the same commit.
dank merged commit 3eb1ada55b into main 2026-10-29 14:52:48 -07:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dank/command-center#84