90 Commits
Author SHA1 Message Date
Mert Kaya ec0cb4fecc fix(docker): stop handing the management token to unauthenticated clients
Nginx redirected GET / (and a token-less index page) to a URL carrying
CCR_WEB_AUTH_TOKEN, so anyone who could reach the published port got the
token from the Location header. The root now redirects to the page and
only passes on a ccr_web_token the caller already supplied. A generated
token is printed once to the container log, as Jupyter does.
2026-10-09 13:51:13 +03:00
musistudio ff3c99aef2 Verify issue reproductions and close remaining regression gaps 2026-09-28 00:03:19 +08:00
Aser-Osama 14df423cd0 fix(opencode-go): support Go provider identity and required session header
OpenCode Go now requires x-opencode-session on requests to
https://opencode.ai/zen/go/v1; without it users receive 400 MissingSessionID
(#1754, #1780). Injecting that header safely requires CCR to know which
provider is really Go, so OpenCode Go is now a distinct local provider from
Zen when reading OpenCode configuration, credentials, and cached catalog
metadata.

- Read opencode and opencode-go entries independently from models.json,
  opencode.json[c], auth.json, and OPENCODE_GO_API_KEY.
- Add x-opencode-session only for the official Go endpoint: explicit
  configuration wins, otherwise forward x-claude-code-session-id or
  x-claude-session-id, then metadata.user_id, then a stable process-level
  fallback; values are sanitized for header safety.
- Keep Zen discovery/import unchanged, including public models, candidate
  ids, fallback models, plugin suffixes, and the model cap.
- Keep Go and Zen separately importable and scope provider model discovery
  to the requested protocol so Go providers only list models that work on
  that protocol.
- Preserve catalog model ids, display names, and protocol classification;
  surface locked Go candidates with actionable guidance; update EN/ZH docs.
2026-09-11 03:49:42 +03:00
musistudio b0d59afe08 Refactor routing configuration and improve provider support 2026-09-09 19:43:16 +08:00
musistudio 2b57c6078f Merge branch 'feat/ai-gateway' into dev/3.1
# Conflicts:
#	packages/core/src/gateway/core-runtime/upstream-header-sanitizer.ts
2026-09-02 20:24:42 +08:00
musistudio 4afd350eef Implement comprehensive application updates 2026-09-02 18:37:11 +08:00
songkuan-zheng e4ad5db099 feat(ui): edit extraBody and extraHeaders from Advanced settings
The provider dialog had no field for either, so both were config-file
only: invisible in the UI and only editable by hand-writing the config
or writing to the config database directly.

Adds two JSON boxes to the Advanced settings section, next to the usage
connector body that already uses this pattern. They open pre-filled with
whatever the provider carries, and a malformed or non-object value blocks
the save with an inline error instead of writing something the gateway
would ignore.

extraBody and extraHeaders leave providerManualFieldsForSave now that the
draft round-trips them; billing, provider and transformer stay there.
2026-08-25 06:08:22 +00:00
songkuan-zheng a5a5481307 test(e2e): pin the provider-edit spec to the en-US locale
Review follow-up: the spec hard-codes English UI strings ("Providers"
nav, the "Edit <name>" provider aria-label), but the web UI defaults to
the system language, so the suite failed on zh-locale hosts. The
Playwright context locale is now pinned per suite, which keeps the
selectors deterministic without dual-language lookups everywhere.
2026-08-25 06:08:13 +00:00
songkuan-zheng bb6c256b06 test(e2e): cover provider fields the setup dialog cannot edit
Drives the real management UI: seeds a provider carrying extraBody,
extraHeaders and a transformer, opens the edit dialog, saves, and asserts
the three fields are still there afterwards.

The spec fails on the unpatched build and passes with the fix, so it
guards the regression rather than the helper alone.

The CLI web server bootstrap moves out of cli-web.spec.ts into
cli-web-runtime.ts so both specs can start their own instance.
2026-08-25 06:08:13 +00:00
musi c8e5e2b53d Add WorkBuddy app integration 2026-08-11 09:25:53 +08:00
musi 6971be8e87 Unify config storage and gateway bootstrap 2026-07-27 16:51:03 +08:00
musi 2aa3529449 Refactor router internals and remove obsolete code 2026-07-15 06:39:29 +08:00
musistudio 9e56580334 feat: enhance app bot relay 2026-07-14 20:58:08 +08:00
musistudio 2bf349fe03 Add OpenCode bot worker support 2026-07-14 17:30:37 +08:00
musistudio 84855c4dd4 Add OpenCode profile support 2026-07-14 16:49:08 +08:00
musistudio 9094081b7c Exclude ZCode from automatic profile sync 2026-07-14 15:12:19 +08:00
musistudio 7b0e203693 Refine Claude app model discovery and fallback routing 2026-07-14 14:46:54 +08:00
musistudio 1308eb4510 Stream request log analysis to bound memory use 2026-07-14 14:28:35 +08:00
musistudio 8d91a4acd7 Merge remote-tracking branch 'origin/dev/3.1' into dev/3.1 2026-07-14 13:59:55 +08:00
musistudio e3334ae9ae Improve router handling and related integrations 2026-07-14 13:59:10 +08:00
musi 672520a78b Add morph icons for sidebar and service controls 2026-07-14 13:05:35 +08:00
musi 245762710f Refactor router config and request handling 2026-07-14 09:12:57 +08:00
musi 21ab38dd47 Add Unity2.Ai provider preset and docs 2026-07-13 21:57:18 +08:00
musistudio f9525f469d Add configured web search providers and upstream proxy preload 2026-07-13 20:27:52 +08:00
musistudio b03728f816 Merge branch 'main' into dev/3.1
# Conflicts:
#	packages/cli/src/cli.ts
#	packages/core/src/gateway/service.ts
#	packages/core/src/profiles/launch-service.ts
#	tests/main/profile-service.test.mjs
2026-07-13 20:14:03 +08:00
musistudio 8a49c51ebf Add overview provider and model filters 2026-07-13 20:08:19 +08:00
musistudio a8bfa6363e Improve router configuration and request handling 2026-07-13 20:02:45 +08:00
musistudio 6f3df2f331 Rework router internals and refresh provider adapters 2026-07-13 17:39:31 +08:00
musistudio 96467abe5f Add Claude Code OAuth beta header normalization 2026-07-13 17:01:13 +08:00
musistudio 1d8ff6742c Refine router configuration and request handling 2026-07-13 16:41:45 +08:00
musistudio 645fde1878 Refactor router execution flow and update related tests 2026-07-13 15:16:07 +08:00
musi f1dbfd5301 Merge pull request #1518 from jesieleo/fix/windows-cli-and-update-ui
Fix : Windows CLI launching and desktop app discovery
2026-07-13 10:50:40 +08:00
musi 9d402f27b4 Merge pull request #1525 from 810senpai114514/fix/web-search-short-circuit
feat: fusion web search short-circuit for Docker/CLI environments
2026-07-13 10:40:12 +08:00
musistudio b893ce8058 Extract shared ModelSelector component for profile settings 2026-07-13 10:18:43 +08:00
musistudio 0196fdebeb Add Grok CLI local provider support 2026-07-13 08:48:39 +08:00
810senpai114514 48746183cf feat: web search via Tavily with short-circuit response 2026-07-12 00:01:29 +08:00
musistudio 5ddbacee18 Document CCR as a local control plane and add ZCode home support 2026-07-11 21:27:56 +08:00
musistudio 8d549296c1 Add configurable upstream proxy support 2026-07-11 21:03:53 +08:00
jesieleo 57b1169fff fix: improve startup and restore global profiles 2026-07-11 11:52:53 +08:00
jesieleo faa721fed8 fix: preserve profile preparation before TTY dispatch 2026-07-11 10:07:46 +08:00
jesieleo 1389ff5c75 fix: improve Windows agent launching and update status 2026-07-11 09:41:06 +08:00
musistudio 2bb2611447 Add Qiniu Cloud AI and Fenno provider presets 2026-07-10 23:14:35 +08:00
musistudio ef90d57ee1 Add per-profile app path support for desktop agents 2026-07-10 14:46:06 +08:00
musistudio be9a50e585 Refine Claude app discovery to reject CLI shims 2026-07-10 14:23:28 +08:00
musi f1b8fd1fa0 Fix local Codex model metadata fallback 2026-07-10 14:04:44 +08:00
musi ca2609c727 Add Codex model metadata probing and propagation 2026-07-10 13:31:46 +08:00
musi ee243fbfe5 Refine Codex app-server auth bootstrap and plugin handling 2026-07-10 13:11:46 +08:00
musi 8cfd4bbd8b Rename Codex desktop app references to ChatGPT 2026-07-10 12:22:14 +08:00
musi 0663c0463e Merge dev/3.1 for 3.0.10 release 2026-07-09 22:00:31 +08:00
musistudio 81fbae63a6 Refine provider protocol and base URL handling 2026-07-09 20:57:35 +08:00