Commit Graph
158 Commits
Author SHA1 Message Date
lzt404 50df18067b fix(agent): propagate discovered PATH to agent subprocesses
Prioritize the agent executable directory while preserving discovered
search paths for Pi package operations and CLI version probes.

Add coverage for PATH ordering and downstream command resolution.
2026-08-26 22:46:23 +08:00
lzt404 5ebfe43778 fix(version): update cpa-gui version to 0.2.62 2026-08-26 01:56:46 +08:00
lzt404 8c80ce1151 fix(model-alias): apply reasoning effort overrides by model source
- Decouple reasoning effort from the Fast service tier
- Generate native override parameters for each provider
- Validate efforts against the model’s supported levels
- Preserve complete reasoning capabilities on configured models
- Add coverage for multi-provider alias overrides
2026-08-26 01:56:46 +08:00
lzt404 58e58df374 fix(usage): align table width and reduce default window size
- stretch the usage table to match card width
- set the default window size to 1280 × 800
- migrate the legacy default window dimensions
- add coverage for window size migration
2026-08-26 01:56:46 +08:00
lzt404 1df1f7808f fix: stabilize download source switching
- serialize app and core version checks to prevent state races
- keep the source selector responsive during background checks
- prevent stale fallback results from overriding recent selections
- style the custom source action and restore the compact selector width
2026-08-26 01:56:46 +08:00
lzt404 6d7da20e4e feat: add customizable download sources with automatic fallback
- support built-in and user-defined GitHub mirror sources
- add a modal for managing custom HTTPS mirror prefixes
- automatically switch sources when version checks fail
- persist the working source and sync the selector in real time
- update translations, configuration migration, and source tests
2026-08-26 01:56:46 +08:00
lzt404 03be4acf93 feat: add multi-source downloads with automatic fallback
- support GitHub, GitCode, gh-proxy, and ghfast sources
- automatically try other sources when version checks fail
- persist the working fallback source and sync the UI immediately
- update translations, configuration migration, and source tests
2026-08-26 01:56:46 +08:00
lzt404 647806386b fix: isolate core processes per installation directory
- Match core processes by their actual executable paths
- Prevent different EasyCLIProxyAPI installations from interfering
- Adopt orphaned core processes from the current cpa-core directory
- Rescan and terminate owned core processes during shutdown
- Enforce a single app instance per installation directory
- Clean up core processes that fail to enter the Windows job object
- Add multi-directory process isolation and instance lock tests
2026-08-26 01:56:46 +08:00
lzt404 32b47575b5 feat: redesign version management and restore core after updates
- Add a dedicated version management page
- Improve app, core, and model catalog status displays
- Preserve the core runtime state during updates
- Automatically restart the core after successful, failed, or cancelled updates
- Add tests for version management and core runtime restoration
2026-08-26 01:56:46 +08:00
lzt404 3b9e3b9fd4 build: eliminate frontend chunk and Rust dead code warnings
- Split React, Tauri, DnD, and icon dependencies into vendor chunks
- Reduce the main application chunk below the warning threshold
- Compile test-only alias helpers only during test builds
2026-08-26 01:56:46 +08:00
lzt404 bb8f23cbc8 feat(version): add manual GitCode download source option
- Add a GitCode source toggle to Version Management
- Persist the preferred download source
- Prefer GitCode for app and core updates with GitHub fallback
- Add localized copy, documentation, and download-order tests
2026-08-26 01:56:46 +08:00
lzt404 68da51bae0 Dev (#172)
* chore(release): stop publishing legacy Windows update packages

* feat(agents): support OpenCode Desktop across platforms

Detect CLI and desktop installations on Windows, macOS, and Linux, and add separate launch and restart controls.

Closes #156

* fix(codex): align model display names and show total session count

- preserve runtime model identity in generated catalogs
- count distinct sessions across database and rollout sources
- update session count labels in all supported languages

* fix(codex): keep config and auth files in sync

- generate auth.json for API key configuration
- preserve and validate OAuth credentials
- include auth.json in transactional updates and rollback
- retain compatibility with legacy Codex configuration states

* fix(cpa-gui): update version to 0.2.59 in Cargo files

* fix(codex): preserve OAuth mode after closing configuration

* feat(config): add TLS management and protocol-aware local URLs

- add TLS controls to advanced settings
- persist certificate and private key paths
- restart the core after TLS changes
- switch WebUI, API and management URLs between HTTP and HTTPS
- synchronize agent configurations and detection with the active protocol

* refactor(config): reorganize network, routing, and TLS settings

- split network settings and session routing into separate tabs
- move TLS configuration into network settings
- preserve TLS restart and HTTPS URL synchronization behavior

* feat(config): add independent network settings and custom listen IP

* fix(navigation): allow access to usage records while core is stopped

* refactor(home): show a single API URL based on the configured listen IP

* feat(config): add file pickers for TLS certificate and private key

* fix(usage): distinguish client cancellations from request failures

- persist usage failure status and response details
- classify HTTP 499 and canceled contexts separately
- exclude canceled requests from failure statistics
- add canceled filtering and failure details to the usage UI
- migrate and backfill existing usage records

* feat(ui): revamp usage records and improve app interactions

- redesign usage records dashboard, filters, charts, and pricing views
- add resizable centered columns with persisted widths
- expose OpenCode desktop launch and restart actions
- suppress the API access enabled success notice

* feat(agents): persist applied configurations across app restarts

- preserve applied agent configs and managed Claude aliases on exit
- keep explicit close actions restoring original configurations
- add Codex restart persistence regression coverage
- bump desktop version to 0.2.61

* fix(model-aliases): support provider-aware OAuth aliases

- map OAuth aliases to their correct provider channels
- support Antigravity aliases with force mapping
- read and delete aliases by their exact OAuth channel
- refresh the runtime model registry after alias changes
- restrict Fast aliases to GPT models from OpenAI-compatible or Codex sources

* docs(readme): add APIMart sponsorship sections

- add English and Chinese sponsor descriptions
- add localized APIMart banner images
2026-08-24 17:16:00 +08:00
lzt404 3d44eba492 Dev (#166)
* chore(release): stop publishing legacy Windows update packages

* feat(agents): support OpenCode Desktop across platforms

Detect CLI and desktop installations on Windows, macOS, and Linux, and add separate launch and restart controls.

Closes #156

* fix(codex): align model display names and show total session count

- preserve runtime model identity in generated catalogs
- count distinct sessions across database and rollout sources
- update session count labels in all supported languages

* fix(codex): keep config and auth files in sync

- generate auth.json for API key configuration
- preserve and validate OAuth credentials
- include auth.json in transactional updates and rollback
- retain compatibility with legacy Codex configuration states

* fix(cpa-gui): update version to 0.2.59 in Cargo files

* fix(codex): preserve OAuth mode after closing configuration

* feat(config): add TLS management and protocol-aware local URLs

- add TLS controls to advanced settings
- persist certificate and private key paths
- restart the core after TLS changes
- switch WebUI, API and management URLs between HTTP and HTTPS
- synchronize agent configurations and detection with the active protocol

* refactor(config): reorganize network, routing, and TLS settings

- split network settings and session routing into separate tabs
- move TLS configuration into network settings
- preserve TLS restart and HTTPS URL synchronization behavior

* feat(config): add independent network settings and custom listen IP

* fix(navigation): allow access to usage records while core is stopped

* refactor(home): show a single API URL based on the configured listen IP

* feat(config): add file pickers for TLS certificate and private key

* fix(usage): distinguish client cancellations from request failures

- persist usage failure status and response details
- classify HTTP 499 and canceled contexts separately
- exclude canceled requests from failure statistics
- add canceled filtering and failure details to the usage UI
- migrate and backfill existing usage records

* feat(ui): revamp usage records and improve app interactions

- redesign usage records dashboard, filters, charts, and pricing views
- add resizable centered columns with persisted widths
- expose OpenCode desktop launch and restart actions
- suppress the API access enabled success notice

* feat(agents): persist applied configurations across app restarts

- preserve applied agent configs and managed Claude aliases on exit
- keep explicit close actions restoring original configurations
- add Codex restart persistence regression coverage
- bump desktop version to 0.2.61
2026-08-23 23:20:40 +08:00
lzt404 2b9ceb11fb Dev (#164)
* chore(release): stop publishing legacy Windows update packages

* feat(agents): support OpenCode Desktop across platforms

Detect CLI and desktop installations on Windows, macOS, and Linux, and add separate launch and restart controls.

Closes #156

* fix(codex): align model display names and show total session count

- preserve runtime model identity in generated catalogs
- count distinct sessions across database and rollout sources
- update session count labels in all supported languages

* fix(codex): keep config and auth files in sync

- generate auth.json for API key configuration
- preserve and validate OAuth credentials
- include auth.json in transactional updates and rollback
- retain compatibility with legacy Codex configuration states

* fix(cpa-gui): update version to 0.2.59 in Cargo files

* fix(codex): preserve OAuth mode after closing configuration

* feat(config): add TLS management and protocol-aware local URLs

- add TLS controls to advanced settings
- persist certificate and private key paths
- restart the core after TLS changes
- switch WebUI, API and management URLs between HTTP and HTTPS
- synchronize agent configurations and detection with the active protocol

* refactor(config): reorganize network, routing, and TLS settings

- split network settings and session routing into separate tabs
- move TLS configuration into network settings
- preserve TLS restart and HTTPS URL synchronization behavior

* feat(config): add independent network settings and custom listen IP

* fix(navigation): allow access to usage records while core is stopped

* refactor(home): show a single API URL based on the configured listen IP

* feat(config): add file pickers for TLS certificate and private key
2026-08-23 17:56:13 +08:00
lzt404 d0bd5a890a Dev (#162)
* chore(release): stop publishing legacy Windows update packages

* feat(agents): support OpenCode Desktop across platforms

Detect CLI and desktop installations on Windows, macOS, and Linux, and add separate launch and restart controls.

Closes #156

* fix(codex): align model display names and show total session count

- preserve runtime model identity in generated catalogs
- count distinct sessions across database and rollout sources
- update session count labels in all supported languages

* fix(codex): keep config and auth files in sync

- generate auth.json for API key configuration
- preserve and validate OAuth credentials
- include auth.json in transactional updates and rollback
- retain compatibility with legacy Codex configuration states

* fix(cpa-gui): update version to 0.2.59 in Cargo files
2026-08-23 16:19:03 +08:00
lzt404 93fe5baa54 Dev (#160)
* chore(release): stop publishing legacy Windows update packages

* feat(agents): support OpenCode Desktop across platforms

Detect CLI and desktop installations on Windows, macOS, and Linux, and add separate launch and restart controls.

Closes #156
2026-08-22 23:58:05 +08:00
lzt404andFake Trader 57c5f5d774 Dev (#157)
* fix(macos): restore main window on application reopen (#148)

Handle macOS RunEvent::Reopen when no window is visible. Fixes #147.

* fix(version): update core version to 7.2.138

* fix(macos): persist OAuth credentials across DMG upgrades

Migrate app-bundle auth directories to Application Support before updating configuration and prevent future bundle-local OAuth storage.

Fixes #153

* fix(kernel): stop the core before updating

* fix(i18n): use consistent stop terminology for core controls

* fix(opencode): support macOS JSONC configuration detection

Closes #156

---------

Co-authored-by: Fake Trader <9635792+faketrader@users.noreply.github.com>
2026-08-22 15:39:28 +08:00
lzt404andFake Trader c3f1c6e52c Dev (#154)
* fix(macos): restore main window on application reopen (#148)

Handle macOS RunEvent::Reopen when no window is visible. Fixes #147.

* fix(version): update core version to 7.2.138

* fix(macos): persist OAuth credentials across DMG upgrades

Migrate app-bundle auth directories to Application Support before updating configuration and prevent future bundle-local OAuth storage.

Fixes #153

---------

Co-authored-by: Fake Trader <9635792+faketrader@users.noreply.github.com>
2026-08-22 01:50:21 +08:00
lzt404 ede043e1d8 fix(version): update cpa-gui version to 0.2.26 2026-08-21 17:31:06 +08:00
lzt404 3ec3d18136 fix(update): repair signed macOS auto-update flow
Closes #143
2026-08-21 17:28:05 +08:00
lzt404 f84b14c41c fix(agents): allow launching clients before applying configuration 2026-08-21 17:05:39 +08:00
lzt404 00d3e41fcc fix(agents): prevent Claude Desktop from launching during macOS detection 2026-08-21 16:58:32 +08:00
lzt404 338d04ae5b fix(agents): make Codex app discovery compile on Linux 2026-08-16 02:12:33 +08:00
lzt404 0c83be3727 feat(agents): add Codex app restart and CLI directory history 2026-08-16 02:04:17 +08:00
lzt404 d0609e48f0 feat(agents): restore quick launch support for agent clients 2026-08-16 01:37:38 +08:00
lzt404 1936d6c5d5 fix(ci): remove redundant validation and resolve Clippy warnings 2026-08-15 16:08:50 +08:00
lzt404 51ea7fd69f fix(agents): sync Kimi and Grok context windows with CPA core 2026-08-15 15:51:56 +08:00
lzt404 b312b904a2 fix(agents): speed up detection and sync ZCode default model 2026-08-15 15:28:01 +08:00
lzt404 607c930d7b fix(zcode): sync model context windows from CPA core 2026-08-15 14:58:56 +08:00
lzt404 b933a0fa99 chore(version):change version to v0.2.24 2026-08-15 14:34:00 +08:00
lzt404 49893bb32e feat(agents): add Kimi Code and Grok Build integrations 2026-08-15 14:24:25 +08:00
lzt404 d093a0122e feat(agents): add ZCode client integration 2026-08-15 14:05:21 +08:00
lzt404 11b1ea23a5 fix(core): preserve installed plugins during core updates
Overlay extracted core files onto the existing installation instead of
replacing the entire cpa-core directory, preserving plugins and user data.
2026-08-15 13:31:58 +08:00
lzt404 5c770c5605 feat: add DeepSeek Harness configuration support 2026-08-15 00:59:17 +08:00
lzt404 a99f8c8035 fix: remove needless borrow in provider health headers 2026-08-14 21:15:27 +08:00
lzt404 18c9546b51 fix(health-check): record Gemini thought-only responses as successful usage 2026-08-14 18:43:12 +08:00
lzt404 dbd97d862f fix(core): show processing state during automatic startup
- track automatic core startup in shared runtime state
- expose the starting state through CoreStatus
- disable core controls while startup is in progress
- clear the processing state after startup succeeds or fails
- add regression tests for startup state handling
2026-08-14 01:37:35 +08:00
lzt404 30fb184384 feat(settings): add automatic core startup preference
- add a default-enabled “Start Core on Launch” setting
- persist the preference in the GUI configuration
- automatically start the CPA core when the app launches
- keep the preference independent from manual core start and stop actions
- add multilingual labels and migration tests
2026-08-14 01:28:52 +08:00
lzt404 2888042645 feat(oauth): add browser selection and refreshable login links
- detect installed browsers and remember the selected option
- support generating OAuth links without opening a browser
- refresh login links after cancelling the previous OAuth session
- update multilingual labels and responsive styles
- bump app version to 0.2.21 and core version to 7.2.131
2026-08-14 01:20:02 +08:00
lzt404 74be9e85a1 feat(config): add retry controls for long-running requests 2026-08-12 00:31:20 +08:00
lzt404 582fa32755 feat(usage): migrate legacy records to durable subscription storage
- back up and transactionally migrate legacy usage databases
- add durable inbox with retry, recovery, and cleanup
- prefer RESP usage subscription with HTTP fallback
- preserve existing usage APIs, queries, and deduplication behavior
- add migration, inbox, and RESP protocol tests
2026-08-11 23:41:04 +08:00
lzt404 3b3f1ea15f chore:change version to 0.2.19 and core version to 7.2.128 2026-08-11 18:52:13 +08:00
lzt404 4484e3a190 fix(agents): isolate Claude client model mapping drafts 2026-08-11 14:04:46 +08:00
lzt404 927f4de98a fix(agents): refresh OAuth model aliases at runtime 2026-08-11 13:23:10 +08:00
lzt404 51e3c7111e Merge branch 'dev' of https://github.com/router-for-me/EasyCLIProxyAPI into dev
# Conflicts:
#	src-tauri/src/agents/discovery.rs
2026-08-11 12:33:06 +08:00
lzt404 e9470fbe14 fix(agents): support Claude Desktop aliases for Codex OAuth models 2026-08-11 12:29:35 +08:00
Luis Pater 7a95f3c994 Conditionally compile tray module and imports for macOS and Windows targets 2026-08-11 02:37:47 +08:00
Luis Pater 3fbfb81f22 Refactor Claude agent discovery and test formatting cleanup 2026-08-11 02:29:49 +08:00
Luis Pater b15d4d1e61 Refactor macOS Dock visibility control to use AppHandle API and clean up related helpers
Closes: #110
2026-08-11 02:21:04 +08:00
lzt404 8655f6aae4 feat(agents): add per-role 1M context controls for Claude 2026-08-10 18:14:35 +08:00