Commit Graph
192 Commits
Author SHA1 Message Date
lzt404 cbd82386d5 fix(usage): filter control messages and repair unknown records
- filter empty, null, refresh, and support_refresh messages before persistence
- require request_id for usage records
- repair Claude cache token accounting
- delete historical unknown records
- show deleted record count in usage management
2026-09-01 23:32:26 +08:00
lzt404 3ebca59535 feat(easy-mode): refine onboarding flow and navigation controls
- Enforce accurate step validation for OAuth and API setup
- Select all fetched API models by default
- Prevent guide cards from overlapping highlighted areas
- Improve onboarding copy and remove unnecessary dashboard actions
- Reposition and highlight guide and exit controls
2026-09-01 23:32:26 +08:00
lzt404 7bf860055a feat(easy-mode): refine guided setup flow and spotlight positioning
- Enforce completion of each selection, input, and configuration step
- Align OAuth, API access, and agent setup guidance with actual UI actions
- Prevent guidance cards from overlapping highlighted areas
- Improve bilingual step descriptions and completion states
2026-09-01 23:32:26 +08:00
lzt404 d93d8a38e4 fix(easy-mode): refine API onboarding actions and notifications
- Reveal model selection and save actions only after fetching models
- Move the API save success toast to the bottom-right corner
- Auto-dismiss the success notification after a short delay
- Remove icons from the model fetch and save buttons
2026-09-01 23:32:26 +08:00
lzt404 a4a8b4ef90 style(easy-mode): align onboarding heading typography 2026-09-01 23:32:26 +08:00
lzt404 ee5babd1f7 refactor(agents): simplify embedded beginner mode UI 2026-09-01 23:32:26 +08:00
lzt404 dd008d64ba feat(easy-mode): improve API onboarding and agent configuration flow
- Fix management API 404 errors when saving API providers
- Simplify the model list and support custom model IDs
- Adjust API field order and default provider selection
- Reuse the full agent configuration page and restore agent detection
2026-09-01 23:32:26 +08:00
lzt404 79b50b7a2b feat(settings): add configurable default terminal for CLI agents
- Add default terminal selector under Advanced Settings > Software Settings
- Detect available terminals across macOS, Windows, and Linux
- Persist and migrate the default-terminal configuration
- Apply the selected terminal when launching CLI agents
- Add localized labels and regression tests

Fixes #179
2026-08-30 18:48:01 +08:00
lzt404 0f4fc69c0a refactor: streamline beginner mode onboarding flow
- simplify onboarding into model and agent setup
- preserve OAuth/API page state during navigation
- add concise OAuth and API setup guidance
- rename Easy Mode to Beginner Mode
2026-08-30 16:55:25 +08:00
lzt404 7e217a8186 refactor: streamline build packaging and Easy Mode guidance 2026-08-30 16:55:25 +08:00
lzt404 97fbd19f6c refactor: simplify easy mode setup flow and navigation 2026-08-30 16:55:25 +08:00
lzt404 6755b7c90e feat: add easy mode and improve OAuth, API, and agent setup flow 2026-08-30 16:55:25 +08:00
lzt404 2e0b2aef89 fix(usage): calculate overview TPS from valid post-TTFT generation time 2026-08-29 00:04:27 +08:00
lzt404 cca13235b0 style(usage): improve data repair result spacing 2026-08-28 00:51:28 +08:00
lzt404 eb4f9aeb54 refactor(usage): improve manual cache data repair feedback 2026-08-28 00:51:28 +08:00
lzt404 44dcdf13a8 feat(usage): add manual historical cache data repair 2026-08-28 00:51:28 +08:00
lzt404 f695193e24 fix(usage): normalize cache token accounting 2026-08-28 00:51:28 +08:00
lzt404 cbec0f68de fix(usage): simplify rendering of reasoning effort in UsageEventCell 2026-08-26 22:46:23 +08:00
lzt404 cb2cca1d7a fix(codex): align DeepSeek reasoning levels with low high max 2026-08-26 22:46:23 +08:00
lzt404 65e6dca29c fix(usage): pass query when syncing model prices 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 463c43aae0 style(usage): center table headers and content
- center-align all usage record columns
- align result badges consistently
- hide the redundant bottom horizontal scrollbar
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 a662d35876 style(usage): refine overview card metadata
- clarify request, token, and cache summaries
- align success metrics with request outcomes
- improve performance and pricing descriptions
- move detailed breakdowns to hover tooltips
2026-08-26 01:56:46 +08:00
lzt404 05d9ff9f0a style(usage): simplify overview statistic cards
- remove decorative icons from the overview cards
- remove unused card tone styles
- simplify statistic card header layout
2026-08-26 01:56:46 +08:00
lzt404 8629b4e771 fix(usage): prevent table clipping after column changes
- recalculate the top scrollbar from the actual table overflow
- clamp and synchronize scroll positions when visible columns change
- preserve horizontal scrolling while hiding the bottom scrollbar
- remove forced table width expansion for smaller column sets
- improve toolbar and display settings responsiveness
2026-08-26 01:56:46 +08:00
lzt404 4b0fd2062b feat(usage): refine usage records table layout and controls
- remove the redundant usage page header
- compact the navigation and collector status toolbar
- move horizontal scrolling and pagination controls above the table
- hide the bottom horizontal scrollbar
- rename column settings to display settings
- update the default visible columns and display order
- add page size selection and record range details
- adjust the Vite chunk size warning limit
2026-08-26 01:56:46 +08:00
lzt404 a47e941f0a feat(usage): streamline records table controls and layout
- remove the redundant usage page header
- compact the navigation and collector status toolbar
- move the horizontal scrollbar above the table
- move pagination and page size controls above the table
- improve column visibility labels and responsive styles
- adjust the Vite chunk size warning limit
2026-08-26 01:56:46 +08:00
lzt404 cbd2ae76af feat(usage): improve usage records layout and scrolling
- streamline the page header and status toolbar
- move the horizontal scrollbar above the table
- add page size selection and record range details
- improve column visibility controls and responsive styles
- adjust the Vite chunk size warning limit
2026-08-26 01:56:46 +08:00
lzt404 f83ba83d9d style(usage): refine request details table layout 2026-08-26 01:56:46 +08:00
lzt404 2fcbbed7ff style(usage): improve column controls and resize visibility 2026-08-26 01:56:46 +08:00
lzt404 1af6a7cfea feat(usage): add configurable speed and cache rate columns 2026-08-26 01:56:46 +08:00
lzt404 2599a8a280 fix: clarify download source switch notifications
- include the selected source name in switch messages
- use an informational state instead of a success state
- update localized notification text
2026-08-26 01:56:46 +08:00
lzt404 8224b57eeb fix: prevent source switch notifications from being truncated
- increase the toast width for longer messages
- allow notification content to wrap across multiple lines
- replace the fixed height with responsive sizing
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 e8093928c0 feat(ui): add confirmation dialog before stopping and updating core
- prompt for user confirmation before stopping running core and updating
- add confirm dialog UI with cancel and update actions
- add multilingual translations for core update confirmation
2026-08-26 01:56:46 +08:00
lzt404 2a6f110d75 style(ui): expand layout spacing and refine typography for version management
- increase page max-width from 980px to 1160px
- enlarge card padding, gaps, and border radiuses
- upgrade title and metric font sizes to panel title scale
- improve action button height and padding for better touch targets
2026-08-26 01:56:46 +08:00
lzt404 27520fc349 refactor(ui): remove model catalog and refine version management layout 2026-08-26 01:56:46 +08:00
lzt404 662685c81e refactor(ui): switch version management to a card-based layout 2026-08-26 01:56:46 +08:00
lzt404 4a8cf05f07 refactor(ui): simplify the version management page 2026-08-26 01:56:46 +08:00
lzt404 8aa620a7da refactor: reduce persistent status noise on version management
- Hide the core running PID badge during normal operation
- Remove redundant up-to-date indicators
- Hide the model catalog status badge when idle
- Show status badges only for updates, progress, missing installations, or errors
- Preserve one-time feedback after manual model catalog synchronization
2026-08-26 01:56:46 +08:00
lzt404 c4a66fd99c feat: simplify version management and restore core after updates
- Redesign and streamline the version management page
- Remove redundant platform, runtime, and auto-update capability details
- Preserve the core runtime state during installation and updates
- Automatically restart the core after successful, failed, or cancelled updates
- Improve update progress, status handling, and localized messages
- Add tests for version management and core runtime restoration
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 6462699a3d feat(ui): redesign the version management page 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