Skip to content

Releases: devore07/codex-reset-watcher

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 02:00
7511e9a

Changelog

v0.11.0

  • Add a saved Show Dock icon toggle in Settings. Turn it off to hide the
    watcher from the Dock and Command-Tab while keeping its menu bar available.
    Changes apply immediately and survive app restarts; the default remains on.
  • Keep the dashboard, Settings, and Quit accessible from the menu bar in either
    mode, including after the desktop window is closed.

v0.10.0

  • Adopt a subtly translucent system window background, native Liquid Glass
    action buttons on macOS 26+, and softer shared card/row corners.
  • Remove opaque sidebar, detail, popover and picker layers that hid the system
    material. Keep usage cards solid and preserve compact/detailed menu sizing.
  • Honor Reduce Transparency and Increase Contrast with opaque root surfaces;
    retain macOS 14 support and native bordered buttons on earlier systems.
  • Build CI and release artifacts with Xcode 26.3 so downloads include the modern
    macOS controls, with layout checks covering increased-contrast appearances.

v0.9.0

  • Mark old/failed Codex readings consistently with Claude and hide menu-title
    percentages after their reset time passes.
  • Add usage reset countdowns and last-updated labels to Compact mode, preserving
    missing timing, failed readings and passed-reset states.
  • Add opt-in, silent local alerts for low overall capacity and Codex resets
    expiring within 24 hours. Deduplicate warnings across refreshes and restarts;
    ignore old, failed and cached data.
  • Add native launch at login and notification settings, accessible from the
    dropdown gear or Command-comma. Both features are off by default.

v0.8.0

  • Add a saved Compact / Detailed switch to the dropdown opened from the menu bar.
  • Compact defaults to a 600-point popover with remaining usage, banked Codex reset
    counts and expiration dates; Detailed expands to larger rows, timing and advice.
  • Both layouts hug their contents without scrolling or blank viewport space.
    Preserve missing, blocked, old and expired readings and shared appearance.
  • Keep the desktop dashboard layout unchanged.

v0.7.3

  • Replace generic menu-bar service symbols with the OpenAI knot and Claude
    starburst, rendered as crisp monochrome vector templates.

  • Add a fully redacted, digest-pinned secret scan to CI and an installable local
    pre-push guard; document the public-history and release-archive audit.

v0.7.2

  • Alternate Codex and connected Claude weekly usage in the menu bar every 10
    seconds, with a service symbol, name, remaining percentage and reset weekday.
  • Mark old/failed Claude readings and withhold expired allowances until updated;
    hover for exact reset and receipt times. Disconnected Claude leaves Codex visible.
  • Keep rotation independent of the existing usage refresh schedules.
  • Compare Claude reset epochs directly to avoid date round-trip precision errors
    at the expiry boundary. The v0.7.1 tag failed release validation and was not published.

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    ...
Read more

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 04 Oct 04:15
c99bfc3

Changelog

v0.10.0

  • Adopt a subtly translucent system window background, native Liquid Glass
    action buttons on macOS 26+, and softer shared card/row corners.
  • Remove opaque sidebar, detail, popover and picker layers that hid the system
    material. Keep usage cards solid and preserve compact/detailed menu sizing.
  • Honor Reduce Transparency and Increase Contrast with opaque root surfaces;
    retain macOS 14 support and native bordered buttons on earlier systems.
  • Build CI and release artifacts with Xcode 26.3 so downloads include the modern
    macOS controls, with layout checks covering increased-contrast appearances.

v0.9.0

  • Mark old/failed Codex readings consistently with Claude and hide menu-title
    percentages after their reset time passes.
  • Add usage reset countdowns and last-updated labels to Compact mode, preserving
    missing timing, failed readings and passed-reset states.
  • Add opt-in, silent local alerts for low overall capacity and Codex resets
    expiring within 24 hours. Deduplicate warnings across refreshes and restarts;
    ignore old, failed and cached data.
  • Add native launch at login and notification settings, accessible from the
    dropdown gear or Command-comma. Both features are off by default.

v0.8.0

  • Add a saved Compact / Detailed switch to the dropdown opened from the menu bar.
  • Compact defaults to a 600-point popover with remaining usage, banked Codex reset
    counts and expiration dates; Detailed expands to larger rows, timing and advice.
  • Both layouts hug their contents without scrolling or blank viewport space.
    Preserve missing, blocked, old and expired readings and shared appearance.
  • Keep the desktop dashboard layout unchanged.

v0.7.3

  • Replace generic menu-bar service symbols with the OpenAI knot and Claude
    starburst, rendered as crisp monochrome vector templates.

  • Add a fully redacted, digest-pinned secret scan to CI and an installable local
    pre-push guard; document the public-history and release-archive audit.

v0.7.2

  • Alternate Codex and connected Claude weekly usage in the menu bar every 10
    seconds, with a service symbol, name, remaining percentage and reset weekday.
  • Mark old/failed Claude readings and withhold expired allowances until updated;
    hover for exact reset and receipt times. Disconnected Claude leaves Codex visible.
  • Keep rotation independent of the existing usage refresh schedules.
  • Compare Claude reset epochs directly to avoid date round-trip precision errors
    at the expiry boundary. The v0.7.1 tag failed release validation and was not published.

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind s...
Read more

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 04 Oct 01:25
3cf437a

Changelog

v0.9.0

  • Mark old/failed Codex readings consistently with Claude and hide menu-title
    percentages after their reset time passes.
  • Add usage reset countdowns and last-updated labels to Compact mode, preserving
    missing timing, failed readings and passed-reset states.
  • Add opt-in, silent local alerts for low overall capacity and Codex resets
    expiring within 24 hours. Deduplicate warnings across refreshes and restarts;
    ignore old, failed and cached data.
  • Add native launch at login and notification settings, accessible from the
    dropdown gear or Command-comma. Both features are off by default.

v0.8.0

  • Add a saved Compact / Detailed switch to the dropdown opened from the menu bar.
  • Compact defaults to a 600-point popover with remaining usage, banked Codex reset
    counts and expiration dates; Detailed expands to larger rows, timing and advice.
  • Both layouts hug their contents without scrolling or blank viewport space.
    Preserve missing, blocked, old and expired readings and shared appearance.
  • Keep the desktop dashboard layout unchanged.

v0.7.3

  • Replace generic menu-bar service symbols with the OpenAI knot and Claude
    starburst, rendered as crisp monochrome vector templates.

  • Add a fully redacted, digest-pinned secret scan to CI and an installable local
    pre-push guard; document the public-history and release-archive audit.

v0.7.2

  • Alternate Codex and connected Claude weekly usage in the menu bar every 10
    seconds, with a service symbol, name, remaining percentage and reset weekday.
  • Mark old/failed Claude readings and withhold expired allowances until updated;
    hover for exact reset and receipt times. Disconnected Claude leaves Codex visible.
  • Keep rotation independent of the existing usage refresh schedules.
  • Compare Claude reset epochs directly to avoid date round-trip precision errors
    at the expiry boundary. The v0.7.1 tag failed release validation and was not published.

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, ...
Read more

v0.7.3

Choose a tag to compare

@github-actions github-actions released this 07 Sep 01:38
29fb8e5

Changelog

v0.7.3

  • Replace generic menu-bar service symbols with the OpenAI knot and Claude
    starburst, rendered as crisp monochrome vector templates.

  • Add a fully redacted, digest-pinned secret scan to CI and an installable local
    pre-push guard; document the public-history and release-archive audit.

v0.7.2

  • Alternate Codex and connected Claude weekly usage in the menu bar every 10
    seconds, with a service symbol, name, remaining percentage and reset weekday.
  • Mark old/failed Claude readings and withhold expired allowances until updated;
    hover for exact reset and receipt times. Disconnected Claude leaves Codex visible.
  • Keep rotation independent of the existing usage refresh schedules.
  • Compare Claude reset epochs directly to avoid date round-trip precision errors
    at the expiry boundary. The v0.7.1 tag failed release validation and was not published.

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versu...
Read more

v0.7.2

Choose a tag to compare

@github-actions github-actions released this 07 Sep 00:59
b51249f

Changelog

v0.7.2

  • Alternate Codex and connected Claude weekly usage in the menu bar every 10
    seconds, with a service symbol, name, remaining percentage and reset weekday.
  • Mark old/failed Claude readings and withhold expired allowances until updated;
    hover for exact reset and receipt times. Disconnected Claude leaves Codex visible.
  • Keep rotation independent of the existing usage refresh schedules.
  • Compare Claude reset epochs directly to avoid date round-trip precision errors
    at the expiry boundary. The v0.7.1 tag failed release validation and was not published.

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
    ...
Read more

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 07 Sep 00:22
896d173

Changelog

v0.7.0

  • Add a unified desktop Dashboard with Codex on the left and Claude on the right.
  • Keep provider loading, unavailable, expired and last-reported states independent,
    with shared Refresh and appearance controls.
  • Widen the desktop window to keep usage meters and reset expiry dates readable;
    retain Claude connection settings and cached Codex snapshots in the sidebar.

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
  • Keeps missing-auth refreshes from stamping a fresh last checked time or
    leaving the UI selected on a cached snapshot that cannot be refreshed live.
  • Removes the raw account-id suffix fallback from account labels when Codex does
    not provide an email or name.

0.3.4 - 2026-06-30

  • Restores compact per-snapshot rows in the menu dropdown so cached snapshots
    select their detail view before opening the desktop window.
  • Keeps cached-account detail copy honest by labeling cached usage as last-seen
    data, not live limits.
  • Shows up to four reset expiry rows in...
Read more

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 07 Sep 00:02
a940082

Changelog

v0.6.1

  • Show server-reported Fable weekly usage beside Claude's five-hour and overall
    weekly limits, using the existing Desktop request and Keychain connection.
  • Keep Fable reset times independent; show missing/unreported values explicitly
    and never infer an included allowance or paid credit balance from Pro status.
  • Keep the menu compact by placing Claude Details beside the receipt timestamp.
  • Add Fable decoding, invalid/duplicate/expired window, privacy, report-compatibility,
    and three-meter/four-reset layout coverage.

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
  • Keeps missing-auth refreshes from stamping a fresh last checked time or
    leaving the UI selected on a cached snapshot that cannot be refreshed live.
  • Removes the raw account-id suffix fallback from account labels when Codex does
    not provide an email or name.

0.3.4 - 2026-06-30

  • Restores compact per-snapshot rows in the menu dropdown so cached snapshots
    select their detail view before opening the desktop window.
  • Keeps cached-account detail copy honest by labeling cached usage as last-seen
    data, not live limits.
  • Shows up to four reset expiry rows in the menu and includes the next hidden
    expiry cue when additional reset credits are available.
  • Shows explicit unavailable-expiry rows when Codex reports more available reset
    credits than it returns usable expiry records for.
  • Keeps Clear stale visible whenever stale cached snapshots exist.
  • Shows elapsed reset windows as now instead of rounding expired cached reset
    tim...
Read more

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 23:33
8a37c02

Changelog

v0.6.0

  • Add optional Claude Desktop usage polling using the existing desktop login;
    no CLI or browser extension is required. Five-hour and weekly limits include
    desktop and web activity on the same subscription.
  • Explain Keychain access in Connect, keep credentials and Desktop reports in
    memory, reject redirects, validate cookie domain hashes, and pause polling on
    rate limits. Preserve terminal status-line setup as an alternative source.
  • Clear prior values when Desktop login changes; retain receipt times on network
    failures. Disconnect stops checks without changing Claude's login.
  • Add synthetic cookie, request, response, and connection lifecycle tests. A live
    read-only request on 2026-09-06 returned both usage windows successfully.

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
  • Keeps missing-auth refreshes from stamping a fresh last checked time or
    leaving the UI selected on a cached snapshot that cannot be refreshed live.
  • Removes the raw account-id suffix fallback from account labels when Codex does
    not provide an email or name.

0.3.4 - 2026-06-30

  • Restores compact per-snapshot rows in the menu dropdown so cached snapshots
    select their detail view before opening the desktop window.
  • Keeps cached-account detail copy honest by labeling cached usage as last-seen
    data, not live limits.
  • Shows up to four reset expiry rows in the menu and includes the next hidden
    expiry cue when additional reset credits are available.
  • Shows explicit unavailable-expiry rows when Codex reports more available reset
    credits than it returns usable expiry records for.
  • Keeps Clear stale visible whenever stale cached snapshots exist.
  • Shows elapsed reset windows as now instead of rounding expired cached reset
    timers up to 1m.
  • Hardens refresh reliability for same-account token rotation, swapped usage
    window ordering, flexible numeric endpoint fields, exact trusted Codex endpoint
    checks, sanitized live error messages, and reset-credit partial failures that
    should not carry old expiry rows forward as fresh data.
  • Moves routine UI surfaces back onto light shared design tokens and documents
    the CodexTone / reusable component layer for future visual changes.
  • Tightens the GitHub release workflow so tagged releases run tests, package t...
Read more

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 06 Sep 22:49
8370f74

Changelog

0.5.1 - 2026-09-06

  • Keeps the initial terminal status-line report in Waiting for Claude Code
    until usage fields arrive. Malformed input still produces an unavailable state.
  • Adds a derived waiting flag to distinguish startup from a failed report,
    with backward-compatible reading of existing reports.
  • Updates the release and source-build documentation for this fork.

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
  • Keeps missing-auth refreshes from stamping a fresh last checked time or
    leaving the UI selected on a cached snapshot that cannot be refreshed live.
  • Removes the raw account-id suffix fallback from account labels when Codex does
    not provide an email or name.

0.3.4 - 2026-06-30

  • Restores compact per-snapshot rows in the menu dropdown so cached snapshots
    select their detail view before opening the desktop window.
  • Keeps cached-account detail copy honest by labeling cached usage as last-seen
    data, not live limits.
  • Shows up to four reset expiry rows in the menu and includes the next hidden
    expiry cue when additional reset credits are available.
  • Shows explicit unavailable-expiry rows when Codex reports more available reset
    credits than it returns usable expiry records for.
  • Keeps Clear stale visible whenever stale cached snapshots exist.
  • Shows elapsed reset windows as now instead of rounding expired cached reset
    timers up to 1m.
  • Hardens refresh reliability for same-account token rotation, swapped usage
    window ordering, flexible numeric endpoint fields, exact trusted Codex endpoint
    checks, sanitized live error messages, and reset-credit partial failures that
    should not carry old expiry rows forward as fresh data.
  • Moves routine UI surfaces back onto light shared design tokens and documents
    the CodexTone / reusable component layer for future visual changes.
  • Tightens the GitHub release workflow so tagged releases run tests, package the
    app, verify the bundle version against the tag, check the code signature, and
    validate the versioned zip before upload.
  • Strips release binaries before signing so packaged apps do not retain local
    build/source paths in symbol metadata.
  • Cleans old versioned release zips before packaging so release uploads cannot
    accidentally include stale artifacts.
  • Documents versioned release zip assets in the install instructions.
  • Verifies the packaged app with local UI QA against the menu bar title,
    dropdown metric toggle, cached snapshot selection, and stale cleanup surfaces.

0.3.3 - 2026-06-26

  • Adds an explicit Clear stale action in the desktop sidebar, desktop footer,
    and menu dropdown so stale cached snapshots can be removed without cle...
Read more

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 22:38
cbe791e

Changelog

0.5.0 - 2026-09-06

  • Adds optional Claude Pro/Max five-hour and weekly remaining usage to the menu
    and desktop sidebar through terminal Claude Code's local status-line feed.
  • Adds explicit connection/disconnection, existing-command forwarding, and
    automatic discovery of standard CLI and Claude Desktop's native engine.
  • Labels observations with receipt times, preserves partial/unavailable states,
    and stops showing expired windows as current capacity.
  • Uses a wider connected menu with provider columns and paired Codex reset cards.
    The existing Codex menu-bar title and reset advice remain Codex-specific.
  • Packages a universal, credential-free helper with private atomic reports,
    container tests, and command-forwarding/secret checks in CI.
  • Requires terminal Claude Code activity; desktop-only Code sessions do not
    produce this feed. No Claude credentials, browser cookies, or account mutations
    are involved.

0.4.4 - 2026-07-12

  • Restores the weekly reset weekday to the compact menu bar title, for example
    57% | Sunday.
  • Keeps weekly as the only current menu-title metric while Codex is not
    returning the former 5-hour window.
  • Uses % | week when weekly timing is missing and --% | week when the
    weekly percentage is unavailable, without falling back to reset counts.
  • Documents the dormant 5-hour display design and restoration checklist in
    MENU_BAR_DISPLAY_PLAN.md for when Codex returns that window.

0.4.3 - 2026-07-12

  • Makes the macOS menu bar title show only the weekly remaining percentage.
  • Removes the Week / 5h menu-title selector and its persisted preference;
    weekly is now the single, consistent status metric.
  • Removes reset counts, reset dates, weekdays, and times from the compact menu
    bar title; those details remain available inside the dropdown.
  • Shows --% when Codex returns no trustworthy weekly percentage.
  • Adds regression tests for the reported case where three banked resets and a
    missing 5-hour window incorrectly produced 3 resets in the title.

0.4.2 - 2026-07-11

  • Removes the v0.4.1 screen-sized menu viewport that created large empty bands
    above and below the real content.
  • Lets the menu dropdown use its intrinsic SwiftUI height with no forced frame,
    ScrollView, or ViewThatFits sizing layer.
  • Reorders menu sections to Display settings, Current limits, then
    Banked Resets Expiration, with the usage nudge after the primary sections.
  • Renames the menu's reset section to Banked Resets Expiration.
  • Removes cached snapshots and stale-snapshot cleanup from the menu dropdown;
    those account-management controls remain in the full desktop app.
  • Adds a regression test for the required menu section order and label.

0.4.1 - 2026-07-11

  • Fixes the v0.4.0 menu-bar regression that could reopen the dropdown partway
    down and hide current limits or reset-credit expiry dates.
  • Removes the fixed 620-point dynamic-content cap. The dropdown now uses the
    active screen's available height and shows its full natural content whenever
    that screen can fit it.
  • Keeps scrolling only as a constrained-screen fallback, gives that fallback a
    deterministic viewport height, and resets it to the top whenever it appears
    or live data refreshes.
  • Adds regression tests for tall-screen expansion and short-screen fallback
    sizing.

0.4.0 - 2026-07-11

  • Makes missing data explicit: loading, partial, signed-out, failed, and cached
    states no longer masquerade as zero resets or fresh live limits.
  • Keeps the active account's live data separate from cached snapshots during
    auth changes, endpoint failures, and token rotation, preventing mixed-account
    snapshots and stale timestamps.
  • Uses the server reset count when available, shows missing-expiry rows when
    Codex reports credits without usable expiry details, and shows only available
    reset credits in the active detail view.
  • Improves reset advice for blocked limits, low 5-hour capacity, unknown reset
    counts, and missing timing data; cached snapshots use neutral last-seen copy.
  • Bounds hostile numeric/date/count inputs and validates semantically empty
    successful JSON responses before they can replace valid state.
  • Rejects empty auth tokens, unsafe redirects, and untrusted final response URLs;
    keeps the dedicated network session free of cookies and URL caches.
  • Expands unit coverage to 105 tests across account races, snapshot redaction,
    stale cleanup, hostile input, nudge decisions, endpoint trust, and UI tokens.
  • Makes release CI build universal arm64/x86_64 binaries and adds package scans
    for sensitive strings and tag/version drift.

0.3.8 - 2026-07-02

  • Makes the desktop window roughly 10% larger by default so the usage cards,
    reset expiry rows, nudge, and footer controls fit without the bottom content
    being clipped on first open.
  • Enforces the roomier minimum size on restored macOS windows, so users with an
    older saved too-short window frame get expanded instead of seeing the old
    clipped layout again.
  • Adds a design-system regression test for the desktop window size floor.

0.3.7 - 2026-07-02

  • Tightens the desktop layout so the active usage cards, all reset expiry rows,
    nudge, and footer controls fit in the default-height window without hiding
    the main content behind scrolling.
  • Fixes desktop reset expiry row overlap by separating label/detail text from
    the date column and removing the redundant status pill that could squeeze
    into an empty oval.
  • Makes usage cards, reset rows, header artwork, and the nudge card denser while
    preserving the shared CodexPalette / CodexStyle design system.
  • Rebalances the menu-bar dropdown after real menu QA with a wider popover,
    roomier row heights, and better reset/cached-snapshot breathing room.

0.3.6 - 2026-07-02

  • Refreshes the menu dropdown and desktop window around the uploaded 2026 design
    system: warmer light surfaces, dark gray dark mode surfaces, shared row/card
    styling, and a roomier readable menu scale.
  • Adds Light, Dark, and Auto appearance modes that apply to both SwiftUI content
    and the AppKit menu-bar app appearance.
  • Adds green, amber, and red usage-capacity bars with tested thresholds:
    60% or higher is green, 25-59% is amber, and below 25% is red; blocked usage
    windows still override with danger styling.
  • Moves live usage windows ahead of reset expiry and nudge content in the
    desktop detail view so current capacity is the first thing to scan.
  • Adds compact usage meters to the menu dropdown rows while preserving the
    active menu-bar title selector, reset expiry rows, and cached snapshot rows.
  • Adds design-system tests for appearance-mode mapping and usage-tone
    thresholds.

0.3.5 - 2026-06-30

  • Treats Codex allowed: false / limit_reached usage responses as a first-class
    blocked state in the nudge logic, menu dropdown, desktop usage cards, and
    status icon instead of falling back to ordinary capacity advice.
  • Stops guessing 5-hour versus weekly windows from endpoint order when
    limit_window_seconds is missing, and falls back to generic labeled usage
    rows until Codex returns a trustworthy duration.
  • Hardens cached snapshot date math against implausible reset epochs and marks
    snapshots with no usage or reset signals as stale.
  • Keeps missing-auth refreshes from stamping a fresh last checked time or
    leaving the UI selected on a cached snapshot that cannot be refreshed live.
  • Removes the raw account-id suffix fallback from account labels when Codex does
    not provide an email or name.

0.3.4 - 2026-06-30

  • Restores compact per-snapshot rows in the menu dropdown so cached snapshots
    select their detail view before opening the desktop window.
  • Keeps cached-account detail copy honest by labeling cached usage as last-seen
    data, not live limits.
  • Shows up to four reset expiry rows in the menu and includes the next hidden
    expiry cue when additional reset credits are available.
  • Shows explicit unavailable-expiry rows when Codex reports more available reset
    credits than it returns usable expiry records for.
  • Keeps Clear stale visible whenever stale cached snapshots exist.
  • Shows elapsed reset windows as now instead of rounding expired cached reset
    timers up to 1m.
  • Hardens refresh reliability for same-account token rotation, swapped usage
    window ordering, flexible numeric endpoint fields, exact trusted Codex endpoint
    checks, sanitized live error messages, and reset-credit partial failures that
    should not carry old expiry rows forward as fresh data.
  • Moves routine UI surfaces back onto light shared design tokens and documents
    the CodexTone / reusable component layer for future visual changes.
  • Tightens the GitHub release workflow so tagged releases run tests, package the
    app, verify the bundle version against the tag, check the code signature, and
    validate the versioned zip before upload.
  • Strips release binaries before signing so packaged apps do not retain local
    build/source paths in symbol metadata.
  • Cleans old versioned release zips before packaging so release uploads cannot
    accidentally include stale artifacts.
  • Documents versioned release zip assets in the install instructions.
  • Verifies the packaged app with local UI QA against the menu bar title,
    dropdown metric toggle, cached snapshot selection, and stale cleanup surfaces.

0.3.3 - 2026-06-26

  • Adds an explicit Clear stale action in the desktop sidebar, desktop footer,
    and menu dropdown so stale cached snapshots can be removed without clearing
    every cached snapshot.
  • Renames the selected stale snapshot action to Forget stale so removing a
    single stale record is easier to discover.
  • Adds a regression test for stale-snapshot cleanup persistence.

0.3.2 - 2026-06-25

  • Fixes a menu-dropdown regression where clicking cached accounts could create
    additional main windows instead of focusing the existing wind...
Read more