Commit Graph

132 Commits

Author SHA1 Message Date
Peter Steinberger dc0ee2e178
feat: add music generation tooling 2026-04-06 01:47:14 +01:00
Gustavo Madeira Santana 62583e2235 fix(google): restore forward-compat provider hooks 2026-04-05 19:04:55 -04:00
Peter Steinberger b5ade7b629
fix: surface normalized video durations 2026-04-05 23:57:48 +01:00
Peter Steinberger fdf381f1a7
fix: normalize video provider durations 2026-04-05 23:47:10 +01:00
Gustavo Madeira Santana 83f47a4d0a fix(google): restore gemini cli provider contract 2026-04-05 18:46:51 -04:00
Peter Steinberger d6d8d1716f
fix: resolve repo check drift 2026-04-05 22:58:29 +01:00
Peter Steinberger dea3ab0aa9
fix: align models status provider auth reporting 2026-04-05 22:46:14 +01:00
Peter Steinberger 932194b7d5
feat(video): add provider support and discord fallback 2026-04-05 22:06:56 +01:00
Peter Steinberger ce8492f9a0
chore: bump version to 2026.4.5 2026-04-05 21:33:04 +01:00
Peter Steinberger 1a47675e6c
fix: restore check after CLI seam cleanup 2026-04-05 19:06:34 +01:00
Peter Steinberger 05d351c430
refactor(cli): remove bundled cli text providers 2026-04-05 18:46:36 +01:00
Peter Steinberger 198083cde3
refactor: split doctor legacy normalizers and test ownership 2026-04-05 17:17:16 +01:00
Peter Steinberger 9f2b760d33
refactor: move media generation runtimes into core 2026-04-05 15:13:20 +01:00
Peter Steinberger 629baf5fa7
refactor: move plugin setup and memory capabilities to registries 2026-04-05 14:53:53 +01:00
Peter Steinberger be526d6423
refactor: split provider stream sdk seams 2026-04-05 11:19:05 +01:00
Vincent Koc f02e435188
fix(google): support gemini cli personal oauth (#61260)
* fix(google): support gemini cli personal oauth

* Apply suggestion from @greptile-apps[bot]

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* fix(google): prefer gemini settings over auth env fallback

* chore(changelog): format rebased gemini entry

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-04-05 11:12:54 +01:00
Vincent Koc 3fa70f3044
fix(google): support gemini cli 2.5 model ids (#61261)
* fix(google): realign gemini cli model defaults

* fix(google): keep gemini cli defaults while adding 2.5 support

* fix(google): preserve gemini template reasoning flags

* fix(google): fall back to cli templates for gemini 2.5 ids

* fix(google): keep gemini cli 3.1 clones local
2026-04-05 10:43:20 +01:00
Peter Steinberger bff55b55cb
style: normalize import ordering and wrapping 2026-04-05 09:26:39 +01:00
wzfmini01 ef5f47bd39
fix(google-gemini-cli-auth): detect bundled npm installs (#60486) (#60486)
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-05 08:41:43 +01:00
狼哥 eb130aa4e9
fix(google): disable pinned dns for image generation (#59873)
* fix(google): restore proxy-safe image generation (#59873)

* fix(ssrf): preserve transport policy without pinned dns

* fix(ssrf): use undici fetch for dispatcher requests

* fix(ssrf): type dispatcher fetch path

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-05 08:23:22 +01:00
Peter Steinberger 67d6fc8847
chore(plugins): sync versions to 2026.4.4 2026-04-04 20:03:01 +01:00
Peter Steinberger e3ac0f43df
feat(qwen): add qwen provider and video generation 2026-04-04 19:34:56 +01:00
hugh.li 9dd449045a
fix(google-gemini-cli-auth): fix Gemini CLI OAuth failures on Windows (#40729)
* fix(google-gemini-cli-auth): fix Gemini CLI OAuth failures on Windows

Two issues prevented Gemini CLI OAuth from working on Windows:

1. resolveGeminiCliDirs: the first candidate `dirname(dirname(resolvedPath))`
   can resolve to an unrelated ancestor directory (e.g. the nvm root
   `C:\Users\<user>\AppData\Local\nvm`) when gemini is installed via nvm.
   The subsequent `findFile` recursive search (depth 10) then picks up an
   `oauth2.js` from a completely different package (e.g.
   `discord-api-types/payloads/v10/oauth2.js`), which naturally does not
   contain Google OAuth credentials, causing silent extraction failure.

   Fix: validate candidate directories before including them — only keep
   candidates that contain a `package.json` or a `node_modules/@google/
   gemini-cli-core` subdirectory.

2. resolvePlatform: returns "WINDOWS" on win32, but Google's loadCodeAssist
   API rejects it as an invalid Platform enum value (400 INVALID_ARGUMENT),
   just like it rejects "LINUX".

   Fix: use "PLATFORM_UNSPECIFIED" for all non-macOS platforms.

* test(google-gemini-cli-auth): keep oauth regressions portable

* chore(changelog): add google gemini cli auth fix note

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-04 23:22:36 +09:00
Vincent Koc a2e0a094c1 test(providers): cover stream family plugin hooks 2026-04-04 23:20:28 +09:00
Vincent Koc bc648ac8e6 refactor(providers): add stream family hooks 2026-04-04 20:19:53 +09:00
Peter Steinberger f3aad63f4e
style(providers): normalize import and wrap formatting 2026-04-04 12:19:08 +01:00
Vincent Koc 39d2a719c9 refactor(providers): add family replay and tool hooks 2026-04-04 19:33:31 +09: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 65842aabad
refactor(providers): share google and xai provider helpers (#60722)
* refactor(google): share oauth token helpers

* refactor(xai): share tool auth fallback helpers

* refactor(xai): share tool auth resolution

* refactor(xai): share tool config helpers

* refactor(xai): share fallback auth helpers

* refactor(xai): share responses tool helpers

* refactor(google): share http request config helper

* fix(xai): re-export shared web search extractor

* fix(xai): import plugin config type

* fix(providers): preserve default google network guard
2026-04-04 16:14:15 +09:00
Peter Steinberger 3a3f88a80a
refactor(media): move provider defaults into media metadata 2026-04-04 07:00:47 +01:00
Peter Steinberger a23ab9b906
refactor: move voice-call realtime providers into extensions 2026-04-04 12:07:23 +09:00
Vincent Koc 858bf405f4
refactor(providers): share replay and tool compat helpers (#60637)
* refactor(providers): share replay and tool compat helpers

* chore(plugin-sdk): refresh api baseline
2026-04-04 10:55:36 +09:00
Vincent Koc 6366010884 fix(ci): route extension test helpers through public sdk seams 2026-04-04 00:03:48 +09:00
Josh Lehman 799c6f40aa
refactor: move provider replay runtime ownership into plugins (#60126)
* refactor: move provider replay runtime ownership into plugins

* fix(provider-runtime): address review followups

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-04-03 23:14:37 +09:00
Peter Steinberger 64755c52f2
test: move extension-owned coverage out of core 2026-04-03 10:58:44 +01:00
Agustin Rivera a26f4d0f3e
Separate Gemini OAuth state from PKCE verifier (#59116)
* fix(google): separate oauth state from pkce verifier

* fix(google): drop unused oauth callback state arg

* docs(changelog): add #59116 google oauth state fix

---------

Co-authored-by: Jacob Tomlinson <jtomlinson@nvidia.com>
2026-04-02 09:51:11 -07:00
Vincent Koc b0f94a227b
refactor(providers): normalize transport policy wiring (#59682)
* refactor(providers): normalize transport policy wiring

* fix(providers): address transport policy review

* fix(providers): harden transport overrides

* fix(providers): keep env proxy tls separate

* fix(changelog): note provider transport policy hardening
2026-04-02 22:54:34 +09:00
Vincent Koc 0e9a9dae84
fix(providers): centralize Google endpoint classification (#59556)
* fix(providers): centralize Google endpoint classification

* fix(providers): tighten Google endpoint fallback parsing

* fix(security): harden provider endpoint fallback parsing
2026-04-02 19:21:31 +09:00
Vincent Koc f28f0f29ba
fix(providers): centralize media request shaping (#59469)
* fix(providers): centralize media request shaping

* style(providers): normalize shared request imports

* fix(changelog): add media request shaping entry

* fix(google): preserve private network guard
2026-04-02 15:28:57 +09:00
Peter Steinberger 8988894ff7
build: prepare 2026.4.1-beta.1 release 2026-04-01 15:09:19 +01:00
Peter Steinberger 85679252c4
test: remove extension provider contract wrappers 2026-04-01 01:49:55 +01:00
Peter Steinberger 78be556299
test: consolidate plugin registration contracts 2026-04-01 01:46:56 +01:00
Peter Steinberger 63819bb383
test: consolidate provider and web-search contracts 2026-04-01 01:44:43 +01:00
Josh Lehman adc329b26b
test: dedupe extension-owned coverage (#58554)
* test: dedupe extension-owned coverage

* test: remove duplicate coverage files

* test: move helper coverage into extensions

* test: trim duplicate helper assertions

* test: remove cloudflare helper import from agent test

* test: align stale expectations with current main
2026-03-31 15:18:29 -07:00
Peter Steinberger 9ea7e06460
build: bump version to 2026.4.1 2026-03-31 22:53:17 +01:00
Peter Steinberger 2a60e34f2a
build: prepare 2026.3.31 stable release 2026-03-31 21:32:38 +01:00
Peter Steinberger 91be36ca4f
build: prepare 2026.3.31-beta.1 release 2026-03-31 19:32:49 +01:00
Peter Steinberger c425ef3e74
build: bump version to 2026.3.31 2026-03-31 15:48:00 +01:00
Peter Steinberger f3bf7fe53a
chore: bump version to 2026.3.30 2026-03-30 09:28:29 +09:00