Commit graph

157 commits

Author SHA1 Message Date
musi
04a9f60041 Enable Claude Design app window and secure request handling 2026-07-21 22:17:39 +08:00
musi
c856b36d50 Merge branch 'main' into dev/extensions 2026-07-21 21:36:17 +08:00
musistudio
e11bb8bb40 Merge branch 'main' into dev/3.1 2026-07-21 20:11:38 +08:00
musi
8154f3ef12
Merge pull request #1548 from camjac251/fix/provider-plugin-runtime-identity
fix(gateway): align provider plugin runtime identity
2026-07-21 20:08:57 +08:00
musi
3d84d7c194
Merge pull request #1547 from camjac251/test/loopback-listener-readiness
test(gateway): wait for loopback listener readiness
2026-07-21 20:06:01 +08:00
musistudio
5dbaafa752 Add manual protocol detection mode for providers 2026-07-21 19:32:24 +08:00
musi
999e335fdc
Merge pull request #1555 from H-TTTTT/fix/issue-1535-fallback-model
test(claude-app): lock in routable discovery default for #1535
2026-07-21 19:29:10 +08:00
musi
2dbfdff2ed
Merge pull request #1573 from camjac251/fix/profile-gateway-transport-retry
fix(profiles): tolerate transient gateway resets
2026-07-21 19:24:50 +08:00
musi
aecb74405c fix: update Codex catalog and plugin settings handling 2026-07-21 15:43:51 +08:00
musi
062158a00a Merge remote-tracking branch 'origin/main' into dev/extensions
# Conflicts:
#	packages/cli/src/cli.ts
#	packages/core/src/agents/codex/model-catalog.ts
#	packages/core/src/config/config.ts
#	packages/core/test/unit/agents/agent-console-launcher.test.mjs
#	packages/core/test/unit/agents/plugin-permissions.test.mjs
#	packages/core/test/unit/agents/plugin-stop-reason.test.mjs
#	packages/core/test/unit/agents/socket-compat.test.mjs
#	packages/electron/src/main/ipc.ts
#	packages/ui/test/component/extensions.test.ts
#	tests/main/codex-model-catalog.test.mjs
2026-07-21 12:43:12 +08:00
camjac251
933cd9ac34
fix(profiles): tolerate transient gateway resets
Profile launches could fail with HTTP 0 when a healthy local gateway
reset one loopback probe. Prefer the stable health identity, retry
transport failures, and retain the root endpoint fallback.
2026-07-20 15:26:34 -04:00
camjac251
26d9d4cb3f
test(gateway): cover delayed media listeners
Loopback listen callbacks can precede connection readiness on some hosts,
which makes otherwise deterministic media fixtures fail with refused fetches.
Reuse one TCP readiness probe before issuing requests in each affected test.
2026-07-20 14:44:42 -04:00
camjac251
809f54e3de
chore: sync listener tests with main 2026-07-20 14:41:53 -04:00
camjac251
97d37fad04
fix(ui): preserve local usage bucket dates
Daily usage buckets represent local calendar dates, but standard date parsing
interprets their ISO-like form as UTC and shifts them in non-UTC time zones.
Parse date-only buckets directly in local time so heatmap totals stay on the
reported day.
2026-07-20 14:37:19 -04:00
camjac251
16a53bb3a9
fix(gateway): preserve local oauth provider base url
Runtime identity normalization previously ran before local OAuth provider
detection, so display-name matching could no longer select the managed
backend endpoint. Defer identity normalization until after detection and
cover the ordering with a regression test.
2026-07-20 13:10:40 -04:00
camjac251
24e52a64f3
fix(gateway): align provider plugin runtime identity
Provider compilation replaces display and capability aliases with stable
runtime identifiers, but plugin targets and fallback headers could retain
the precompiled names. Normalize both paths so routing and authentication
refer to the provider identity that the gateway actually registers.
2026-07-20 13:09:41 -04:00
musi
f22f2a4c79 chore: release 3.0.15 and cli docker 3.0.7
Some checks failed
Docs / Build (push) Has been cancelled
Docs / Deploy (push) Has been cancelled
2026-07-20 22:30:19 +08:00
musi
79c3218ed8 update ai-gateway 2026-07-20 22:19:41 +08:00
musi
5d9785ddc3 Preserve explicit models when applying built-in route rewrites 2026-07-20 22:18:28 +08:00
musi
88c07b605a Merge branch 'main' into dev/3.1
# Conflicts:
#	package-lock.json
#	package.json
#	packages/cli/package.json
#	packages/core/package.json
#	packages/core/src/contracts/ipc-channels.ts
#	packages/core/src/gateway/claude-code-router-plugin.ts
#	packages/ui/test/component/layout.test.tsx
2026-07-20 22:09:34 +08:00
musistudio
6c1a90889b Refactor router implementation and configuration 2026-07-20 20:21:18 +08:00
musistudio
ea35ed2eaa Add model summaries to request logs 2026-07-20 15:57:13 +08:00
musistudio
ecdf2fec0f Support xAI video generation and isolate Codex authentication 2026-07-20 15:38:13 +08:00
musistudio
225b3c23df Improve Codex authentication and app-server launch handling 2026-07-20 14:36:26 +08:00
musistudio
42cc9dbd74 Add NVIDIA NIM provider preset and preserve Claude model selection 2026-07-20 11:08:04 +08:00
musistudio
3f8d450366 Refactor routing architecture and update related modules 2026-07-20 10:10:57 +08:00
H-TTTTT
ba3b34e189 fix(opencode): stop forcing Bearer public on public local-agent imports
Public OpenCode imports wrote strict providerPlugins auth with
authorization: Bearer public, which overrode a later real Providers
api_key edit and caused upstream 401s. Put the public token on the
provider api key instead and skip the plugin override.

Fixes #1562
2026-07-20 09:32:17 +08:00
musistudio
5021cc35c0 Enable apply_patch bridging for all non-GPT Codex models 2026-07-20 07:13:53 +08:00
musi
d21950bdbd
Merge pull request #1561 from jesieleo/fix/claude-subagent-model-routing
fix(gateway):网关对子代理模型配置的处理,并规范化 Responses API 请求(@the-next-ai/ai-gateway 升级到 1.0.10)
2026-07-19 22:05:35 +08:00
musi
5a73d1d65b
Merge pull request #1566 from jesieleo/fix/tray-activity-tooltip-theme
fix(ui): 修复暗色主题显示与托盘同步
2026-07-19 21:59:20 +08:00
musistudio
9fb8a89831 Update routing workflows and supporting configuration 2026-07-19 20:07:40 +08:00
jesieleo
107863919c fix(theme): synchronize dark mode across app and tray 2026-07-19 13:16:29 +08:00
jesieleo
c054086a91 fix(ui): keep update entry from auto-downloading 2026-07-19 11:30:07 +08:00
jesieleo
e298524965 fix: route Claude subagents with latest gateway requests 2026-07-18 17:15:06 +08:00
OpenCode Builder
5c4bc584c7 test(claude-app): lock in routable discovery default for #1535
The hardcoded CLAUDE_APP_FALLBACK_MODEL ("claude-sonnet-4-5") that issue
#1535 reported was already removed in 7b0e203 ("Refine Claude app model
discovery and fallback routing"), so GET /v1/models no longer surfaces the
unroutable bare fallback as the first/default model, and the model registry
now resolves a bare "claude-sonnet-4-5" to its configured provider.

Add a regression test using the issue's exact three-provider config that
asserts both invariants: the discovered default round-trips through the
request rewrite path to a provider-prefixed selector, and a bare fallback id
resolves to a provider rather than falling into model-chain fallback.

Fixes #1535
2026-07-17 10:23:16 +08:00
musistudio
f18759aa8f Add ultra effort and refine model reasoning profiles 2026-07-16 11:23:24 +08:00
musi
5b8f64160e Refactor router internals and update related integrations 2026-07-16 09:29:48 +08:00
camjac251
15c7254ab1
chore: sync listener readiness test with main
Upstream moved the regression into the core package and added a
loopback-bind skip. Preserve that handling while keeping the bounded
readiness probes after successful listener startup.
2026-07-15 14:58:40 -04:00
musi
4156fdea27 chore: release 3.0.14 and cli docker 3.0.6 2026-07-15 23:00:04 +08:00
musi
9b3339e4e4 Merge branch 'main' into dev/3.1
# Conflicts:
#	packages/core/src/gateway/request/pipeline.ts
#	packages/core/src/observability/request-log-store.ts
#	packages/core/test/integration/observability/request-log-store.test.mjs
#	packages/core/test/unit/agents/gateway-upstream-error-log.test.mjs
#	packages/core/test/unit/agents/provider-model-metadata.test.mjs
2026-07-15 22:08:49 +08:00
musi
f021884c1d
Merge pull request #1543 from camjac251/fix/subagent-route-handshake
fix(gateway): align subagent route identity
2026-07-15 22:00:53 +08:00
musi
ded548da7e
Merge pull request #1542 from camjac251/fix/provider-model-context-metadata
fix(gateway): preserve provider context metadata
2026-07-15 21:56:46 +08:00
musistudio
555b31477d Refactor router internals and update related tests 2026-07-15 20:24:04 +08:00
musistudio
b1fb8e3331 Refactor router pipeline and update related components 2026-07-15 20:12:32 +08:00
jesieleo
6b4b22aa4b fix: hide JSON credential values in diagnostics 2026-07-15 16:30:55 +08:00
jesieleo
e33c856891 fix: hide credentials without obscuring diagnostics 2026-07-15 15:41:00 +08:00
musistudio
adadb1679f Cache parsed request bodies and simplify routing traces 2026-07-15 15:31:38 +08:00
musi
30d1f35926 Refactor request routing and provider coordination
Some checks failed
CI / Typecheck (push) Has been cancelled
CI / Test architecture (push) Has been cancelled
CI / Test cli (push) Has been cancelled
CI / Test core (push) Has been cancelled
CI / Test electron (push) Has been cancelled
CI / Test ui (push) Has been cancelled
CI / CLI web E2E (push) Has been cancelled
CI / Docker system smoke (push) Has been cancelled
2026-07-15 13:32:14 +08:00
jesieleo
2b1720067b fix: clarify log payload tabs 2026-07-15 13:31:03 +08:00
jesieleo
694437bf3f fix: align tray window background with theme 2026-07-15 12:55:46 +08:00