121 Commits
Author SHA1 Message Date
musistudio 240cd73c1c Merge branch 'dev/3.1' into dev/docs
# Conflicts:
#	docs/src/content/docs/en/configuration/profiles.md
#	docs/src/content/docs/zh/configuration/profiles.md
2026-08-06 14:16:12 +08:00
musistudio 94674ba2e6 Add web content JSON provider account connectors 2026-08-06 11:36:11 +08:00
musistudio b4e6185172 Separate enhanced route from profile routing settings 2026-08-05 20:23:08 +08:00
musistudio b41890610c chore: release v3.0.19 2026-08-05 18:58:13 +08:00
musistudio 0fd7bf755f Merge dev/3.1 into main for v3.0.19
# Conflicts:
#	packages/ui/src/pages/home/components/network-logs.tsx
2026-08-05 18:56:16 +08:00
musistudio b4afa55c49 Offload large network log body formatting to a web worker 2026-08-05 15:49:18 +08:00
musi bc8a8e6205 Merge pull request #1618 from NDViet/main
fix(ui): repair provider setup flow in Get Started onboarding
2026-08-03 13:20:37 +08:00
musi 454daec31c Improve documentation navigation and extension guidance 2026-08-03 08:40:36 +08:00
musi bd9ffd385c Merge pull request #1623 from jesieleo/fix/ui-responsive-overflow
fix(ui): 修复窄窗口下侧栏和账户卡片内容被遮挡的问题
2026-08-02 17:09:36 +08:00
jesieleo 440241faa0 fix(ui): prevent responsive panels from clipping content 2026-08-02 12:46:10 +08:00
willyang 9331c9cbef fix: show routed model in request logs 2026-08-01 16:22:06 +08:00
Viet Nguyen Duc ba80cc81eb fix(ui): repair provider setup flow in Get Started onboarding
The onboarding wizard and the Add/Edit Provider dialog render the same
AddProviderForm, but the wizard is wired up differently, and several
defects lived in those differences.

Model probe never fired during onboarding. The model-probe useEffect in
App.tsx guarded on `providerAddOpen` only, which is set true solely when
opening the manual Add/Edit Provider dialog. It is never set during the
onboarding wizard, so after entering an endpoint + API key on the Get
Started flow and reaching the "Pick models" step,
probeProviderCandidates() never fired and the model list stayed empty
with no loading state. Regressed in 9f704fc ("Guide onboarding through
granular provider setup steps"), which narrowed the guard from
`providerAddOpen || (activeView === "onboarding" && onboardingStep === "provider")`
down to `providerAddOpen`. Restore the broader guard so the probe runs
both when the dialog is open and when onboarding is on the provider step.

A rejected API key produced an empty model list with no feedback. Typing
an API key switches the probe from mode "protocols" to mode "models",
but the error-reporting branch was guarded on `probeMode !== "models"`,
so it never ran in exactly that mode. The backend still runs full
protocol probing in models mode, so a 401 came back as `supported: false`
with a real message that was then discarded. Report the failure, while
staying quiet when models were discovered, since a provider can expose a
working catalog while a protocol probe endpoint 404s.

"Added models" faked a loading state for data it already had. The panel
renders local draft state, yet showed a skeleton and hid its whole
toolbar whenever the catalog probe re-ran, leaving the header badge
reading a real count above shimmer rows and removing the "Custom model"
button, the only way to add models on a provider with no catalog. Keep
both panels' controls mounted, disabling the catalog search while
loading, which also removes a layout shift and mid-typing focus loss.

An empty catalog gave no way forward, so point at "Custom model" (en+zh).

Onboarding's "Check Connection" spent real credits with no confirmation.
The dialog wraps onCheck in a confirm step that warns about account
balance, lets the user pick models, and shows per-model results;
onboarding passed onCheckProvider straight through, so one click fired a
billable request against every configured model and discarded the
report. Extract that step as ProviderConnectivityCheckDialog and use it
from both surfaces.

ProviderConnectionStatusRow hardcoded bg-emerald-50 / border-emerald-200
/ bg-amber-50 with no dark variant, so the "Verify connection" status
chips rendered as bright light blobs on the dark card. Use alpha fills,
matching the pattern used elsewhere in the file.

The provider error banner was not announced; add role="alert".

Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com>
2026-08-01 06:47:14 +07:00
musistudio 4a152d959c feat: update ai-gateway version 2026-07-31 15:39:56 +08:00
musistudio 3f566d991a Preserve API keys across provider probes 2026-07-31 14:50:19 +08:00
musistudio 43f99b2de8 Use Token consistently in Chinese UI labels 2026-07-30 18:44:03 +08:00
musistudio 571aa63602 Show request and trace costs in agent observability 2026-07-30 17:32:34 +08:00
musistudio e778687774 Show partial agent session failures in observability UI 2026-07-30 15:25:50 +08:00
musi 8f0b2d91e5 Refactor routing architecture and update project structure 2026-07-29 09:30:04 +08:00
musi 3b99fa239b Release v3.0.17 2026-07-28 20:46:45 +08:00
musi b13232f68b Release v3.1.0 2026-07-28 20:36:40 +08:00
musistudio 6cfd3f226f Expand core functionality and update related components 2026-07-28 17:44:49 +08:00
musistudio 2c89b212ef Merge branch 'main' into dev/3.1
# Conflicts:
#	packages/core/test/unit/gateway/upstream-header-sanitizer.test.mjs
2026-07-28 09:54:13 +08:00
musi 6971be8e87 Unify config storage and gateway bootstrap 2026-07-27 16:51:03 +08:00
jesieleo 8ea1cd6e19 fix(electron): 避免运行状态轮询阻塞界面 2026-07-27 14:09:02 +08:00
musi 7c4a877c99 feat: support Kilo Code profiles 2026-07-26 22:09:24 +08:00
musistudio ef4efe6a9d chore: release v3.0.16 2026-07-26 20:20:43 +08:00
musistudio fa5559435f Merge remote-tracking branch 'origin/dev/3.1' into codex/claude-design-profile
# Conflicts:
#	.test-dist/core/runtime/request-log-worker.js
#	.test-dist/core/test/integration/gateway/gateway-client-disconnect.test.js
#	.test-dist/core/test/integration/gateway/gateway-virtual-models.test.js
#	.test-dist/core/test/integration/mcp/grok-media-service.test.js
#	.test-dist/core/test/integration/mcp/local-ai-gateway-media-live.test.js
#	.test-dist/core/test/integration/observability/request-log-pricing-transaction.test.js
#	.test-dist/core/test/integration/observability/request-log-runtime.test.js
#	.test-dist/core/test/integration/observability/request-log-store.test.js
#	.test-dist/core/test/integration/plugins/plugin-service.test.js
#	.test-dist/core/test/integration/profiles/profile-service.test.js
#	.test-dist/core/test/integration/usage/usage-store.test.js
#	.test-dist/core/test/unit/agents/bot-gateway-env.test.js
#	.test-dist/core/test/unit/agents/claude-app-gateway-models.test.js
#	.test-dist/core/test/unit/agents/claude-app-launch.test.js
#	.test-dist/core/test/unit/agents/claude-environment.test.js
#	.test-dist/core/test/unit/agents/codex-app-model-catalog.test.js
#	.test-dist/core/test/unit/agents/codex-media-preview-bridge.test.js
#	.test-dist/core/test/unit/agents/codex-model-catalog.test.js
#	.test-dist/core/test/unit/agents/local-agent-provider-codex.test.js
#	.test-dist/core/test/unit/agents/local-agent-provider-grok.test.js
#	.test-dist/core/test/unit/agents/local-agent-provider-kimi.test.js
#	.test-dist/core/test/unit/agents/opencode-profile-config.test.js
#	.test-dist/core/test/unit/agents/provider-model-metadata.test.js
#	.test-dist/core/test/unit/config/config-env-interpolation.test.js
#	.test-dist/core/test/unit/config/theme-preference.test.js
#	.test-dist/core/test/unit/gateway/codex-patch-bridge.test.js
#	.test-dist/core/test/unit/gateway/gateway-billing-sync.test.js
#	.test-dist/core/test/unit/gateway/gateway-claude-code-oauth.test.js
#	.test-dist/core/test/unit/gateway/gateway-media-config.test.js
#	.test-dist/core/test/unit/gateway/gateway-runtime-change.test.js
#	.test-dist/core/test/unit/gateway/gateway-status.test.js
#	.test-dist/core/test/unit/gateway/router-builtins.test.js
#	.test-dist/core/test/unit/gateway/routing-architecture.test.js
#	.test-dist/core/test/unit/mcp/toolhub-browser-automation-config.test.js
#	.test-dist/core/test/unit/models/pricing-service.test.js
#	.test-dist/core/test/unit/observability/raw-trace-sync.test.js
#	.test-dist/core/test/unit/profiles/ccr-cli-runtime.test.js
#	.test-dist/core/test/unit/profiles/profile-app-process-detection.test.js
#	.test-dist/core/test/unit/profiles/profile-launch-core.test.js
#	.test-dist/core/test/unit/profiles/windows-ccr-launcher.test.js
#	.test-dist/core/test/unit/providers/credential-pool.test.js
#	.test-dist/core/test/unit/providers/provider-account-service.test.js
#	.test-dist/core/test/unit/providers/provider-model-catalog.test.js
#	.test-dist/core/test/unit/providers/provider-preset-utils.test.js
#	.test-dist/core/test/unit/providers/provider-probe.test.js
#	.test-dist/core/test/unit/proxy/proxy-upstream.test.js
#	.test-dist/core/test/unit/routing/route-script-runtime.test.js
#	.test-dist/core/test/unit/web/web-management-server.test.js
#	.test-dist/ui/test/component/components.test.js
#	.test-dist/ui/test/component/layout.test.js
#	.test-dist/ui/test/component/overview-components.test.js
#	.test-dist/ui/test/component/profiles.test.js
#	.test-dist/ui/test/component/tray-components.test.js
#	.test-dist/ui/test/integration/providers.test.js
#	.test-dist/ui/test/unit/mcp-server-config.test.js
#	.test-dist/ui/test/unit/model-selector-format.test.js
#	.test-dist/ui/test/unit/routing.test.js
#	.test-dist/ui/test/unit/usage-activity.test.js
#	.test-dist/ui/test/unit/usage-format.test.js
#	.test-dist/ui/test/unit/virtual-models.test.js
#	README.md
#	README_zh.md
2026-07-26 18:17:48 +08:00
musistudio 31c14ea82e feat: bundle Claude Design for desktop app 2026-07-26 18:09:01 +08:00
musistudio 3d576d2730 Update project implementation 2026-07-25 22:40:01 +08:00
musi 01488216fe Merge remote-tracking branch 'origin/dev/3.1' into dev/3.1 2026-07-25 20:01:11 +08:00
musi a0d793680b Update project implementation and configuration 2026-07-25 20:00:57 +08:00
musistudio 28a613c26a Merge branch 'dev/extensions' into codex/claude-design-profile 2026-07-24 23:19:13 +08:00
musistudio 9f704fc911 Guide onboarding through granular provider setup steps 2026-07-24 23:02:28 +08:00
musistudio 084b660cd4 Document Pi agent profile support 2026-07-24 17:38:39 +08:00
musistudio 7867065099 Support Claude Code model aliases in profiles 2026-07-24 16:38:24 +08:00
musistudio 834da64a33 Optimize provider plugin defaults and profile summaries 2026-07-24 16:01:11 +08:00
musistudio 4b0868f8a7 Improve responsive profile card grid layout 2026-07-24 15:51:17 +08:00
musistudio 808a9c831c Refactor project structure and remove obsolete code 2026-07-24 15:26:37 +08:00
musi 943661b4c0 Refactor application implementation 2026-07-24 12:44:12 +08:00
musi 80c7d1f31c feat(ui): improve logs observability UX 2026-07-23 23:46:29 +08:00
musi b19b32d5cd feat(ui): improve agent profile setup flow 2026-07-23 23:17:14 +08:00
musi 018db8f566 chore: checkpoint local changes 2026-07-23 23:06:32 +08:00
musi 86a383f647 Merge branch 'main' into dev/compact
# Conflicts:
#	packages/core/src/config/config.ts
#	packages/core/src/contracts/app.ts
#	packages/core/src/gateway/service.ts
#	packages/core/src/profiles/service.ts
#	packages/core/test/unit/agents/context-archive.test.mjs
#	packages/core/test/unit/gateway/codex-patch-bridge.test.mjs
#	packages/ui/src/pages/home/components/profiles.tsx
#	packages/ui/src/pages/home/shared/profiles.ts
#	tests/main/profile-service.test.mjs
#	tests/main/router-builtins.test.mjs
2026-07-23 09:24:28 +08:00
musi e239ad8fc9 Refactor routing configuration and provider integrations 2026-07-23 07:28:07 +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
musistudio 5dbaafa752 Add manual protocol detection mode for providers 2026-07-21 19:32:24 +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
musi f1bf639c54 Refactor routing architecture and streamline provider handling 2026-07-21 12:37:11 +08:00