Commit Graph

759 Commits

Author SHA1 Message Date
SuYao
bd87e9a6cb feat(provider-registry): generate catalog from src/creators + src/providers, add TokenHub (#16401)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-07-03 13:01:36 +08:00
jd
2f53df5227 fix(code-block-view): auto-scroll streaming code blocks (#16673)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: jd <59188306+zhangjiadi225@users.noreply.github.com>
2026-07-02 19:53:20 +08:00
Pleasure1234
761f5386f6 feat(provider-registry): add OpenCode Go provider (#16618)
Signed-off-by: Pleasurecruise <3196812536@qq.com>
2026-07-02 15:43:12 +08:00
亢奋猫
03ab285431 fix(agent-page): lazy load artifact file tree (#16577)
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-07-01 19:16:17 +08:00
beyondkmp
4112ff3a2c fix(switch): use valid svg dimensions for thumb icon (#16592)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: beyondkmp <beyondkmp@gmail.com>
2026-06-30 20:14:42 +08:00
Asurada
00298533a4 feat(websearch): add firecrawl web search provider (#16344)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: ousugo <dkzyxh@gmail.com>
2026-06-30 20:14:17 +08:00
Gu JiaMing
c993719569 fix(page-side-panel): scope portal via usePortalContainer, drop the root marker (#16555)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-30 20:06:57 +08:00
亢奋猫
366ecf63da refactor(provider): remove tokenflux providers (#16518)
Signed-off-by: kangfenmao <kangfenmao@qq.com>
2026-06-30 19:52:35 +08:00
jd
090f9a43e9 fix(sortable): require primary pointer activation (#16574)
Signed-off-by: jd <59188306+zhangjiadi225@users.noreply.github.com>
2026-06-29 22:51:56 +08:00
jd
21e0e04abc feat(resource-dialogs): stepped create wizard for assistants and agents (#16496)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: jd <59188306+zhangjiadi225@users.noreply.github.com>
2026-06-29 18:25:15 +08:00
robin
65c54e5ce5 chore(deps): bump @openrouter/ai-sdk-provider to ^2.10.0 (#16467)
Signed-off-by: Robinnnnn <12162433+Robinnnnn@users.noreply.github.com>
2026-06-29 16:51:14 +08:00
SuYao
af69f8cc43 fix(paintings): use motion react import (#16545)
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-29 13:19:09 +08:00
SuYao
611944599f refactor(deps): replace lodash with es-toolkit/compat and drop it (#16528)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-29 12:28:57 +08:00
亢奋猫
eb2622e9af refactor(ui): remove antd dependency (#16336)
Co-authored-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-26 15:49:22 +08:00
Pleasure1234
ca133e33b1 fix: correct minor bugs across image-preview, provider-config, mini-apps, painting, notes, and selector (#16343)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: Pleasurecruise <3196812536@qq.com>
2026-06-24 23:02:01 +08:00
Asurada
bc50274f35 fix(provider-registry): correct text-only model capabilities (#16153)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
2026-06-24 22:57:59 +08:00
Gu JiaMing
5543521730 fix(page-side-panel): scope non-mac app shell portal (#16074)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: Pleasurecruise <3196812536@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-22 21:12:40 +08:00
SuYao
16ebe2443c feat(ai-provider): route provider HTTP through proxy-aware net.fetch (#16207)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-21 18:11:47 +08:00
亢奋猫
7592d31ca4 refactor(ui-markdown): simplify markdown imports (#16228)
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
2026-06-20 21:46:08 +08:00
fullex
1c6ff30a18 refactor(shared): dissolve config/ and move logic out of types/ into utils/
Dissolve the by-kind @shared/config junk drawer per shared-layer governance: route each member by shape and actual consumer process — cross-process slices into types//utils//ai/, single-process code back into main/renderer (Invariant 1.1). Confirm each item's real consumer process rather than trusting the directional plan (API_SERVER_DEFAULTS is renderer-only, MIN_WINDOW_* is cross-process, providers.ts is renderer-only), and drop dead consts (ZOOM_LEVELS/ZOOM_OPTIONS, bookExts, thirdPartyApplicationExts).

Purge runtime logic from types/ so the bucket holds only declarations: move serializeError + AI-SDK error guards to utils/error.ts, the FileHandle factories/guards to utils/file/handle.ts, isSerializable + SerializableSchema to utils/serializable.ts, and the tab-instance guard/normalizer to utils/tabInstanceMetadata.ts. Tests follow the logic to utils/__tests__; the type-level ipc contract test is retired (its invariants kept as a breadcrumb for the future IpcApi Zod schema). types/ is now logic-free and test-free.

Also: remove the dead @shared mock from the packages/ui code-editor test so packages/ui no longer references production code; fix the data-classify preference generator prompts import and the update-languages output path to the relocated modules.

Update shared-layer-architecture (3.1 type/util test rule, 5/6 config dissolution) and renderer-architecture cross-references.
2026-06-19 20:41:18 -07:00
Gu JiaMing
1b966cab67 feat(ui): add required-field marker and accessible provider validation (#16046)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Pleasurecruise <3196812536@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
Signed-off-by: Pleasurecruise <3196812536@qq.com>
2026-06-18 23:59:21 +08:00
Gu JiaMing
10a5939e60 fix(emoji-avatar): align sidebar background and support emoji sequences (#16077)
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Co-authored-by: 顾家铭 <gujiaming@gujiamingdeMacBook-Pro.local>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-18 23:58:54 +08:00
亢奋猫
9749358af9 feat(renderer-components): split shared list, tree, icons, markdown & code components (#16026)
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-18 18:01:52 +08:00
Pleasure1234
1714004f83 feat(code-cli): replace discontinued iFlow CLI with Qoder CLI (#16119)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: Pleasurecruise <3196812536@qq.com>
2026-06-18 16:10:13 +08:00
Pleasure1234
fd19174a3e chore(provider-registry): backfill ownedBy/family for image models, complete gpt-image-2 (#16115)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: Pleasurecruise <3196812536@qq.com>
2026-06-17 21:24:04 +08:00
SuYao
22ffb62f62 feat(richeditor): native @tiptap/markdown AST on Tiptap 3.26.1 (#16118)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-17 18:38:54 +08:00
Gu JiaMing
d6f2a3300b style(settings-ui): polish small UI regressions (#16076)
Co-authored-by: Pleasurecruise <3196812536@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
Signed-off-by: pleasure1234 <pleasure1234@users.noreply.github.com>
2026-06-17 16:36:12 +08:00
Gu JiaMing
2035c9e3a1 fix(provider-avatar): correct avatar lifecycle, cropping, and image-storage error surfacing (#16075)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Pleasurecruise <3196812536@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-17 16:29:40 +08:00
亢奋猫
2e3520678c feat(ui): add shared markdown, tree view, and portal primitives (#16020)
Co-authored-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-17 13:26:53 +08:00
槑囿脑袋
20035a83ff feat(knowledge): engine-portable per-base index store and retrieval cutover (#15973)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: eeee0717 <chentao020717Work@outlook.com>
2026-06-15 19:43:10 +08:00
Asurada
697dfb1a7c fix(provider-registry): correct model registry metadata (#16030)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: ousugo <dkzyxh@gmail.com>
2026-06-15 18:44:15 +08:00
Asurada
abcf7d0390 chore(models): add 49 new models (#15945)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: ousugo <dkzyxh@gmail.com>
2026-06-12 18:49:17 +08:00
Gu JiaMing
9c09e52ddd feat(provider-list): drag provider groups as a single unit (#15743)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: suyao <sy20010504@gmail.com>
Co-authored-by: Pleasure1234 <3196812536@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-12 18:48:34 +08:00
SuYao
a181517a77 feat(ai-trace): trace capture + container trace DataApi + chat trace pane (#15942)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-11 18:10:50 +08:00
亢奋猫
f408d448b6 refactor(settings): polish provider, file processing, and MCP settings UI (#15790)
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Signed-off-by: kangfenmao <kangfenmao@qq.com>
Signed-off-by: gujiaming <52187003+AtomsH4@users.noreply.github.com>
2026-06-11 10:18:18 +08:00
xianzuyang9-blip
cdeaf05af0 fix(ai-core): align package exports with tsdown output (#15830)
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
2026-06-09 18:01:37 +08:00
lanshi
26574a2848 feat: add OpenAI Responses API format support for dashscope and doubao (#15724)
Signed-off-by: lanshi <yzs20030317@gmail.com>
2026-06-06 18:06:52 +08:00
槑囿脑袋
67554c5703 feat(ai-service): add rerank runtime support (#15542)
Co-authored-by: 亢奋猫 <kangfenmao@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: eeee0717 <chentao020717Work@outlook.com>
2026-06-06 17:33:18 +08:00
SuYao
b8f1feb4f8 feat(command): introduce command system, consolidating shortcut & app-menu handling (#15699)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-05 23:24:34 +08:00
rg
8ee60deb20 chore(link): fix zhipu apikey website link (#15618)
Co-authored-by: 亢奋猫 <kangfenmao@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
2026-06-05 19:48:57 +08:00
SuYao
488ea66b47 refactor(trace-window): remove the standalone trace BrowserWindow (#15698)
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-05 18:47:05 +08:00
SuYao
5706307451 refactor(ai-service): consolidate AI runtime to main process (#14911)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-05 00:06:51 +08:00
Yiran
e8b43bb3a3 refactor(settings): align provider settings UI with design system (#15515)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: 亢奋猫 <kangfenmao@qq.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: akazaakari950718-dev <akazaakari950718@gmail.com>
2026-06-02 21:38:00 +08:00
Yiran
2a602f7c7b fix(icons): use currentColor for GitHub Copilot and OpenCode logos (#15525)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: akazaakari950718-dev <akazaakari950718@gmail.com>
2026-06-02 21:28:07 +08:00
Asurada
22b0aaf2d0 fix(ui): correct provider and model provider logo mappings (#15563)
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
2026-06-02 18:19:43 +08:00
Yiran
61c013bd5b feat(knowledge-base): redesign knowledge workspace (#15518)
Co-authored-by: eeee0717 <chentao020717Work@outlook.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Co-authored-by: 槑囿脑袋 <70054568+eeee0717@users.noreply.github.com>
Signed-off-by: akazaakari950718-dev <akazaakari950718@gmail.com>
Signed-off-by: eeee0717 <chentao020717Work@outlook.com>
2026-06-02 16:03:37 +08:00
亢奋猫
26508591f8 refactor(paintings): migrate to v2 data layer and UI (#15154)
Co-authored-by: jidan745le <420511176@qq.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: SuYao <sy20010504@gmail.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: fullex <106392080+0xfullex@users.noreply.github.com>
Signed-off-by: jidan745le <420511176@qq.com>
Signed-off-by: suyao <sy20010504@gmail.com>
2026-06-02 15:18:53 +08:00
fullex
53a3577389 refactor(renderer): flatten src/renderer/src to src/renderer
Move all renderer source from src/renderer/src/* up one level to
src/renderer/*, removing the redundant nested src directory.

- Update path aliases (@renderer, @types, @logger, @data) and TanStack
  Router paths in electron.vite.config.ts; update tsconfig.{json,web,node}
  path mappings and include globs.
- Fix Vite root-relative script paths in the 8 renderer HTML entries.
- Update cross-process relative imports in main/preload (language,
  apiServer models, preload index) to drop the /src segment.
- Switch renderer test imports of the logger mock to the @test-mocks alias.
- Update hardcoded renderer paths in scripts and their fixtures, lint
  configs (eslint/oxlint/biome), CODEOWNERS, docs, and the data-classify tool.
- Convert deep (../../+) relative imports within the renderer to the
  @renderer alias (69 files, 108 imports); keep single-level relatives.
- Fix doc links broken by the move and correct one pre-existing broken
  link in naming-conventions.md.
2026-05-28 21:40:20 -07:00
fullex
c514dcc049 refactor(shared): move packages/shared to src/shared
packages/shared was never a real pnpm workspace package (no package.json); it was referenced only through the @shared TypeScript path alias. Relocate it under src/ via git mv (143 files, detected as pure renames).

Repoint the @shared alias and include globs to src/shared across electron.vite.config.ts, tsconfig.{json,node,web}.json and vitest.config.ts; update scripts/check-custom-exts.ts, scripts/update-languages.ts, the eslint.config.mjs generated-file globs, the data-classify generator output targets, .github/CODEOWNERS path rules, and CLAUDE.md/docs/source-comment references.

The @shared alias name is unchanged, so all 1403 @shared/* import sites resolve without modification. Verified with typecheck:node, typecheck:web and the full test suite (700 files, 9739 tests passing).
2026-05-28 21:02:49 -07:00
fullex
fa5bbb7607 Merge branch 'main' of github.com:CherryHQ/cherry-studio into v2 2026-05-28 19:38:52 -07:00