Commit Graph
645 Commits
Author SHA1 Message Date
lzt404 d7e39e8fdc Add Oh My Pi support through the OpenAI Responses API
Discover CPA models dynamically and route the managed provider to /v1/responses.
2026-10-08 18:36:58 +08:00
lzt404 aba62fa6bf Add v0.3.26 version release note 2026-10-06 15:36:29 +08:00
lzt404 25ed568b27 fix(providers): stop writing disabled onto native API keys
Codex, Claude, and Gemini keys reject the disabled field, so toggling them made the whole config fail to load. Keep that field for OpenAI-compatible providers, disable native keys with excluded-models, and repair existing configs before the core starts.
2026-10-06 15:36:29 +08:00
lzt404 36b98d2d0a fix(ui): restore searchable credential model picker
Use each credential's model IDs in the model name field and filter matches while typing.

Fixes #
2026-10-06 15:36:29 +08:00
lzt404 9e5ed4d2d3 style(usage): tighten filter menus and match the analysis toggle
Size usage filter menus to their content and use the home protocol selection style for the Token and request toggle.
2026-10-06 15:36:29 +08:00
lzt404 ed988f7998 Decouple Claude Code model management from CPA routing
Add independent controls for the startup model and Subagent model. Preserve Claude Code model selection and inheritance when CPA management is disabled.

Fixes #348
2026-10-06 15:36:29 +08:00
lzt404 35190a2ee3 Add v0.3.25 release note 2026-10-06 14:34:28 +08:00
lzt404 f6b6388ebf Update the core version to v8.0.16 2026-10-06 14:26:09 +08:00
lzt404 39a5f69bcb fix(usage): soften filter focus and keep views while reloading
Remove the green focus halo from usage filters and update the current view in place instead of rebuilding it on every filter change.
2026-10-06 14:26:09 +08:00
lzt404 ae17ab7518 style(usage): keep filters single-bordered and fixed width
Remove the nested filter outline and stop usage filter controls from resizing with their selected text.
2026-10-06 14:26:09 +08:00
lzt404 072d771b3b fix(ui): simplify credential aliases and usage filters
Use plain model name and alias inputs for credential aliases, discard unsaved credential settings on close, and replace usage filters with select-only menus.
2026-10-06 14:26:09 +08:00
lzt404 88d58529f1 Enhance the usage UI style 2026-10-06 13:41:35 +08:00
lzt404 35e72b13ed Add the v0.3.24 release note 2026-10-06 13:41:35 +08:00
lzt404 5183cf2bfe style(home): color the success-rate meter by rate
The home overview bar stayed brown down to 80%. Color it continuously from red through yellow to green so it follows the measured success rate.
2026-10-06 13:41:35 +08:00
lzt404 317c6df98f fix(core): prevent duplicate management mapping during startup
- Preserve hashed management keys written by the v8 core
- Avoid rewriting hashed keys with the GUI plaintext value
- Prevent duplicate top-level management mappings

Fixes #351
2026-10-06 13:41:35 +08:00
lzt404 1d64a4535f feat(usage): add customizable fixed row height settings
- Add a display setting to enable or disable fixed record heights
- Allow users to adjust row height with a draggable slider
- Persist row height preferences across sessions
- Improve display settings layout and translations
2026-10-06 13:41:35 +08:00
lzt404 8d3912f81b fix(usage): persist view preferences across updates
- Save pagination, visible columns, and column widths to the app data directory
- Migrate existing localStorage preferences and restore them on startup
- Preserve user choices instead of applying new defaults during upgrades
- Add regression tests for preference recovery and update preservation
2026-10-06 13:41:35 +08:00
lzt404 8f23fac80b Remedial measures to enhance the detection of blank key situations 2026-10-06 13:41:35 +08:00
lzt404 b48128a81a style(usage): center the latency column 2026-10-06 01:22:41 +08:00
lzt404 dccc45f57d fix: restore usage statistics after core upgrades
- Persist explicit opt-out in the app's config.toml
- Remove usage_statistics_disabled when users re-enable statistics
- Enable statistics on core startup unless explicitly disabled
- Add regression tests for v7/v8 compatibility and opt-out persistence
2026-10-06 01:22:41 +08:00
lzt404 c24bb1556b style(usage): show first-token and total duration together
Split the request-log latency cell into labeled TTFT and elapsed rows, colored green, amber, or red by duration.
2026-10-06 01:22:41 +08:00
lzt404 d5ce1010e5 Add v0.3.23 release note 2026-10-06 01:22:41 +08:00
lzt404 6679f42a1c fix(i18n): refine alias hint messages for clarity across Japanese, English, and Chinese translations 2026-10-06 01:22:41 +08:00
lzt404 286e050372 fix(usage): simplify conditional rendering for alias settings message 2026-10-06 01:22:41 +08:00
lzt404 ffdc53c629 perf(usage): keep request pages responsive while paging and resizing
Keep the current event rows visible while the next page loads, and refresh filter options only when the time range changes. Resize columns directly in the DOM and commit the width when the drag ends.
2026-10-06 01:22:41 +08:00
lzt404 830fc2c1cc fix(api): reflect disabled keys and platform counts
Use the native disabled flag for individual keys, dim disabled rows, and mark partially disabled groups. Name the actual add action in the empty state, count easy-mode platforms by provider group, and use the Meta icon.
2026-10-06 01:22:41 +08:00
lzt404 6e34850780 style(usage): show reasoning effort under the model name
Drop the separate reasoning-effort column from request details and render the raw effort, or auto, directly beneath the model name. Include it in the model tooltip, reset saved layouts that still use the old default column, and keep the field in CSV export.
2026-10-06 01:22:41 +08:00
lzt404 56a88ccb6f fix(usage): export filtered events and fix dark mode contrast
Export every request matching the current filters, remember the selected page size, and use dark surfaces for filter menus and request cards.
2026-10-05 16:10:37 +08:00
lzt404 ce3d54acd0 style(usage): restyle request rows and include HTTP error details
Render each request as a rounded card without changing columns or fields. Prefix upstream error messages with their HTTP status when it is not already present.
2026-10-05 16:10:37 +08:00
lzt404 b1fe595f0b style(ui): unify light mode with pure white background across app shell and usage views
- Set default light background color to pure white across html, body, and app-shell
- Replace grayish background, diffuse card shadows, and translucent pills in usage records with pure white surfaces and clean borders
- Ensure usage tables and subpage panels render consistently as pure white documents
- Update UI accessibility regression tests to assert pure white surfaces
2026-10-05 16:10:37 +08:00
lzt404 f4bba22817 refactor(ui): simplify and polish usage records view 2026-10-05 16:10:37 +08:00
lzt404 b3c6aa6fad chore(version): update core version to 8.0.15 2026-10-05 16:10:37 +08:00
lzt404 a08f38df7f fix(auth-files): sync quota priority display and credential ordering
Read OAuth priorities in quota cards and sort credentials by descending
priority followed by filename order across OAuth and quota pages.
2026-10-05 16:10:37 +08:00
lzt404 46a9d3d449 feat(mock): expand browser mock coverage for providers and edge cases
Add realistic quota, credential, usage, OAuth, and error scenarios.
Support in-memory mutations for imports, resets, cooldowns, and deletions.
Add browser UI and runtime regression tests with mock usage documentation.
2026-10-05 16:10:37 +08:00
lzt404 9f451f8299 fix(auth-files): prevent long quota labels from overlapping adjacent columns
Fixes #345
2026-10-05 16:10:37 +08:00
lzt404 7c3008dd81 refactor(quota): simplify reset expiry display
- Remove redundant reset count and applicability labels
- Display each Codex and Claude reset expiry directly
- Improve reset expiry layout with clearer spacing and separators
- Update quota panel and quota page tests
2026-10-05 00:45:17 +08:00
lzt404 1532bdb056 feat(quota): display all Codex reset credit expiry times
- List each expiry chronologically instead of showing only the earliest
- Update auth file panels, quota cards, and reset confirmation dialogs
- Preserve separate entries for credits with identical expiry times
- Add translations and regression coverage
2026-10-05 00:45:17 +08:00
lzt404 20be08f388 Add the release note for v0.3.21 2026-10-05 00:45:17 +08:00
lzt404 f025a497b8 fix(ui): align agent auth selection styling with home protocol tabs
- Use a subtle accent background instead of an outlined selected state
- Keep selection styling consistent across light, dark, and hover states
2026-10-05 00:45:17 +08:00
lzt404 19a7f88a29 fix(quota): keep Kimi free-account errors inline 2026-10-05 00:45:17 +08:00
lzt404 a3f5d2e54e feat(quota): add Claude quota reset support
- Add reset counts and actions to auth file and quota pages
- Reuse the Codex confirmation flow with Claude eligibility and cooldown checks
- Preserve request IDs on retries to prevent duplicate credit consumption
- Add translations, regression tests, and layout checks
2026-10-05 00:45:17 +08:00
lzt404 2b81856521 feat(codex): add credits balance to quota query
- Parse Codex usage credits balance and unlimited status
- Display credits in quota cards and auth file panels
- Add i18n labels and related tests
2026-10-05 00:45:17 +08:00
lzt404 a79140b8d2 fix(quota): prevent overflow with responsive credential cards
- Remove the redundant page title and table headings
- Adapt card columns to the available content width
- Compact quota details and prevent controls from overlapping
- Add layout regression coverage for 11 viewport configurations

Fixes #342
2026-10-05 00:45:17 +08:00
lzt404 d4e49a240c feat(quota): refine quota actions and usage metrics layout 2026-10-04 19:57:22 +08:00
lzt404 3c5114ebbb feat(quota): optimize quota lookup list layout 2026-10-04 19:57:22 +08:00
lzt404 eab80af225 feat(style): enhance active button appearance in agent list with border and background adjustments 2026-10-04 17:31:52 +08:00
lzt404 efa6a8cd92 style: refine protocol tabs and adaptive usage table layout
- Simplify protocol selection with subtle accent backgrounds and clear focus states
- Remove conflicting workspace styles from protocol tabs
- Expand usage tables to fill available width while preserving horizontal scrolling
- Allow token metrics to wrap in narrow columns
2026-10-04 17:31:52 +08:00
lzt404 06fd58d3d8 fix(v8): preserve migrated config and correct provider requests
- Preserve provider credentials, aliases, headers, and network settings during migration
- Normalize Claude cloak metadata and repair previously saved invalid types
- Use streaming Gemini health probes and honor group and key proxy settings
- Retain Codex customizations for temporarily unavailable models
- Add regression tests for migration, metadata, proxy routing, and catalog persistence
2026-10-04 17:31:52 +08:00
lzt404 2fd0f73f4c feat: add release notes for v0.3.20 with new features, improvements, and fixes 2026-10-04 17:31:52 +08:00
lzt404 10e7a8758d chore: update core version to 8.0.13 2026-10-04 17:31:52 +08:00