Commit Graph

  • 74d4b42936 refactor(ci): standardize Tauri signing key variable and update pubkey Jason 2025-09-09 22:26:37 +08:00
  • a95f974787 refactor(ci): simplify Tauri signing key handling to use file path only Jason 2025-09-09 21:50:37 +08:00
  • 29057c1fe0 refactor: optimize key handling to export base64 line only with multiple env var formats Jason 2025-09-09 21:38:24 +08:00
  • 63285acba8 enhance: improve private key handling with better base64 compatibility and single-line support Jason 2025-09-09 21:21:30 +08:00
  • f99b614888 enhance: improve updater workflow with latest.json collection and prerelease flag Jason 2025-09-09 21:14:44 +08:00
  • 41f3aa7d76 fix: correct Tauri signing key environment variable usage Jason 2025-09-09 16:38:59 +08:00
  • f23898a5c9 fix: correct GitHub Secret name to TAURI_PRIVATE_KEY Jason 2025-09-09 16:29:42 +08:00
  • 664391568c fix: add debug output for GitHub Secret issues Jason 2025-09-09 16:28:12 +08:00
  • 081aabe10f fix: add Tauri signing key decoding in GitHub Actions Jason 2025-09-09 16:25:49 +08:00
  • 036069a5c1 update pub key again Jason 2025-09-09 16:06:14 +08:00
  • 9b7091ba88 update pub key Jason 2025-09-09 15:36:04 +08:00
  • 2357d976dc chore: bump version to 3.1.2 for auto-updater testing Jason 2025-09-09 15:21:49 +08:00
  • df43692bb9 Merge pull request #16 from farion1231/feat/auto-update Jason Young 2025-09-09 15:16:19 +08:00
  • 6ed9cf47df feat: add auto-updater support with GitHub releases feat/auto-update Jason 2025-09-09 15:13:06 +08:00
  • a3582f54e9 fix(updater): 避免因 Updater 配置不完整导致应用启动中止\n\n- Updater 插件注册改为容错(失败仅告警,不影响应用启动) Jason 2025-09-09 10:28:34 +08:00
  • 9ff7516c51 feat(updater): 集成 Rust 侧 Updater/Process 插件与权限配置 Jason 2025-09-08 16:58:41 +08:00
  • a1a16be2aa feat(updater): 前端 Updater 封装与设置页接入\n\n- 新增 src/lib/updater.ts(check→download→install→relaunch 封装与类型)\n- SettingsModal 按钮优先走 Updater,失败回退打开 Releases\n- 依赖:@tauri-apps/plugin-updater、@tauri-apps/plugin-process\n- 文档:精简并重写 docs/updater-plan.md(明确接口/流程/配置) Jason 2025-09-08 16:48:24 +08:00
  • df7d818514 feat(ui): enhance dark mode styling support Jason 2025-09-08 15:57:29 +08:00
  • c0d9d0296d feat(ui): implement dark mode with system preference support Jason 2025-09-08 15:38:06 +08:00
  • 77a65aaad8 refactor(styles): migrate from CSS variables to Tailwind classes Jason 2025-09-08 11:48:05 +08:00
  • 3ce847d2e0 refactor(ui): remove config file path display module Jason 2025-09-07 22:41:55 +08:00
  • 1482dc9e66 feat(providers): add timestamp-based sorting for provider list Jason 2025-09-07 22:29:08 +08:00
  • fa2b11fcc2 fix(settings): update version display and comment out incomplete dock settings Jason 2025-09-07 22:14:17 +08:00
  • 02bfc97ee6 refactor(types): introduce Settings and apply in API Jason 2025-09-07 11:36:09 +08:00
  • 77bdeb02fb feat(settings): add minimal settings panel Jason 2025-09-07 10:48:27 +08:00
  • 48bd37a74b feat(ui): unify link/address styles and set primary header color Jason 2025-09-06 23:57:10 +08:00
  • 7346fcde2c feat: refactor ProviderForm component with new subcomponents (#13) TinsFox 2025-09-06 23:13:01 +08:00
  • 5af476d376 feat: 系统托盘 (#12) TinsFox 2025-09-06 16:21:21 +08:00
  • 07b870488d fix: add .gitattributes to resolve line ending inconsistencies farion1231 2025-09-06 11:28:58 +08:00
  • 74ab14f572 feat: add ModelScope provider preset with GLM-4.5 model configuration Jason 2025-09-06 11:01:09 +08:00
  • a14f7ef9b2 feat: JsonEditor for inputting JSON content (#4) QuentinHsu 2025-09-06 09:30:09 +08:00
  • 07dd70570e Merge pull request #10 from farion1231/feat/ssot Jason Young 2025-09-05 21:42:11 +08:00
  • 37d4c9b48d style: format frontend code and improve component structure feat/ssot Jason 2025-09-05 21:26:01 +08:00
  • da4f7b5fe4 refactor(codex): unify TOML handling with robust error recovery Jason 2025-09-05 21:03:11 +08:00
  • e119d1cb31 refactor(concurrency): optimize error handling and reduce lock contention Jason 2025-09-05 20:52:08 +08:00
  • 54003d69e2 refactor(archive): remove archive on provider switches/updates Jason 2025-09-05 16:39:12 +08:00
  • ab6be1d510 docs(cleanup): remove 'current' as special provider; align UI/messages and migration naming to 'default' and one-time import rule Jason 2025-09-05 15:16:03 +08:00
  • a1dfdf4e68 refactor(provider): remove runtime duplicate checks in add/update; dedupe only during initial migration per product decision Jason 2025-09-05 15:11:20 +08:00
  • 464ca70d7b feat(init): only import from live when providers are empty; create a single 'default' entry and set as current Jason 2025-09-05 15:07:00 +08:00
  • 2dca85c881 refactor(migration): run dedupe only during first-time migration; remove startup dedupe Jason 2025-09-05 14:48:03 +08:00
  • 837435223a chore(migration): remove legacy copy files after successful archive Jason 2025-09-05 14:29:16 +08:00
  • 79ad0b9368 fix(provider): prevent case-insensitive name + key duplicates; migrate and startup dedupe Jason 2025-09-05 14:26:11 +08:00
  • 5624a2d11a feat(tauri): sync current provider edits to live config and archive before overwrite\n\n- Update: when editing the current provider, persist changes to live files (Claude settings.json; Codex auth.json + config.toml) and archive previous versions first.\n- Align add_provider behavior: archive live files before overwriting if the added provider is current.\n- Hardening: when deleting a Claude provider, also attempt removing legacy copy path by id (settings-{id}.json).\n\nThis keeps switching, adding and editing consistent with SSOT design and improves safety via archival. Jason 2025-09-05 11:00:53 +08:00
  • 29367ff576 refactor(rust): remove unused code/imports to silence warnings\n\n- Drop unused backup/import helpers and redundant imports\n- Remove unnecessary mut parameter\n- Remove unused ProviderManager::add_provider\n Jason 2025-09-05 10:19:14 +08:00
  • 64c94804ee chore(rust): revert Cargo edition to 2021\n\n- Lower edition from "2024" to "2021" for broader toolchain compatibility\n- Keep rust-version and deps unchanged\n Jason 2025-09-05 10:19:14 +08:00
  • 1d9fb7bf26 fix(tauri): correct window config and CSP\n\n- Set titleBarStyle to "Transparent" to match v2 schema\n- Add ipc: and http://ipc.localhost to connect-src for IPC\n- Add label: "main" for the primary window\n Jason 2025-09-05 10:19:14 +08:00
  • 30a441d9ec refactor(migration): dedupe by (name + raw key) without hashing\n\n- Compare API key strings directly for Claude/Codex during migration\n- Remove sha2/hex deps and hashing helpers\n- Keep O(N^2) matching acceptable for small provider sets Jason 2025-09-04 23:00:16 +08:00
  • 33753c72cd docs: update plan to use 'current' instead of 'default' for initial import\n\n- Aligns documentation with implementation across migration and import flows Jason 2025-09-04 22:39:03 +08:00
  • 02d7eca2ad refactor(import): rename default imported provider to 'current'\n\n- import_default_config now creates provider id/name 'current'\n- Avoid duplicate import by checking 'current' key\n- Set manager.current to 'current' when empty Jason 2025-09-04 21:38:35 +08:00
  • 2c6fe6c31a chore(migration): use 'current' as the name for live-imported providers\n\n- Rename live-imported provider name from 'default' to 'current' for Claude/Codex\n- Keeps current selection logic intact when setting manager.current Jason 2025-09-04 21:35:51 +08:00
  • ab71b11532 feat(migration-live): import current live settings on first run and set as current if empty\n\n- Read Claude ~/.claude/settings.json and Codex ~/.codex/auth.json + config.toml\n- Merge with priority: live > copies > existing\n- Set manager.current to the live-imported provider when empty Jason 2025-09-04 21:33:19 +08:00
  • a858596fa2 feat(edit-current): allow editing current provider and sync to live on save\n\n- Enable Edit button for current provider in UI\n- On update_provider, if updating current provider, write changes to live config (Claude/Codex)\n- Maintain SSOT in cc-switch/config.json with atomic writes Jason 2025-09-04 16:34:47 +08:00
  • 5176134c28 feat(migration): import provider copy files into cc-switch config on first run\n\n- Scan Claude settings-*.json and Codex auth-*.json/config-*.toml\n- Merge into ~/.cc-switch/config.json, de-dupe by provider name (override with copies)\n- Backup old config.json and archive all scanned copy files\n- Add migration marker to avoid re-importing\n- Stop writing provider copy files in ProviderManager::add_provider Jason 2025-09-04 16:16:51 +08:00
  • 79370dd8a1 feat(backup): archive current live config before switching\n\n- Archive Claude settings.json and Codex auth.json/config.toml to ~/.cc-switch/archive/<ts>\n- Preserve user edits while centralizing SSOT in cc-switch config.json\n- Uses atomic writes for all subsequent updates Jason 2025-09-04 16:07:38 +08:00
  • 3c32f12152 refactor(ssot): stop writing per-provider backup files on add/update/import\n\n- Add/update no longer write vendor copy files for Claude and Codex\n- Keep all state in memory (persisted via app config) to enforce SSOT\n- Import default provider now only reads from live config Jason 2025-09-04 16:00:45 +08:00
  • 64f7e47b20 feat(fs): atomic writes for JSON and TOML saves\n\n- Introduce atomic_write utility and use it in write_json_file\n- Add write_text_file for TOML/strings and use in Codex paths\n- Reduce risk of partial writes and ensure directory creation Jason 2025-09-04 16:00:19 +08:00
  • 25c112856d feat(ssot): backfill live config and write from in-memory settings during switch\n\n- Stop relying on provider backup files for switching (Claude/Codex)\n- Backfill current live config into the active provider before switching\n- Write target provider settings directly to app main config\n- Avoid writing provider copies when importing default provider Jason 2025-09-04 15:59:28 +08:00
  • 3665a79e50 chore: bump version to v3.1.1 v3.1.1 farion1231 2025-09-03 16:43:29 +08:00
  • 4dce31aff7 Fix the default codex config.toml to match the latest modifications. farion1231 2025-09-03 16:33:12 +08:00
  • 451ca949ec feat(ui): improve provider configuration UX with custom option Jason 2025-09-03 15:58:02 +08:00
  • a9ff8ce01c update readme Jason 2025-09-01 15:33:24 +08:00
  • 7848248df7 Merge pull request #3 from farion1231/codex-adaptation v3.1.0 Jason Young 2025-09-01 11:41:31 +08:00
  • b00e8de26f feat(config): backup v1 file before v2 migration codex-adaptation Jason 2025-09-01 10:49:31 +08:00
  • 47b06b7773 feat(ui): elevate title above controls for better visual hierarchy Jason 2025-08-31 23:13:27 +08:00
  • 4e66f0c105 feat(ui): center title and balance header layout Jason 2025-08-31 21:49:28 +08:00
  • 84c7726940 feat(ui): implement pills-style AppSwitcher with consistent button widths Jason 2025-08-31 21:27:58 +08:00
  • b8f59a4740 chore: silence non_snake_case warnings in commands.rs for legacy app/appType compatibility Jason 2025-08-31 19:00:09 +08:00
  • 06a19519c5 revert: restore app/appType param compatibility and revert segmented-thumb pointer-events change Jason 2025-08-31 18:14:31 +08:00
  • b4ebb7c9e5 docs(codex): document Codex config directory, fields (OPENAI_API_KEY), empty config.toml behavior, and switching strategy in README Jason 2025-08-31 17:17:22 +08:00
  • 5edc3e07a4 feat(codex): validate non-empty config.toml with toml crate (syntax check in save/import) Jason 2025-08-31 17:13:25 +08:00
  • 417dcc1d37 feat(codex): require OPENAI_API_KEY when non-official preset selected; keep config.toml optional Jason 2025-08-31 17:07:35 +08:00
  • 72f6068e86 Revert "feat(ui): enhance Codex provider list display by extracting base_url/model_provider from config.toml; plumb appType into ProviderList" Jason 2025-08-31 17:02:15 +08:00
  • 97e7f34260 feat(ui): enhance Codex provider list display by extracting base_url/model_provider from config.toml; plumb appType into ProviderList Jason 2025-08-31 16:55:55 +08:00
  • 74babf9730 refactor(api): unify Tauri command app param as app_type with backward-compatible app/appType; update front-end invocations accordingly Jason 2025-08-31 16:43:33 +08:00
  • 30fe800ebe fix(codex): correct config path reporting and folder opening; allow empty config.toml; unify API key field as OPENAI_API_KEY; front-end invoke uses app_type/app fallback for Tauri commands Jason 2025-08-31 16:39:38 +08:00
  • c98a724935 feat(ui): 优化首页切换为分段控件;精简 Banner 间距;标题在上切换在下 Jason 2025-08-31 00:03:22 +08:00
  • 0cb89c8f67 chore(codex): 调整 Codex 预设模板与占位符(auth.json/config.toml 与表单占位) Jason 2025-08-30 23:02:49 +08:00
  • 7b5d5c6ce1 refactor(codex): 选择 Codex 预设时清空 API Key 输入,避免误保存占位符 Jason 2025-08-30 22:09:19 +08:00
  • eea5e4123b feat(codex): 增加 Codex 预设供应商(官方、PackyCode);在添加供应商时支持一键预设与 API Key 自动写入 auth.json;UI 同步 Codex 预设按钮与字段 Jason 2025-08-30 22:08:41 +08:00
  • c10ace7a84 - feat(codex): 引入 Codex 应用与供应商切换(管理 auth.json/config.toml,支持备份与恢复) - feat(core): 多应用配置 v2(claude/codex)与 ProviderManager;支持 v1→v2 自动迁移 - feat(ui): 新增 Codex 页签与双编辑器表单;统一 window.api 支持 app 参数 - feat(tauri): 新增 get_config_status/open_config_folder/open_external 命令并适配 Codex - fix(codex): 主配置缺失时不执行默认导入(对齐 Claude 行为) - chore: 配置目录展示与重启提示等细节优化 Jason 2025-08-30 21:54:11 +08:00
  • 0e803b53d8 update readme farion1231 2025-08-29 15:37:26 +08:00
  • 49d8787ab9 ci(release): generate macOS zip, Windows installer + portable, Linux deb; split per-OS build and asset steps v3.0.1 Jason 2025-08-29 14:57:33 +08:00
  • a05fefb54c feat: optimize release workflow for better distribution Jason 2025-08-29 14:40:40 +08:00
  • 3574fa07cb ci(workflows): restore tag-only release; keep Linux deps Jason 2025-08-29 12:11:16 +08:00
  • b64b86f3ca Merge pull request #2 from farion1231/tauri-migration v3.0.0 Jason Young 2025-08-29 11:56:31 +08:00
  • 2cf116280f feat: add prettier formatter and MIT license tauri-migration Jason 2025-08-29 11:35:17 +08:00
  • 73cf337c42 fix(config): create settings.json on first run; keep legacy claude.json read compatibility Jason 2025-08-29 10:50:10 +08:00
  • fa2d64b692 feat: add official preset orange theme and disabled API input Jason 2025-08-29 09:03:11 +08:00
  • 9c17be1b59 security(tauri): remove unused shell plugin and capability Jason 2025-08-28 22:26:02 +08:00
  • fe1574a026 docs: update README for v3.0.0 Tauri release Jason 2025-08-27 22:26:07 +08:00
  • 9254c5d291 feat: add development scripts and CHANGELOG for v3.0.0 Jason 2025-08-27 11:15:29 +08:00
  • 642e7a3817 chore: format code and fix bundle identifier for v3.0.0 release Jason 2025-08-27 11:00:53 +08:00
  • 5e2e80b00d fix: prevent modal header jumping when toggling API key field Jason 2025-08-27 10:39:39 +08:00
  • 2a43f1f54d update: regenerate all platform icons Jason 2025-08-27 10:30:29 +08:00
  • 7e6ce83158 update: regenerate all platform icons Jason 2025-08-27 09:01:36 +08:00
  • 6932e89ea8 update: regenerate all platform icons from unified source Jason 2025-08-27 08:43:41 +08:00
  • d144d5c2fc ci(workflow): fix pnpm cache path context by using step outputs Jason 2025-08-26 23:32:13 +08:00
  • adee37ab66 feat(icons): update application icon with new colorful radial design Jason 2025-08-26 22:57:57 +08:00
  • dcf49cc094 fix(tauri): correct bundle.targets schema to array Jason 2025-08-26 22:51:22 +08:00
  • f8e39594fa chore: prepare v3.0.0 release Jason 2025-08-26 15:45:42 +08:00