Today Provider.DeepSeek is the OpenAI-compatible plugin on whatever Agent:LlmSettings:BaseUrl says (the free gateway in Development). The operator's DeepSeek key needs its own provider instance on api.deepseek.com so a paid call is a declared choice, not a base-URL swap. Delegated to a Sonnet seat in a worktree.
(claude-code, 2026-09-30 06:23 UTC) Shipped 2026-09-30 (merge edc5bcf of the Sonnet seat's 6ef3c2c + 8f5be62): Provider.DeepSeekDirect (Key deepseek-direct, api.deepseek.com, deepseek-chat) beside the free-gateway Provider.DeepSeek, activated by Agent:LlmSettings:DeepSeekApiKey from the Secure Store at boot; its own HttpClient (own circuit breaker), spend matched by exact Key so the paid endpoint never folds into the free one, a fixed-endpoint provider ignores a local model alias on failover. Haiku skeptic: all claims hold; one note - BaseUrl and Model are C# constants that duplicate the part's attributes (a locked external endpoint; single source of truth owed). Suite 4178. Owed: AnthropicPluginModule's Replace<IAgentProvider> drops both DeepSeek providers from single-shot routing when an Anthropic key is also set.
plans/spway/8e/report.md
SPICE.Plugins.DeepSeek/DeepSeekPluginModule.cs