Commit Graph

4012 Commits

Author SHA1 Message Date
Peter Steinberger fb0d60d7f3
fix: resolve MiniMax portal usage auth 2026-04-04 12:42:30 +01:00
Vincent Koc 83c10350c6 refactor(providers): share anthropic stream helper 2026-04-04 20:35:30 +09:00
Vincent Koc 8f7b02e567 refactor(providers): share openai stream families 2026-04-04 20:29:11 +09:00
Peter Steinberger 561bacd06a
fix: harden synology chat TLS helper defaults 2026-04-04 20:21:13 +09:00
Vincent Koc bc648ac8e6 refactor(providers): add stream family hooks 2026-04-04 20:19:53 +09:00
Peter Steinberger 1037af01ad
style(agents): normalize runtime prompt formatting 2026-04-04 12:19:08 +01:00
Peter Steinberger f3aad63f4e
style(providers): normalize import and wrap formatting 2026-04-04 12:19:08 +01:00
Peter Steinberger 3207c5326a
refactor: share native streaming compat helpers 2026-04-04 12:18:45 +01:00
Peter Steinberger 605f48556b
refactor(browser): share lifecycle cleanup helpers 2026-04-04 12:17:46 +01:00
Peter Steinberger 0b1c9c7057
fix: stabilize codex auth ownership and ws fallback cache 2026-04-04 20:03:15 +09:00
Peter Steinberger bec891b2e2 test: cover attach-only browser stop cleanup (#60097) (thanks @pedh) 2026-04-04 19:59:59 +09:00
pedh 2c9723afd5 fix(browser): disconnect Playwright CDP session on stop for attachOnly/remote profiles
When `browser stop` is called for an `attachOnly` or remote CDP
profile, `profileState.running` is null (no process was launched), so
`stopRunningBrowser()` returned early without closing the Playwright
CDP connection. This left emulation overrides (prefers-color-scheme,
viewport, etc.) permanently applied until a full gateway restart.

Now call `closePlaywrightBrowserConnectionForProfile()` before
returning for attachOnly and remote CDP profiles, matching the cleanup
behavior already present in `resetProfile()`. Regular profiles that
were never started still return `{ stopped: false }`.

Fixes #60095
2026-04-04 19:59:59 +09:00
Jithendra d204be80af feat(tools): add MiniMax as bundled web search provider
Add native MiniMax Search integration via their Coding Plan search API
(POST /v1/coding_plan/search). This brings MiniMax in line with Brave,
Kimi, Grok, Gemini, and other providers that already have bundled web
search support.

- Implement WebSearchProviderPlugin with caching, credential resolution,
  and trusted endpoint wrapping
- Support both global (api.minimax.io) and CN (api.minimaxi.com)
  endpoints, inferred from explicit region config, model provider base
  URL, or minimax-portal OAuth base URL
- Prefer MINIMAX_CODE_PLAN_KEY over MINIMAX_API_KEY in credential
  fallback, matching existing repo precedence
- Accept SecretRef objects for webSearch.apiKey (type: [string, object])
- Register in bundled registry, provider-id compat map, and fast-path
  plugin id list with full alignment test coverage
- Add unit tests for endpoint/region resolution and edge cases

Closes #47927
Related #11399

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-04 19:56:04 +09:00
Matt Van Horn b22f6257f0 fix(browser): remove fromSurface: false for Chrome 146+ screenshot compat 2026-04-04 19:55:37 +09:00
Peter Steinberger 05da802e1c
refactor: split device-pair command helpers 2026-04-04 19:55:04 +09:00
Peter Steinberger 2a65bfee96
fix(mattermost): harden slash command token validation 2026-04-04 19:51:41 +09:00
Agustin Rivera 5da360cada fix(browser): trim validation error prefix 2026-04-04 19:51:02 +09:00
Agustin Rivera aefc6fc161 fix(browser): validate profile cdp urls 2026-04-04 19:51:02 +09:00
Peter Steinberger 36cc397548
fix: reuse shared Synology Chat secret compare 2026-04-04 19:49:35 +09:00
Peter Steinberger bc356cc8c2 fix: harden direct CDP websocket validation (#60469) (thanks @eleqtrizit) 2026-04-04 19:48:01 +09:00
Agustin Rivera c3f8427973 fix(browser): validate initial cdp endpoints 2026-04-04 19:48:01 +09:00
Agustin Rivera 80720b4994 fix(browser): validate cdp websocket pivots 2026-04-04 19:48:01 +09:00
Peter Steinberger 20a7b1a9dc fix: finalize device-pair scope hardening (#55996) (thanks @coygeek) 2026-04-04 19:44:43 +09:00
Coy Geek 9dcef6df02 fix: scope pairing guard to internal gateway callers 2026-04-04 19:44:43 +09:00
Coy Geek 05ca581ed0 fix: fail closed when pairing scopes are missing 2026-04-04 19:44:43 +09:00
Coy Geek 353d93613c fix: enforce pairing approval scopes 2026-04-04 19:44:43 +09:00
Peter Steinberger 87d840e9ee
fix: tighten Teams and device typing 2026-04-04 19:39:22 +09:00
Vincent Koc 39d2a719c9 refactor(providers): add family replay and tool hooks 2026-04-04 19:33:31 +09:00
Peter Steinberger 4e099689c0
feat: stream Claude CLI JSONL output 2026-04-04 19:33:08 +09:00
Vincent Koc 0a3211df2d
fix(openrouter): gate prompt cache markers by endpoint (#60761)
* fix(openrouter): gate prompt cache markers by endpoint

* test(openrouter): use claude sonnet 4.6 cache model
2026-04-04 19:32:13 +09:00
Peter Steinberger f0d3e231ef fix: cover bundled provider picker aliases (#58819) (thanks @Luckymingxuan) 2026-04-04 19:27:26 +09:00
Mingxuan fd3b7b5ae7 fix: add augmentModelCatalog hooks to bundled providers for proper filtering 2026-04-04 19:27:26 +09:00
Peter Steinberger d58b4d7425 fix: respect MINIMAX_API_HOST in bundled minimax catalogs (#34524) (thanks @caiqinghua) 2026-04-04 19:26:12 +09:00
Brad Groux fce81fccd8
msteams: add typingIndicator config and prevent duplicate DM typing indicator (#60771)
* msteams: add typingIndicator config and avoid duplicate DM typing

* fix(msteams): validate typingIndicator config

* fix(msteams): stop streaming before Teams timeout

* fix(msteams): classify expired streams correctly

* fix(msteams): handle link text from html attachments

---------

Co-authored-by: Brad Groux <bradgroux@users.noreply.github.com>
2026-04-04 04:34:24 -05:00
Peter Steinberger 74d39e9efe
fix(ci): type zai dynamic model test callbacks 2026-04-04 09:52:34 +01:00
Peter Steinberger 7c43dfe28f
fix(ci): isolate discord think autocomplete runtime 2026-04-04 09:49:35 +01:00
Peter Steinberger 323415204e fix: preserve registered glm-5 variants (#48185) (thanks @haoyu-haoyu) 2026-04-04 17:42:20 +09:00
ximi 9e0cf17d0c fix(minimax): correct model pricing per official docs 2026-04-04 17:40:57 +09:00
Peter Steinberger 1d5c57bad9
fix(ci): align browser and signal test expectations 2026-04-04 09:38:53 +01:00
Peter Steinberger b1e3e59429
fix(ci): align stale provider and channel tests 2026-04-04 09:35:14 +01:00
Peter Steinberger f4855baf35
fix(ci): await async provider test registration 2026-04-04 09:28:43 +01:00
Vincent Koc cdccbf2c1c
fix(github-copilot): send IDE auth headers on runtime requests (#60755)
* Fix Copilot IDE auth headers

* fix(github-copilot): align tests and changelog

* fix(changelog): scope copilot replacement entry

---------

Co-authored-by: VACInc <3279061+VACInc@users.noreply.github.com>
2026-04-04 17:22:19 +09:00
gnuduncan e934211170
fix(minimax): use global TTS endpoint default and add missing Talk Mode overrides
Switch DEFAULT_MINIMAX_TTS_BASE_URL from api.minimaxi.com (CN) to
api.minimax.io (global) so international API keys work out of the box.
Add vol and pitch to resolveTalkOverrides for parity with resolveTalkConfig.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 09:19:45 +01:00
gnuduncan 7d7f5d85b4
feat(minimax): add native TTS speech provider (T2A v2)
Add MiniMax as a fourth TTS provider alongside OpenAI, ElevenLabs, and
Microsoft. Registers a SpeechProviderPlugin in the existing minimax
extension with config resolution, directive parsing, and Talk Mode
support. Hex-encoded audio response from the T2A v2 API is decoded to
MP3.

Closes #52720

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 09:19:45 +01:00
Gaston Rodriguez b6b1d5dd6c Moonshot: reuse native base URL for Kimi web search 2026-04-04 17:16:29 +09:00
innocent-children 216294765b fix(kimi): unify runtime model fallback to kimi-k2.5
Remove DEFAULT_KIMI_MODEL (moonshot-v1-128k) and align resolveKimiModel
fallback to DEFAULT_KIMI_SEARCH_MODEL (kimi-k2.5). The legacy model
does not support the $web_search builtin_function tool, so env-var-only
users without a configured model would hit the original bug.
2026-04-04 17:11:47 +09:00
innocent-children 111495d3ca 修复kimi web_search错误 2026-04-04 17:11:47 +09:00
王淼0668000666 51d998d828 minimax: add image capability to MiniMax-M2.7 model 2026-04-04 17:07:35 +09:00
王淼0668000666 87b41ca693 minimax: add image capability to MiniMax-M2.7 model 2026-04-04 17:07:35 +09:00
Peter Steinberger 8cec7c68b9
fix(ci): restore typecheck on main 2026-04-04 09:05:17 +01:00