feat: DeepSeek provider — add to settings dropdown (#947) #958

Closed
sleepy wants to merge 2 commits from fix/947-deepseek-provider into dev
Owner

Add DeepSeek as a first-class provider option in the settings dropdown.

  • Endpoint resolver: auto-insert /v1 prefix for bare api.deepseek.com
  • 6 new tests (3 chat + 3 models) for DeepSeek and OpenAI bare-host resolution
  • All 32 tests passing

Closes #947

Add DeepSeek as a first-class provider option in the settings dropdown. - Endpoint resolver: auto-insert /v1 prefix for bare api.deepseek.com - 6 new tests (3 chat + 3 models) for DeepSeek and OpenAI bare-host resolution - All 32 tests passing Closes #947
Ported from upstream commit 5ed9b74 (origin/Sirsyorrz/slash-autocomplete).

- New module: static/js/slashAutocomplete.js
  Reads COMMANDS + LEGACY_ALIASES from slashCommands.js.
  Shows a fixed popup when the composer starts with /.
  Keyboard-navigable (↑↓/Tab/Enter/Esc), click-to-select, scrollable.
  Groups entries by category, promotes short legacy aliases
  (/new, /clear, /web, etc.), excludes easter eggs.
  Lazy-imported on init to avoid blocking page load.

- slashCommands.js: export COMMANDS and LEGACY_ALIASES so the
  autocomplete module can read the command registry.

- chat.js: lazy-import slashAutocomplete on init, wire to #message textarea.

- style.css: popup + row styles using existing CSS variables.

- tests: port static regression tests for MAX_VISIBLE and
  _exactCommandGroupItems behavior.

Closes #946
- Add /v1 auto-insertion for bare api.deepseek.com and api.openai.com hosts
  in build_chat_url and build_models_url (aligns with upstream endpoint_resolver)
- Add 6 tests for DeepSeek and OpenAI bare-host endpoint resolution
- DeepSeek is already registered in the HTML dropdown (https://api.deepseek.com/v1),
  provider detection (_providers.py), logo (providers.js), tool selection,
  and thinking model patterns. This commit ensures the endpoint resolver
  handles bare hosts correctly, closing the gap for manual URL entry.

Closes #947
sleepy closed this pull request 2026-06-18 18:33:48 +02:00

Pull request closed

Sign in to join this conversation.
No description provided.