← Back to PRs

#9821: add DeepSeek API provider support

by avibrahms open 2026-02-05 18:29 View on GitHub →
cli commands stale
## Summary Adds DeepSeek API as a first-class LLM provider to OpenClaw's onboarding flow. ## Changes - Added DeepSeek to authentication choice types and options - Created DeepSeek authentication handler following existing provider patterns - Implemented provider configuration with proper model definitions - Full integration with credential management system ## Testing - ✅ Build passing - ✅ All TypeScript compilation successful - ✅ Follows existing patterns (Anthropic/Moonshot) Resolves #7309 <!-- greptile_comment --> <h2>Greptile Overview</h2> <h3>Greptile Summary</h3> This PR adds DeepSeek as a first-class onboarding/auth provider by introducing a new `deepseek-api-key` auth choice, wiring it into the auth-choice dispatcher, and adding provider/model configuration helpers (`applyDeepSeekProviderConfig`/`applyDeepSeekConfig`) plus a credentials writer (`setDeepSeekApiKey`). It also updates onboarding option types to accept a `deepseekApiKey` flag and registers a new CLI tagline/check script tweak. <h3>Confidence Score: 4/5</h3> - Mostly safe to merge, but a small config constant duplication should be fixed to avoid future breakage in default model selection. - DeepSeek integration follows existing patterns and appears type-safe, but there are two separate `DEEPSEEK_DEFAULT_MODEL_REF` constants in different modules, which is a real footgun for config/model key consistency once either side changes. - src/commands/onboard-auth.credentials.ts, src/commands/onboard-auth.config-core.ts <!-- greptile_other_comments_section --> <sub>(3/5) Reply to the agent's comments like "Can you suggest a fix for this @greptileai?" or ask follow-up questions!</sub> <!-- /greptile_comment -->

Most Similar PRs