From 62c5ec10a8369518be0eabce8b3e3472a8717062 Mon Sep 17 00:00:00 2001 From: Carl <74130028+Carl723000@users.noreply.github.com> Date: Thu, 10 Sep 2026 15:29:00 +0800 Subject: [PATCH] docs: keep README history at minor level Co-authored-by: OpenAI Codex <215057067+openai-codex[bot]@users.noreply.github.com> --- README-en.md | 53 ++++------------------ README-id.md | 55 ++++------------------ README-ja.md | 51 +++------------------ README-ko.md | 51 +++------------------ README-zh-CN.md | 50 ++++---------------- README-zh-TW.md | 47 +++---------------- README.md | 118 ++++-------------------------------------------- 7 files changed, 54 insertions(+), 371 deletions(-) diff --git a/README-en.md b/README-en.md index 386c2a51..af44d552 100644 --- a/README-en.md +++ b/README-en.md @@ -26,7 +26,7 @@ Hover the quota indicator for a breakdown: ![Dashboard](images/v2-dashboard-en.png) -### v2.3.1 Codex and Compare +### v2.3 Codex and Compare ![Claude Today, Simplified Chinese, dark theme](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -36,7 +36,7 @@ Hover the quota indicator for a breakdown: ![Combined Claude and Codex heatmap, English, light theme](images/v2.3.1/compare-heatmap-en-light.png) -These four v2.3.1 captures use the production renderer, synthetic fixtures, and VS Code Light+/Dark+ theme variables—not personal usage or billing evidence. Native VSIX installation is checked separately. +These four v2.3 captures use the production renderer, synthetic fixtures, and VS Code Light+/Dark+ theme variables—not personal usage or billing evidence. Native VSIX installation is checked separately. - Codex shows **Today token usage** and separate **remaining quota**: 36% used means `wk 64%`. Hover shows utilisation bars, resets, and wrapped notes. Quota is last-observed local evidence, not a live balance. - Period details start collapsed; sharing settings sit below the preview. Sharing is on by default with an off switch and quantile, logarithmic, or linear intensity. @@ -53,50 +53,13 @@ These four v2.3.1 captures use the production renderer, synthetic fixtures, and - **Multi-vendor pricing** — Opus 4.x / Sonnet 4.x / Haiku 4.5 verified against Anthropic's public pricing; reference rates for OpenAI / Gemini / DeepSeek / Kimi / GLM / Qwen with family-aware fallback. `Refresh Token Pricing` pulls live LiteLLM data. - **Personalisation** — language, timezone, decimal places, compact numbers, project grouping, dashboard auto-refresh toggle. -## What's new in v2.3.2 - -- Settings now uses one curated currency dropdown, defaulting to USD. Thirteen - additional display currencies use a bundled, fixed 2026-09-09 ECB-derived - snapshot; rates are not editable or fetched, and source estimates remain USD. -- Claude and Codex now share complete All time month → day and Last 30 days day - → hour drill-down wherever materialized aggregates exist, with matching mouse, - keyboard, focus, nested-collapse, and reload behavior and no JSONL read on click. -- Normal live refresh preserves the active tab, expansion chain, selected - metric/hour, Optimizer draft, keyboard focus, and nearby scroll anchor. -- Every chart exposes a localized provider-qualified accessible name. Empty - hours keep their axis, table, tooltip, and selectable zero value without - repeating `0` above every bar; genuinely unpriced activity still shows `—`. -- Provider watchers recover with bounded backoff, and unchanged Codex - thread-title indexes use a validated memory cache to reduce background work. - -The reviewed draft is `v2.3.2`; the human-controlled publish workflow stamps package metadata from that release tag. - -## What's new in v2.3.1 - -- Exact pricing and context metadata now cover **GPT-6 Astra** - (`gpt-6-astra`, 1.05M context) and **Claude Fable 5.1 / Mythos 5.1** - (`claude-fable-5-1` / `claude-mythos-5-1`, 1M context). Fable 5.1 uses its - model-specific `$0.25 / MTok` cache-read rate without changing historical - Fable 5 data. GPT-6 API-equivalent values use the official Standard - short-context rates; the request-wide surcharge above 272K input is excluded - because aggregate local logs cannot establish that per-request threshold. -- Claude estimates can optionally use direct Anthropic or AWS Bedrock in-region - on-demand rates for current Opus, Sonnet, and Haiku families. Switching the - backend reprices unchanged logs immediately; Sonnet 5 uses the standard rate - after its launch promotion ended on 31 August 2026. -- Last 30 days is the configured-timezone current date plus the preceding 29 dates. Today ≤ Last 30 days ≤ All time, repeated refresh/reindex is stable, all breakdowns reconcile, and months run oldest-first. Claude's Workflows summary uses the same rolling range and assigns each run by its configured-zone start date. Chart metric switches and drill-down labels render daily/monthly usage keys without host-timezone rollback; Advice and Optimizer snooze dates also use the configured timezone and UI locale. -- Structured reasoning-effort variants normalize without model-name guessing. Non-zero unknown is explained; zero unknown is hidden. -- Bounded anonymous quota observations preserve irregular and same-day resets. Every valid same-window used fraction contributes to labelled total and unused subscription-durability estimates, including the current window. Approximate or unattributed evidence is low confidence. If local Codex quota series overlap, the current window uses the latest real observation for a low-confidence blended estimate; ambiguous completed windows remain used-only. Unused value never becomes negative. -- Compare now leads with a combined Claude + Codex activity heatmap that reuses daily aggregates, works with either provider alone, and keeps both components in every tooltip. -- The preview-first share studio supports deterministic local SVG, a combined card, copyable Markdown, title/range controls, a privacy preview, and curated/custom colors. It is on by default and can be hidden with one Settings switch. Academic Violet is the default; intensity can use quantile (default), logarithmic, or linear mapping. Optional public-GitHub publication is separately confirmed at the exact destination. -- Codex Token composition now shows **uncached usage** (uncached input + output) above the non-overlapping uncached-input / cached-input / output stack; reasoning remains a subset of output. -- Codex scrolling stays smooth while indexing: scroll state is saved once after a gesture and live index progress patches text without rebuilding the page. Per-model green headlines now show exact-model API-equivalent price with coverage help; unknown models show `—`, while effort headlines retain neutral uncached-token values. -- OpenAI-compatible optimizer requests now send `reasoning_effort` without the unsupported top-level `thinking` parameter, resolving [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94). -- Claude and Codex now share dashboard density, hierarchy, disclosure, focus, ARIA, narrow-width, and light/dark design tokens while retaining provider-specific metric meanings. -- Get AI Advice and Usage Optimizer share one exact-preview and explicit-send boundary. There is no default or background AI request, and local evidence/feedback remains bounded. - -## Codex Beta in v2.3 +## What's new in v2.3 +- **Refined throughout the v2.3 line** — GPT-6 Astra and Fable 5.1 model + metadata, optional AWS Bedrock pricing, a fixed-reference display-currency + selector, complete month/day/hour drill-downs, state-preserving refresh, + accessible charts, and lower watcher/title-index overhead. Patch-level + details stay in the changelog and GitHub Releases. - Codex usage records are discovered only from `sessions/**/*.jsonl` and `archived_sessions/**/*.jsonl`; credential, database, and unknown files remain excluded. Separately, the extension streams exactly `$CODEX_HOME/session_index.jsonl` to map `id` to `thread_name` for truthful thread titles. Absolute paths are redacted and titles remain memory-only. Usage-record JSONL lines are streamed and temporarily parsed only to extract allowlisted usage and structural metadata; prompt, response, command, and tool-argument fields are not inspected or used for analysis, and are never retained or persisted. - **Processed** means input + output, **uncached usage** means uncached input + output, **cached input** remains a subset of input, and reasoning remains a subset of output. The overview also shows input cache hit rate as cached input / input. Codex billing cost is not shown. Its first summary card is a clearly labelled API-equivalent cost estimate for the selected scope, and the All-time view shows the weekly trend on the same pricing basis; Claude / Codex / Compare keep each provider's accounting separate. - Codex **Today** means the current calendar day in the configured timezone. It adds exact hourly API-equivalent cost beside a separate token-composition view; daily and monthly primary charts also default to API-equivalent cost while token composition stays separately visible. Only exact known-model prices contribute, so unknown models remain unpriced and pricing coverage stays visible. The additive, schema-3-compatible hourly sidecar keeps sparse buckets for the rolling last 30 days, is checkpointed and resumable, evicts day 31, and serves date expansion without reading JSONL on click. Codex monthly charts and tables list months oldest-first. diff --git a/README-id.md b/README-id.md index 5fed5c09..18991b27 100644 --- a/README-id.md +++ b/README-id.md @@ -26,7 +26,7 @@ Arahkan kursor ke indikator kuota untuk melihat rinciannya: ![Dashboard](images/v2-dashboard-en.png) -### Codex dan Perbandingan v2.3.1 +### Codex dan Perbandingan v2.3 ![Claude hari ini, Tionghoa Sederhana, tema gelap](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -36,7 +36,7 @@ Arahkan kursor ke indikator kuota untuk melihat rinciannya: ![Heatmap gabungan Claude dan Codex, Inggris, tema terang](images/v2.3.1/compare-heatmap-en-light.png) -Empat gambar v2.3.1 ini menggunakan renderer produksi, data sintetis, dan variabel tema VS Code Light+/Dark+, bukan bukti penggunaan pribadi atau tagihan. Instalasi VSIX native diverifikasi secara terpisah. +Empat gambar v2.3 ini menggunakan renderer produksi, data sintetis, dan variabel tema VS Code Light+/Dark+, bukan bukti penggunaan pribadi atau tagihan. Instalasi VSIX native diverifikasi secara terpisah. - Codex menampilkan **token terpakai hari ini** dan **sisa kuota** secara terpisah: penggunaan mingguan 36% berarti `wk 64%`. Tooltip tetap menampilkan bilah penggunaan, waktu reset, dan catatan berbaris. Kuota berasal dari pengamatan lokal terakhir, bukan saldo langsung. - Detail periode tertutup secara default; pengaturan berbagi berada di bawah pratinjau. Berbagi aktif secara default dan dapat dimatikan, dengan intensitas kuantil, logaritmik, atau linear. @@ -53,52 +53,13 @@ Empat gambar v2.3.1 ini menggunakan renderer produksi, data sintetis, dan variab - **Harga multi-vendor** — Opus 4.x / Sonnet 4.x / Haiku 4.5 diverifikasi terhadap harga publik Anthropic; tarif referensi untuk OpenAI / Gemini / DeepSeek / Kimi / GLM / Qwen dengan fallback berbasis family model. `Refresh Token Pricing` menarik data LiteLLM langsung. - **Personalisasi** — bahasa, zona waktu, angka desimal, angka ringkas, pengelompokan proyek, toggle penyegaran otomatis dashboard. -## Yang baru di v2.3.2 - -- Settings kini memakai satu dropdown mata uang dengan USD sebagai default. - Tiga belas mata uang tampilan lain memakai snapshot tetap kurs referensi ECB - tanggal 2026-09-09. Kurs tidak dapat diedit atau diambil secara online, dan - estimasi dasar tetap disimpan dalam USD. -- Claude dan Codex mendukung drill-down Sepanjang Waktu bulan → hari serta 30 - Hari Terakhir hari → jam jika agregatnya tersedia. Mouse, keyboard, fokus, - penutupan bertingkat, dan pemulihan setelah reload konsisten tanpa membaca JSONL saat diklik. -- Refresh langsung biasa mempertahankan tab, rantai ekspansi, metrik/jam terpilih, - draf Optimizer, fokus keyboard, dan posisi gulir terdekat. -- Setiap grafik memiliki nama aksesibel lokal yang menyertakan provider. Jam - kosong tetap memiliki sumbu, tabel, tooltip, dan nilai 0 yang dapat dipilih, - tetapi tidak lagi menampilkan 0 di atas setiap batang kosong. Aktivitas yang - benar-benar belum memiliki harga tetap menampilkan `—`. -- Watcher provider pulih dengan backoff terbatas, sedangkan indeks judul thread - Codex yang tidak berubah memakai cache memori tervalidasi untuk mengurangi kerja latar. - -Draft Release yang ditinjau adalah `v2.3.2`; alur publikasi manual menetapkan versi paket dari tag tersebut. - -## Yang baru di v2.3.1 - -- Metadata harga dan konteks yang tepat kini mencakup **GPT-6 Astra** - (`gpt-6-astra`, konteks 1,05 juta token) serta **Claude Fable 5.1 / Mythos - 5.1** (`claude-fable-5-1` / `claude-mythos-5-1`, konteks 1 juta token). - Fable 5.1 memakai tarif baca cache khusus `$0.25 / juta token` tanpa mengubah - riwayat Fable 5. Nilai ekuivalen API GPT-6 memakai tarif Standard resmi untuk - konteks pendek. Biaya tambahan untuk seluruh permintaan di atas 272K input - tidak disertakan karena log agregat lokal tidak dapat memastikan ambang per - permintaan tersebut. -- Estimasi Claude dapat memakai tarif langsung Anthropic atau tarif on-demand - AWS Bedrock in-region untuk keluarga Opus, Sonnet, dan Haiku saat ini. - Mengganti backend langsung menghitung ulang log yang tidak berubah; Sonnet 5 - memakai tarif standar setelah promosi peluncurannya berakhir 31 Agustus 2026. -- 30 hari terakhir berarti hari ini dan 29 tanggal sebelumnya dalam zona waktu konfigurasi. Total dapat direkonsiliasi, refresh berulang stabil, dan bulan tampil dari lama ke baru. Ringkasan Workflows Claude memakai rentang bergulir yang sama dan memasukkan setiap eksekusi berdasarkan tanggal mulai di zona waktu konfigurasi. Saat metrik grafik diganti atau label drill-down dirender, kunci penggunaan harian/bulanan tidak lagi mundur sehari atau sebulan akibat zona waktu host. Tanggal berakhirnya penundaan Saran AI dan Usage Optimizer juga memakai zona waktu konfigurasi dan bahasa UI. -- Reasoning effort terstruktur tidak ditebak dari nama model. `unknown` bukan nol dijelaskan; nilai nol disembunyikan. -- Pengamatan kuota anonim yang terbatas mempertahankan reset tidak teratur dan pada hari yang sama. Fraksi valid dalam satu jendela menghasilkan estimasi total dan sisa daya tahan langganan, termasuk periode berjalan. Bukti perkiraan atau tanpa atribusi diberi keyakinan rendah. Jika series kuota Codex lokal tumpang tindih, periode berjalan memakai pengamatan nyata terbaru untuk estimasi gabungan berkeyakinan rendah; periode selesai yang atribusinya ambigu tetap hanya menampilkan nilai terpakai. -- Perbandingan menampilkan heatmap aktivitas gabungan Claude + Codex dari agregat harian yang sudah ada dan tetap berfungsi dengan satu penyedia. -- Studio berbagi yang mengutamakan pratinjau mencakup SVG lokal deterministik, kartu, Markdown, judul/rentang, pratinjau privasi, dan warna yang dapat disesuaikan. Academic Violet menjadi default; pemetaan intensitas dapat memakai kuantil (default), logaritmik, atau linear. Publikasi GitHub publik mengonfirmasi tujuan tepat secara terpisah. -- Komposisi Token Codex sekarang menampilkan **penggunaan tanpa cache** (input tanpa cache + output) di atas stack input tanpa cache / input cache / output yang tidak tumpang tindih; reasoning tetap merupakan bagian dari output. -- Codex tetap dapat digulir dengan mulus saat pengindeksan: status gulir disimpan sekali setelah gerakan selesai dan progres indeks langsung hanya memperbarui teks tanpa membangun ulang halaman. Ringkasan hijau per model kini mengikuti makna Claude, yaitu harga ekuivalen API untuk model yang cocok tepat beserta cakupan harga. Model tak dikenal menampilkan `—`, sedangkan effort tetap memakai nilai Token tanpa cache berwarna netral. -- Permintaan Optimizer yang kompatibel dengan OpenAI kini hanya mengirim `reasoning_effort` tanpa parameter tingkat atas `thinking` yang tidak didukung, menyelesaikan [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94). -- Claude/Codex berbagi token desain untuk kepadatan, hierarki, fokus, ARIA, lebar sempit, serta tema terang/gelap tanpa menyamakan arti metrik. - -## Codex Beta di v2.3 +## Yang baru di v2.3 +- **Penyempurnaan di seluruh seri v2.3** — metadata model GPT-6 Astra dan + Fable 5.1, harga AWS Bedrock opsional, pilihan mata uang tampilan dengan kurs + referensi tetap, drill-down bulan/hari/jam lengkap, refresh yang mempertahankan + state, grafik aksesibel, serta beban watcher dan indeks judul yang lebih rendah. + Detail per patch hanya disimpan di CHANGELOG dan GitHub Releases. - Catatan penggunaan Codex hanya ditemukan dari `sessions/**/*.jsonl` dan `archived_sessions/**/*.jsonl`; file kredensial, database, dan file tak dikenal tetap dikecualikan. Secara terpisah, ekstensi hanya melakukan streaming terhadap `$CODEX_HOME/session_index.jsonl` untuk memetakan `id` ke `thread_name` bagi judul thread yang sebenarnya. Jalur absolut dalam judul disamarkan dan judul hanya disimpan di memori. Setiap baris JSONL penggunaan di-stream dan diparse sementara hanya untuk mengambil metadata penggunaan dan struktur dalam daftar izin; field prompt, respons, perintah, dan argumen alat tidak diperiksa atau dipakai untuk analisis, serta tidak pernah disimpan atau dipersistenkan. - **Diproses** = input + output, **Penggunaan tanpa cache** = Input tanpa cache + output, **cached input** tetap bagian dari input, dan reasoning bagian dari output. Ringkasan juga menampilkan tingkat hit cache input sebagai cached input / input. Biaya tagihan Codex tidak ditampilkan. Kartu ringkasan pertama menampilkan estimasi biaya ekuivalen API untuk cakupan terpilih dengan label yang jelas, sedangkan tampilan Sepanjang Waktu menunjukkan tren mingguan dengan dasar harga yang sama. Claude / Codex / Compare tetap memisahkan makna tiap penyedia. - **Hari Ini** pada Codex berarti hari kalender saat ini dalam zona waktu yang dikonfigurasi. Tampilan ini menambahkan biaya ekuivalen API per jam yang tepat di samping tampilan komposisi Token yang terpisah. Grafik utama harian dan bulanan juga memakai biaya ekuivalen API sebagai default, sementara komposisi Token tetap tersedia secara terpisah. Hanya harga model yang dikenal dan cocok tepat yang dihitung; model tak dikenal tetap tanpa harga dan cakupan harga selalu terlihat. Sidecar per jam yang bersifat tambahan dan kompatibel dengan schema 3 menyimpan bucket tanggal / jam yang jarang untuk 30 hari bergulir, mendukung checkpoint dan resume, membuang hari ke-31, dan membuka tanggal tanpa membaca JSONL. Grafik dan tabel bulanan Codex menampilkan bulan dari yang paling lama ke yang terbaru. diff --git a/README-ja.md b/README-ja.md index 30c405bf..da1dbbcb 100644 --- a/README-ja.md +++ b/README-ja.md @@ -26,7 +26,7 @@ ![ダッシュボード](images/v2-dashboard-en.png) -### v2.3.1 Codex と比較 +### v2.3 Codex と比較 ![Claude 本日、簡体字中国語、ダークテーマ](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -53,50 +53,13 @@ - **マルチベンダー価格** — Opus 4.x / Sonnet 4.x / Haiku 4.5 は Anthropic 公式価格で検証済み。OpenAI / Gemini / DeepSeek / Kimi / GLM / Qwen の参考価格(ファミリー認識フォールバック付き)。`Refresh Token Pricing` で LiteLLM の最新価格を取得。 - **パーソナライズ** — 言語、タイムゾーン、小数点桁数、コンパクト数値、プロジェクトのグループ化、ダッシュボード自動更新の切り替え。 -## v2.3.2 の新機能 - -- 設定は 1 つの通貨ドロップダウンに整理され、既定値は USD です。ほかの 13 通貨は - 2026-09-09 の ECB 参照レートを固定スナップショットとして使用します。レートは - 編集もオンライン取得もされず、基礎となる見積もりは USD のままです。 -- Claude と Codex の全期間では月 → 日、直近 30 日では既存集計の日 → 時間を - 展開できます。マウス、キーボード、フォーカス、入れ子の折りたたみ、再読み込み後の - 復元が一致し、クリック時に JSONL を読みません。 -- 通常のライブ更新では、タブ、展開階層、選択中の指標/時間、Optimizer の下書き、 - キーボードフォーカス、近くのスクロール位置を保持します。 -- 各グラフには provider を含むローカライズ済みアクセシブル名があります。空の時間も - 軸、表、ツールチップ、選択可能な 0 値は保持しつつ、各棒の上の 0 表示は省略します。 - 実際の利用があり価格不明の場合は引き続き `—` を表示します。 -- provider watcher は上限付きバックオフで復旧し、変更のない Codex スレッドタイトル - 索引は検証済みメモリキャッシュを再利用してバックグラウンド処理を減らします。 - -レビュー済み Release ドラフトは `v2.3.2` です。手動公開ワークフローが、その tag からパッケージ版を設定します。 - -## v2.3.1 の新機能 - -- 正確な料金とコンテキスト情報が **GPT-6 Astra**(`gpt-6-astra`、 - 105 万トークン)および **Claude Fable 5.1 / Mythos 5.1** - (`claude-fable-5-1` / `claude-mythos-5-1`、100 万トークン)に対応しました。 - Fable 5.1 は専用のキャッシュ読み取り料金 `$0.25 / 100 万トークン` を使い、 - 従来の Fable 5 履歴は変更しません。GPT-6 の API 相当額には公式 Standard - の短コンテキスト料金を使用します。ローカル集計ログでは各リクエストが - 272K 入力を超えたか判定できないため、その場合のリクエスト全体への追加料金は - 含めません。 -- Claude の見積もりでは、Anthropic 直接料金または AWS Bedrock の in-region - オンデマンド料金を選択でき、現行の Opus・Sonnet・Haiku 系列を対象にします。 - 切り替えると未変更のログも直ちに再計算され、Sonnet 5 には 2026 年 8 月 31 日の - 開始記念価格終了後の標準料金を使用します。 -- 直近 30 日は設定タイムゾーンの今日と過去 29 日です。合計は照合可能で、再更新は安定し、月は古い順に表示します。Claude の Workflows サマリーも同じローリング範囲を使い、設定タイムゾーンでの開始日に基づいて各実行を集計します。チャート指標の切り替えやドリルダウンラベルの表示でも、日/月の使用量キーがホストのタイムゾーンによって前日・前月へずれることはありません。AI アドバイスと Usage Optimizer の保留期限も、設定タイムゾーンと UI 言語で表示します。 -- 構造化 reasoning effort をモデル名から推測しません。非ゼロの `unknown` は理由を示し、ゼロは表示しません。 -- 上限付き匿名クォータ観測が不規則・同日リセットを保持します。有効な同一ウィンドウの割合から、現在期間を含む総枠と未使用分の耐久性推定を表示します。近似・未帰属は低信頼度です。ローカルの Codex クォータ系列が重複していても、現在期間は最新の実測値による低信頼度の混合推定を表示し、帰属が曖昧な完了期間だけを使用済み表示に留めます。 -- 比較タブは既存の日次集計から Claude + Codex 統合活動ヒートマップを表示し、単一プロバイダーでも機能します。 -- プレビュー優先の共有スタジオは、決定的ローカル SVG、共有カード、Markdown、タイトル/範囲、プライバシープレビュー、調整可能な色に対応します。Academic Violet が既定で、強度マッピングは分位数(既定)、対数、線形から選べます。公開 GitHub 送信は正確な宛先を別途確認します。 -- Codex の Token 構成は、重複しない「非キャッシュ入力 / キャッシュ入力 / 出力」スタックの上に **非キャッシュ使用量**(非キャッシュ入力 + 出力)を明示します。推論は引き続き出力の部分集合です。 -- Codex はインデックス作成中も滑らかにスクロールします。スクロール状態は操作後に一度だけ保存され、ライブ進捗はページ全体を再構築せずテキストだけを更新します。モデル別の緑色サマリーは Claude と同じ意味になり、完全一致モデルの API 等価コストと価格カバレッジを表示します。未知モデルは `—`、effort は中立色の非キャッシュ Token 表示です。 -- OpenAI 互換の Optimizer リクエストは `reasoning_effort` のみを送り、未対応のトップレベル `thinking` を送信しないため、[#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94) を解決します。 -- Claude/Codex は密度、階層、フォーカス、ARIA、狭幅、明暗テーマの token を共有しつつ、指標の意味は分離します。 - -## v2.3 Codex Beta +## v2.3 の新機能 +- **v2.3 系列全体の改善** — GPT-6 Astra と Fable 5.1 のモデル情報、任意の + AWS Bedrock 料金、固定参照レートの表示通貨選択、月・日・時間の完全な + ドリルダウン、状態を保つ更新、アクセシブルなチャート、watcher と + タイトル索引の負荷軽減を追加しました。パッチ単位の詳細は CHANGELOG と + GitHub Releases にのみ掲載します。 - Codex の使用量レコードは `sessions/**/*.jsonl` と `archived_sessions/**/*.jsonl` からだけ検出し、認証情報、DB、未知のファイルは対象外です。これとは別に、`$CODEX_HOME/session_index.jsonl` だけをストリームで読み込み、実際のスレッド名に使う `id` → `thread_name` の対応を取得します。名前に含まれる絶対パスは伏せ、名前はメモリ内だけに保持します。使用量 JSONL の各行は、許可リスト内の使用量・構造メタデータを抽出するためだけにストリーム処理で一時解析します。プロンプト、応答、コマンド、ツール引数の各フィールドは参照も分析利用もせず、保持・永続化もしません。 - **処理済み** = 入力 + 出力、**非キャッシュ使用量** = 非キャッシュ入力 + 出力、**キャッシュ入力**は入力の部分集合、reasoning は出力の部分集合です。概要には「キャッシュ入力 / 入力」による入力キャッシュヒット率も表示します。Codex の請求コストは表示しません。先頭のサマリーカードには選択範囲の API 等価コスト推定を明示し、全期間ビューには同じ単価基準の週間推移を表示します。Claude / Codex / Compare は各プロバイダーの集計方法を分けて扱います。 - Codex の**今日**は、設定したタイムゾーンの現在の暦日です。正確な時間別 API 等価コストを表示し、Token 構成は独立したビューとして残します。日別・月別のメインチャートも API 等価コストを既定表示にし、Token 構成は別に確認できます。正確に一致する既知モデルだけを価格計算に含めるため、未知モデルは価格未設定のままで、価格カバレッジは常に表示されます。schema 3 と互換性のある追加型の時間別 sidecar は、直近 30 日の疎な日付 / 時間バケットを保持し、checkpoint 保存と再開、31 日目の削除に対応します。日付を展開しても JSONL は読みません。Codex の月別チャートと表は古い月から順に表示します。 diff --git a/README-ko.md b/README-ko.md index 5aa5b398..205cbe09 100644 --- a/README-ko.md +++ b/README-ko.md @@ -26,7 +26,7 @@ ![대시보드](images/v2-dashboard-en.png) -### v2.3.1 Codex 및 비교 +### v2.3 Codex 및 비교 ![Claude 오늘, 중국어 간체, 어두운 테마](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -53,50 +53,13 @@ - **멀티 벤더 가격** — Opus 4.x / Sonnet 4.x / Haiku 4.5는 Anthropic 공식 가격으로 검증. OpenAI / Gemini / DeepSeek / Kimi / GLM / Qwen 참고 가격(패밀리 인식 폴백 포함). `Refresh Token Pricing`으로 LiteLLM 최신 가격 가져오기. - **개인화** — 언어, 시간대, 소수 자릿수, 간략 숫자, 프로젝트 그룹화, 대시보드 자동 새로고침 토글. -## v2.3.2 새로운 기능 - -- 설정은 하나의 통화 드롭다운으로 정리되며 기본값은 USD입니다. 다른 13개 표시 통화는 - 2026-09-09 ECB 참조 환율의 고정 스냅샷을 사용합니다. 환율은 편집하거나 온라인으로 - 가져오지 않으며 기반 추정치는 계속 USD로 유지됩니다. -- Claude와 Codex의 전체 기간에서 월 → 일, 최근 30일에서 이미 집계된 일 → 시간 - 드릴다운을 지원합니다. 마우스, 키보드, 포커스, 중첩 접기, 다시 로드한 뒤 복원 동작이 - 일치하며 클릭할 때 JSONL을 읽지 않습니다. -- 일반 실시간 새로고침은 현재 탭, 확장 경로, 선택한 지표/시간, Optimizer 초안, - 키보드 포커스와 가까운 스크롤 위치를 유지합니다. -- 모든 차트는 provider가 포함된 현지화 접근성 이름을 제공합니다. 빈 시간도 축, 표, - 툴팁과 선택 가능한 0 값은 유지하지만 각 막대 위의 0 표시는 생략합니다. 실제 사용량의 - 가격을 알 수 없을 때는 계속 `—`를 표시합니다. -- provider watcher는 제한된 백오프로 복구하며, 변경되지 않은 Codex 스레드 제목 인덱스는 - 검증된 메모리 캐시를 재사용해 백그라운드 작업을 줄입니다. - -검토된 Release 초안은 `v2.3.2`이며, 수동 게시 워크플로가 해당 tag에서 패키지 버전을 설정합니다. - -## v2.3.1 새로운 기능 - -- 정확한 가격 및 컨텍스트 메타데이터가 **GPT-6 Astra**(`gpt-6-astra`, - 105만 토큰)와 **Claude Fable 5.1 / Mythos 5.1** - (`claude-fable-5-1` / `claude-mythos-5-1`, 100만 토큰)을 지원합니다. - Fable 5.1은 전용 캐시 읽기 요금인 `$0.25 / 백만 토큰`을 사용하며 기존 - Fable 5 기록은 바꾸지 않습니다. GPT-6 API 등가액은 공식 Standard 단기 - 컨텍스트 요금을 사용합니다. 로컬 집계 로그로는 개별 요청이 272K 입력을 - 넘었는지 확인할 수 없으므로 해당 요청 전체에 적용되는 추가 요금은 포함하지 - 않습니다. -- Claude 추정치는 Anthropic 직접 요금 또는 AWS Bedrock in-region 온디맨드 요금을 - 선택해 현재 Opus·Sonnet·Haiku 계열에 적용할 수 있습니다. 백엔드를 바꾸면 변경되지 - 않은 로그도 즉시 다시 계산하며, Sonnet 5에는 2026년 8월 31일 출시 프로모션 종료 - 이후의 표준 요금을 사용합니다. -- 최근 30일은 설정 시간대의 오늘과 이전 29일입니다. 합계가 대조되고 반복 새로고침이 안정적이며 월은 오래된 순서로 표시됩니다. Claude Workflows 요약도 같은 롤링 범위를 사용하고 설정 시간대의 시작일에 따라 각 실행을 집계합니다. 차트 지표를 전환하거나 드릴다운 레이블을 표시할 때도 일/월 사용량 키가 호스트 시간대 때문에 전날이나 전월로 밀리지 않습니다. AI 조언과 Usage Optimizer의 일시 중지 만료일도 설정 시간대와 UI 언어로 표시합니다. -- 구조화 reasoning effort를 모델 이름에서 추측하지 않습니다. 0이 아닌 `unknown`은 이유를 설명하고 0은 숨깁니다. -- 제한된 익명 쿼터 관측이 불규칙·당일 재설정을 보존합니다. 같은 창의 유효 비율로 현재 기간을 포함한 총한도와 미사용 내구성 추정치를 표시합니다. 근사·미귀속 증거는 낮은 신뢰도로 표시합니다. 로컬 Codex 쿼터 계열이 겹쳐도 현재 기간은 마지막 실제 관측으로 신뢰도 낮은 혼합 추정을 표시하고, 귀속이 모호한 완료 기간만 사용분 전용으로 유지합니다. -- 비교 탭은 기존 일별 집계로 Claude + Codex 통합 활동 히트맵을 표시하며 단일 공급자에서도 작동합니다. -- 미리보기 중심 공유 스튜디오는 결정적 로컬 SVG, 공유 카드, Markdown, 제목/기간, 개인정보 미리보기와 조절 가능한 색상을 지원합니다. Academic Violet이 기본이며 강도 매핑은 분위수(기본), 로그, 선형 중에서 선택할 수 있습니다. 공개 GitHub 전송은 정확한 대상을 별도로 확인합니다. -- Codex Token 구성은 겹치지 않는 「캐시되지 않은 입력 / 캐시 입력 / 출력」스택 위에 **캐시되지 않은 사용량**(캐시되지 않은 입력 + 출력)을 명확히 표시합니다. 추론은 계속 출력의 부분집합입니다. -- Codex는 인덱싱 중에도 부드럽게 스크롤됩니다. 스크롤 상태는 동작이 끝난 뒤 한 번만 저장되고 실시간 인덱스 진행률은 페이지 전체를 다시 만들지 않고 텍스트만 갱신합니다. 모델별 녹색 요약은 Claude와 같은 의미로 정확히 일치하는 모델의 API 등가 비용과 가격 적용 범위를 표시합니다. 알 수 없는 모델은 `—`, effort는 중립색의 캐시되지 않은 Token 값으로 유지합니다. -- OpenAI 호환 Optimizer 요청은 `reasoning_effort`만 보내고 지원되지 않는 최상위 `thinking`을 보내지 않아 [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94)를 해결합니다. -- Claude/Codex는 밀도, 계층, 포커스, ARIA, 좁은 폭, 밝고 어두운 테마 token을 공유하되 지표 의미는 분리합니다. - -## v2.3 Codex Beta +## v2.3 새로운 기능 +- **v2.3 계열 전반의 개선** — GPT-6 Astra와 Fable 5.1 모델 메타데이터, + 선택형 AWS Bedrock 가격, 고정 기준 환율 표시 통화 선택, 월/일/시간 전체 + 드릴다운, 상태를 보존하는 새로 고침, 접근성 차트, watcher 및 제목 인덱스 + 부하 절감을 추가했습니다. 패치별 상세 내용은 CHANGELOG와 GitHub Releases에만 + 유지합니다. - Codex 사용량 레코드는 `sessions/**/*.jsonl`과 `archived_sessions/**/*.jsonl`에서만 찾으며 자격 증명, DB, 알 수 없는 파일은 제외합니다. 별도로 `$CODEX_HOME/session_index.jsonl` 하나만 정확히 스트리밍해 실제 스레드 제목에 사용할 `id` → `thread_name` 매핑을 가져옵니다. 제목 속 절대 경로는 가리고 제목은 메모리에만 유지합니다. 사용량 JSONL 각 줄은 허용 목록의 사용량·구조 메타데이터를 추출하기 위해서만 스트리밍 방식으로 일시 파싱합니다. 프롬프트, 응답, 명령, 도구 인수 필드는 검사하거나 분석에 사용하지 않으며 보관·영구 저장하지 않습니다. - **처리된** 값 = 입력 + 출력, **캐시되지 않은 사용량** = 캐시되지 않은 입력 + 출력, **캐시 입력**은 입력의 부분집합, reasoning은 출력의 부분집합입니다. 개요에는 캐시 입력 / 입력으로 계산한 입력 캐시 적중률도 표시합니다. Codex 청구 비용은 표시하지 않습니다. 첫 요약 카드에는 선택 범위의 API 등가 비용 추정치를 명확히 표시하고, 전체 기간 보기에는 같은 가격 기준의 주간 추이를 표시합니다. Claude / Codex / Compare는 공급자별 집계 의미를 분리합니다. - Codex의 **오늘**은 설정한 시간대의 현재 달력 날짜를 뜻합니다. 정확한 시간별 API 등가 비용을 표시하고 Token 구성은 별도 보기로 유지합니다. 일별·월별 기본 차트도 API 등가 비용을 기본값으로 사용하며 Token 구성은 따로 볼 수 있습니다. 정확히 일치하는 알려진 모델만 가격 계산에 포함하므로 알 수 없는 모델은 가격을 매기지 않고 가격 적용 범위는 계속 표시합니다. schema 3과 호환되는 추가형 시간별 sidecar는 최근 30일의 희소한 날짜 / 시간 버킷을 보관하고 checkpoint 저장과 재개, 31일째 제거를 지원하며 날짜를 펼칠 때 JSONL을 읽지 않습니다. Codex 월별 차트와 표는 오래된 달부터 표시합니다. diff --git a/README-zh-CN.md b/README-zh-CN.md index 0a48c81a..8148d7d7 100644 --- a/README-zh-CN.md +++ b/README-zh-CN.md @@ -35,7 +35,7 @@ *点击状态栏打开完整仪表板:堆叠 token 构成图、小时分布、缓存命中率、按 token 类型的成本构成,以及下方的按模型 / 按日表格。* -### v2.3.1 Codex 与对比 +### v2.3 Codex 与对比 ![Claude 今日,简体中文深色主题](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -45,7 +45,7 @@ ![Claude 与 Codex 综合热力图,英文浅色主题](images/v2.3.1/compare-heatmap-en-light.png) -以上四张 v2.3.1 截图使用生产仪表板渲染器、合成夹具及 VS Code Light+/Dark+ 主题变量生成,不是个人用量或账单证据;原生 VSIX 安装单独验收。 +以上四张 v2.3 截图使用生产仪表板渲染器、合成夹具及 VS Code Light+/Dark+ 主题变量生成,不是个人用量或账单证据;原生 VSIX 安装单独验收。 - Codex 主状态项显示**今日已用 token**,周额度项显示**余量**:已用 36% 时为 `wk 64%`;悬浮卡保留已用进度条、重置时间和分行说明。额度来自本地最后观测,不是实时余额。 - 周期详情默认折叠;分享设置位于图下方。分享工作台默认开启、可关闭;色阶可选分位数、对数或线性。 @@ -73,46 +73,12 @@ AI 个性化仍为可选项。自备 `advice.apiKey` 后,默认请求只含聚 --- -## v2.3.2 新功能 - -- 设置现收敛为一个币种下拉栏,默认 USD;另有 13 种常用显示币种,采用固定的 - 2026-09-09 ECB 参考汇率快照。汇率不允许手填、不会联网获取,底层估算仍为 USD。 -- Claude 与 Codex 的全部时间均支持“月 → 日”,最近 30 天均支持已有聚合的 - “日 → 小时”;鼠标、键盘、焦点、嵌套收起和重载恢复行为一致,点击不读取 JSONL。 -- 普通实时刷新会保留当前标签、展开链、所选指标/小时、优化器草稿、键盘焦点和 - 附近滚动位置。 -- 每张图都有包含 provider 的本地化无障碍名称。空小时仍保留坐标、表格、提示与 - 可选中的 0 值,但不再在每根空柱上方重复标 0;真实未定价活动仍显示 `—`。 -- provider watcher 使用有界退避恢复;未变化的 Codex 线程标题索引使用经验证的 - 内存缓存,减少后台工作。 - -已审阅的 Release 草稿为 `v2.3.2`;人工发布工作流会从该 tag 写入包版本。 - -## v2.3.1 新功能 - -- 精确定价与上下文元数据现已覆盖 **GPT-6 Astra**(`gpt-6-astra`,105 万 - token 上下文)以及 **Claude Fable 5.1 / Mythos 5.1** - (`claude-fable-5-1` / `claude-mythos-5-1`,100 万 token 上下文)。 - Fable 5.1 使用其专属的 `$0.25 / 百万 token` 缓存读取价,既有 Fable 5 - 历史数据不变。GPT-6 的 API 等效值采用官方 Standard 短上下文费率;由于 - 本地聚合日志无法判定单次请求是否超过 272K 输入,因此不计入该阈值以上的 - 整个请求附加价。 -- Claude 估算可选用 Anthropic 直连或 AWS Bedrock in-region 按需费率,覆盖当前 - Opus、Sonnet 与 Haiku 系列;切换后端会立即按新费率重算未变化的本地日志。 - Sonnet 5 使用 2026 年 8 月 31 日上线促销结束后的标准费率。 -- 最近 30 天严格定义为配置时区中的今天及此前 29 个自然日;满足「今天 ≤ 最近 30 天 ≤ 全部时间」,重复刷新/重建不累加,所有分组可核对,月份从旧到新显示。Claude 的工作流摘要使用同一滚动范围,并按配置时区中的开始日期归入周期。切换图表指标或渲染下钻标签时,日/月用量键不会再受宿主时区影响而回退一天或一个月;AI 建议和用量优化器的暂停截止日期也统一使用配置时区与界面语言。 -- 兼容当前和旧版结构化 reasoning effort,不根据模型名猜测;非零 `unknown` 会解释原因,零值不会渲染。 -- 有界匿名额度观测可保留不规则、连续乃至同日重置。每个同窗有效已用比例都参与总额度和未用耐用度估算(包括当前周期);近似或未归属证据标为低可信度。即使本地 Codex 额度系列重叠,当前周期仍采用最后一次真实观测给出低可信度混合估算;归属不清的已结束周期保持仅已用值。未用估算不会为负。 -- 「对比」默认展示 Claude + Codex 综合活动热力图,直接复用日聚合、支持任一单供应商,并在 tooltip 中分别显示两侧数据。 -- 预览优先的分享工作台包含确定性本地 SVG、综合分享卡、可复制 Markdown、自定义标题/范围、隐私预览和可调配色。工作台默认开启,可在设置中用一个开关整体隐藏。默认采用 Academic Violet;色阶映射可选分位数(默认)、对数或线性;可选的公开 GitHub 发布需要另行确认精确目标。 -- Codex Token 构成现在会在互不重叠的「未缓存输入 / 缓存输入 / 输出」堆叠上方明确显示 **未缓存用量**(未缓存输入 + 输出);推理仍是输出的子集。 -- Codex 在索引期间也能顺畅滚动:滚动状态改为操作结束后只保存一次,实时索引进度只更新文字,不再重建整页。分模型折叠项的绿色摘要现在与 Claude 一致,显示精确模型的 API 等效价格并附定价覆盖说明;未知模型显示 `—`,推理强度仍以中性色显示未缓存 Token。 -- OpenAI 兼容的优化器请求现在只发送 `reasoning_effort`,不再附带不受支持的顶层 `thinking` 参数,解决 [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94)。 -- Claude/Codex 共用卡片密度、层级、折叠、焦点、ARIA、窄宽度和深浅主题 token,同时保持各供应商指标含义独立。 -- AI 建议与用量优化器共用精确预览和明确发送边界;没有默认/后台 AI 请求,本地证据与反馈保持有界。 - -## 2.3 Codex Beta +## 2.3 新功能 +- **2.3 系列持续完善**——新增 GPT-6 Astra、Fable 5.1 模型元数据与可选 + AWS Bedrock 定价,提供固定参考汇率币种选择、完整的月/日/小时下钻、 + 保留界面状态的刷新、无障碍图表,以及更低的 watcher/标题索引开销。 + 逐补丁明细只保留在 CHANGELOG 与 GitHub Releases。 - Codex 用量记录只会从 `sessions/**/*.jsonl` 与 `archived_sessions/**/*.jsonl` 中发现;凭据、数据库和未知文件仍明确排除。此外,插件会精确流式读取 `$CODEX_HOME/session_index.jsonl`,仅将 `id` 映射为 `thread_name`,用于真实线程标题。标题中的绝对路径会先脱敏,标题只保留在内存。用量 JSONL 会逐行流式、临时解析,以提取白名单内的用量与结构元数据;提示词、回复、命令和工具参数字段不会被检查或用于分析,也不会被保留或持久化。 - **已处理** = 输入 + 输出;**未缓存用量** = 未缓存输入 + 输出;**缓存输入**仍是输入的子集,reasoning 仍是输出的子集。概览还会按「缓存输入 / 输入」显示输入缓存命中率。Codex 不显示账单成本;首张汇总卡会针对当前范围显示明确标注的 API 等效成本估算,「全部时间」则按同一定价口径展示每周趋势。Claude / Codex / Compare 仍保持各供应商口径独立。 - Codex 的**今天**指配置时区中的当前自然日。页面会显示精确的小时 API 等效成本,并把 Token 构成作为独立视图;每日与每月主图也默认显示 API 等效成本,Token 构成仍单独保留。只有精确匹配的已知模型才参与计价,未知模型保持未定价,定价覆盖率始终可见。这个兼容 schema 3 的增量小时 sidecar 保存滚动最近 30 天的稀疏日期 / 小时桶,支持检查点与续传、淘汰第 31 天,并在展开日期时不读取 JSONL。Codex 按月图表和表格按月份从旧到新显示。 @@ -154,7 +120,7 @@ AI 个性化仍为可选项。自备 `advice.apiKey` 后,默认请求只含聚 实际返回的受限模型名称,例如 `fable 17%`;由 PR #38 ([@wheelbarrel00](https://github.com/wheelbarrel00))最初的 模型专属额度功能演进而来。 -- **AI 建议 2.0 的兼容基础**:继续支持自备 key 的 Anthropic(`/v1/messages`)与 OpenAI 兼容端点(`advice.apiFormat`)、超时、重试和 curl 兜底;v2.3.1 将旧入口收敛到统一的本地证据、完整请求预览、明确发送和反馈边界。订阅凭据从不用于模型请求。 +- **AI 建议 2.0 的兼容基础**:继续支持自备 key 的 Anthropic(`/v1/messages`)与 OpenAI 兼容端点(`advice.apiFormat`)、超时、重试和 curl 兜底;2.3 系列将旧入口收敛到统一的本地证据、完整请求预览、明确发送和反馈边界。订阅凭据从不用于模型请求。 - **用量优化器**(实验性,`advice.optimizer.enabled`,默认关闭):Content 标签页的一张卡,粘贴进粗略需求,返回一条精炼提示词,以**纯文本**形式(可直接粘贴、无 Markdown),并附推荐的 effort / thinking / 模型。三个可选微调项(标出含糊指代 · 压缩长粘贴内容 · 建议风格方向)。先生成包含所粘贴文字的精确请求预览;只有随后明确点击发送才会访问配置的 BYOK endpoint。 - **上下文窗口指示器**(实验性,默认关闭):在设置里开启后,状态栏显示当前 session 的上下文占用。`~` 表示窗口大小是猜测;代理 / 自定义模型可用 `contextWindowOverride` 手填真实窗口。 diff --git a/README-zh-TW.md b/README-zh-TW.md index b8db1926..be93b864 100644 --- a/README-zh-TW.md +++ b/README-zh-TW.md @@ -26,7 +26,7 @@ ![儀表板](images/v2-dashboard-en.png) -### v2.3.1 Codex 與比較 +### v2.3 Codex 與比較 ![Claude 今日,簡體中文深色主題](images/v2.3.1/claude-today-zh-CN-dark.png) @@ -36,7 +36,7 @@ ![Claude 與 Codex 綜合熱力圖,英文淺色主題](images/v2.3.1/compare-heatmap-en-light.png) -以上四張 v2.3.1 影像使用正式儀表板渲染器、合成資料與 VS Code Light+/Dark+ 主題變數產生,不是個人用量或帳單證據;原生 VSIX 安裝另行驗證。 +以上四張 v2.3 影像使用正式儀表板渲染器、合成資料與 VS Code Light+/Dark+ 主題變數產生,不是個人用量或帳單證據;原生 VSIX 安裝另行驗證。 - Codex 狀態列分別顯示**今日已用 token**和**剩餘額度**:已用 36% 時顯示 `wk 64%`。提示卡保留使用進度條、重置時間與換行說明;額度是本地最後觀測,不是即時餘額。 - 週期明細預設收合,分享設定位於預覽下方。分享工作台預設開啟、可關閉;色階可選分位數、對數或線性。 @@ -53,45 +53,12 @@ - **多廠商定價** — Opus 4.x / Sonnet 4.x / Haiku 4.5 對照 Anthropic 官方定價;OpenAI / Gemini / DeepSeek / Kimi / GLM / Qwen 參考價,含家族感知回退。`Refresh Token Pricing` 可拉取 LiteLLM 即時價格。 - **個人化** — 語言、時區、小數位數、精簡數字、專案分組、儀表板自動刷新開關。 -## v2.3.2 新功能 - -- 設定現收斂為一個幣別下拉選單,預設 USD;另有 13 種常用顯示幣別,採用固定的 - 2026-09-09 ECB 參考匯率快照。匯率不可手動調整、不會連線取得,底層估算仍為 USD。 -- Claude 與 Codex 的全部時間均支援「月 → 日」,最近 30 天均支援已有彙總的 - 「日 → 小時」;滑鼠、鍵盤、焦點、巢狀收合與重新載入還原行為一致,點擊不讀取 JSONL。 -- 一般即時重新整理會保留目前分頁、展開鏈、所選指標/小時、最佳化器草稿、 - 鍵盤焦點與附近捲動位置。 -- 每張圖都有包含 provider 的本地化無障礙名稱。空白小時仍保留座標、表格、提示與 - 可選取的 0 值,但不再在每根空柱上方重複標示 0;真正無法定價的活動仍顯示 `—`。 -- provider watcher 採用有界退避恢復;未變更的 Codex 執行緒標題索引使用經驗證的 - 記憶體快取,減少背景工作。 - -已審閱的 Release 草稿為 `v2.3.2`;人工發佈工作流程會從該 tag 寫入套件版本。 - -## v2.3.1 新功能 - -- 精確定價與上下文中繼資料現已涵蓋 **GPT-6 Astra**(`gpt-6-astra`,105 萬 - token 上下文)以及 **Claude Fable 5.1 / Mythos 5.1** - (`claude-fable-5-1` / `claude-mythos-5-1`,100 萬 token 上下文)。 - Fable 5.1 採用專屬的 `$0.25 / 百萬 token` 快取讀取價,既有 Fable 5 - 歷史資料不變。GPT-6 的 API 等效值採用官方 Standard 短上下文費率;由於 - 本機彙總日誌無法判定單次請求是否超過 272K 輸入,因此不計入該門檻以上的 - 整個請求附加價。 -- Claude 估算可選用 Anthropic 直連或 AWS Bedrock in-region 隨選費率,涵蓋目前 - Opus、Sonnet 與 Haiku 系列;切換後端會立即按新費率重算未變更的本機日誌。 - Sonnet 5 使用 2026 年 8 月 31 日上市優惠結束後的標準費率。 -- 最近 30 天是設定時區中的今天與前 29 個日期;總計可核對、重複重新整理穩定,月份由舊到新。Claude 的工作流程摘要使用同一滾動範圍,並依設定時區中的開始日期歸入週期。切換圖表指標或呈現下鑽標籤時,日/月用量鍵不會再受宿主時區影響而倒退一天或一個月;AI 建議與用量最佳化器的暫停截止日期也統一使用設定時區與介面語言。 -- 結構化 reasoning effort 不依模型名稱猜測;非零 `unknown` 會解釋,零值不顯示。 -- 有界匿名額度觀測保留不規則及同日重設;有效同窗比例可估算總額度與未用耐用度(包括目前週期)。近似或未歸屬證據標為低可信度。即使本機 Codex 額度系列重疊,目前週期仍採用最後一次真實觀測提供低可信度混合估算;歸屬不清的已結束週期維持僅已用值。 -- 「比較」預設顯示 Claude + Codex 綜合活動熱力圖,沿用日聚合,也支援單一供應商。 -- 預覽優先的分享工作台可匯出確定性本機 SVG、分享卡與 Markdown,並自訂標題/範圍、預覽隱私及調整配色。工作台預設開啟,可在設定用一個開關整體隱藏。預設 Academic Violet;色階映射可選分位數(預設)、對數或線性;GitHub 公開發佈另行確認精確目標。 -- Codex Token 構成現在會在互不重疊的「未快取輸入 / 快取輸入 / 輸出」堆疊上方明確顯示 **未快取用量**(未快取輸入 + 輸出);推理仍是輸出的子集。 -- Codex 在索引期間也能順暢捲動:捲動狀態改為操作結束後只儲存一次,即時索引進度只更新文字,不再重建整頁。各模型折疊項的綠色摘要現在與 Claude 一致,顯示精確模型的 API 等效價格並附定價涵蓋說明;未知模型顯示 `—`,推理強度仍以中性色顯示未快取 Token。 -- OpenAI 相容的最佳化器請求現在只傳送 `reasoning_effort`,不再附帶不受支援的頂層 `thinking` 參數,解決 [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94)。 -- Claude/Codex 共用密度、層級、焦點、ARIA、窄幅與深淺色設計 token,但不混淆指標語義。 - -## v2.3 Codex Beta +## v2.3 新功能 +- **v2.3 系列持續完善**——新增 GPT-6 Astra、Fable 5.1 模型中繼資料與 + 可選 AWS Bedrock 定價,提供固定參考匯率幣別選擇、完整的月/日/小時 + 下鑽、保留介面狀態的重新整理、無障礙圖表,以及更低的 watcher/標題 + 索引開銷。逐修補版本明細只保留在 CHANGELOG 與 GitHub Releases。 - Codex 用量記錄只會從 `sessions/**/*.jsonl` 與 `archived_sessions/**/*.jsonl` 中發現;憑證、資料庫與未知檔案仍明確排除。此外,擴充功能會精確串流讀取 `$CODEX_HOME/session_index.jsonl`,僅將 `id` 對應到 `thread_name`,用於真實執行緒標題。標題中的絕對路徑會先去識別化,標題只保留在記憶體。用量 JSONL 會逐行串流並暫時解析,以擷取白名單內的用量與結構中繼資料;提示、回覆、命令和工具參數欄位不會被檢查或用於分析,也不會被保留或持久化。 - **已處理** = 輸入 + 輸出;**未快取用量** = 未快取輸入 + 輸出;**快取輸入**仍是輸入的子集,reasoning 仍是輸出的子集。概覽也會依「快取輸入 / 輸入」顯示輸入快取命中率。Codex 不顯示帳單成本;首張摘要卡會針對目前範圍顯示明確標示的 API 等效成本估算,「全部時間」則依同一定價口徑顯示每週趨勢。Claude / Codex / Compare 仍維持各供應商口徑獨立。 - Codex 的**今天**指設定時區中的目前自然日。頁面會顯示精確的每小時 API 等效成本,並將 Token 構成保留為獨立檢視;每日與每月主圖也預設顯示 API 等效成本,Token 構成仍分開呈現。只有精確符合的已知模型才參與計價,未知模型維持未定價,定價涵蓋率始終可見。這個相容 schema 3 的增量小時 sidecar 會保留最近 30 天的稀疏日期 / 小時分桶,支援檢查點與續傳、淘汰第 31 天,並在展開日期時不讀取 JSONL。Codex 按月圖表與表格會按月份由舊到新顯示。 diff --git a/README.md b/README.md index fd56ab10..028d7a1c 100644 --- a/README.md +++ b/README.md @@ -43,9 +43,9 @@ the same data. ## Screenshots -### v2.3.1 Claude, Codex and Compare +### v2.3 Claude, Codex and Compare -The four v2.3.1 images below are reproducible captures of the production dashboard +The four v2.3 images below are reproducible captures of the production dashboard renderer with synthetic fixtures and VS Code Light+/Dark+ theme variables, not personal usage or billing evidence. Native VSIX installation is verified separately. @@ -113,7 +113,7 @@ for optimising your usage. Scoped to the last 30 days ### AI advice — evidence first, sending optional -v2.3.1 keeps one readable path from a local observation to its +v2.3 keeps one readable path from a local observation to its evidence, recommendation, action, feedback, and guarded result. It is off by default. Local evidence appears before any model is involved; **Helpful**, **Not helpful**, and **Applied** stay on this device. Once enough reliable, similar @@ -154,113 +154,13 @@ same full-request preview and separate explicit Send action as AI advice. --- -## What's new in v2.3.2 - -- **One currency control** — Settings now offers one curated currency dropdown, - defaulting to USD. Thirteen additional display currencies use a bundled, - fixed 2026-09-09 ECB-derived snapshot; there is no editable multiplier or - exchange-rate network request. Source estimates remain USD and converted - values are visibly approximate. -- **Complete time drill-down** — Claude and Codex All time month bars expand to - days, and populated Last 30 days bars expand to materialized hours. Mouse and - keyboard paths share disclosure state, focus, nested collapse, and reload - restoration, with no JSONL read on click. -- **Refresh without losing your place** — normal live updates preserve the - active tab, expansion chain, selected metric/hour, draft Optimizer text, - keyboard focus, and nearby scroll anchor. -- **Clearer, accessible charts** — every chart has a provider-qualified, - localized accessible name. Empty hours keep their axis, table, tooltip, and - selectable zero value without repeating `0` above every bar; genuinely - unpriced activity still shows `—`. -- **Lower background overhead** — provider watchers recover with bounded - backoff, while unchanged Codex thread-title indexes are reused from a - validated in-memory cache. - -The reviewed draft is `v2.3.2`; the human-controlled publish workflow stamps -package metadata from that release tag. - -## What's new in v2.3.1 - -- **GPT-6 Astra and Fable 5.1 support** — exact pricing and context metadata now - cover `gpt-6-astra` (1.05M context) and `claude-fable-5-1` / - `claude-mythos-5-1` (1M context). Fable 5.1 uses its model-specific - `$0.25 / MTok` cache-read rate without changing historical Fable 5 data. - GPT-6 API-equivalent values use official Standard short-context rates; the - request-wide surcharge above 272K input is excluded because aggregate local - logs cannot establish that per-request threshold. -- **Optional AWS Bedrock pricing** — Claude estimates can use direct Anthropic - or AWS Bedrock in-region on-demand rates for current Opus, Sonnet, and Haiku - families. Switching the backend reprices unchanged logs immediately; Sonnet - 5 uses the standard rate after its launch promotion ended on 31 August 2026. -- **Correct, stable date ranges** — Last 30 days means today plus the preceding - 29 calendar dates in the configured timezone. Today ≤ Last 30 days ≤ All time, - provider totals reconcile, repeated refresh/reindex is idempotent, and Codex - monthly charts/tables run oldest-first. Claude's Workflows summary uses that - same rolling range and assigns each run by its configured-zone start date. - Chart metric switches and drill-down labels render daily/monthly usage keys - without host-timezone rollback; Advice and Optimizer snooze dates also use - the configured timezone and UI locale. -- **Truthful effort attribution** — legacy and current structured effort fields - normalize without guessing from model names. A non-zero `unknown` bucket is - explained; a zero bucket is not rendered. -- **Reset-aware weekly estimates** — bounded, atomically written quota - observations preserve reset-time/window changes and significant usage drops, - including consecutive and same-day resets. Every valid same-window used - fraction contributes an observed full-allowance estimate. Coherent current and - completed windows show total and unused durability estimates; approximate or - unattributed evidence is labelled low confidence. If local Codex series - overlap, the current window uses the latest real observation for a labelled - low-confidence blended estimate; ambiguous completed windows remain - usage-only. Unused value never goes negative. -- **Combined heatmap in Compare** — Claude and Codex daily processed volume is - merged with provider components visible in every tooltip. It works with both - providers or either provider alone and reuses existing aggregates instead of - scanning logs again. -- **Private share loop** — use the preview-first studio to customize title, - 30/90-day or yearly range, and heatmap colors. Academic Violet is the default; - choose quantile (default), logarithmic, or linear intensity mapping to suit - the activity distribution. Inspect the privacy preview, export deterministic - SVG, and copy a Markdown snippet. Optional public-GitHub publication is a - separate exact-destination confirmation; local export needs no account - permission. -- **Explicit Codex uncached composition** — Token composition shows uncached - usage (uncached input + output) above the non-overlapping uncached-input / - cached-input / output stack; reasoning remains a subset of output. -- **Smooth live Codex dashboard** — scroll state is saved once after a gesture, - and active index progress updates its text in place instead of rebuilding the - page. Per-model disclosure headlines now use Claude's green-money convention: - exact-model API-equivalent price with coverage help; unknown models show `—`, - while effort headlines keep neutral uncached-token values. -- **OpenAI reasoning compatibility** — OpenAI-compatible optimizer requests - send `reasoning_effort` without the unsupported top-level `thinking` - parameter, resolving [#94](https://github.com/ClaudeCodeUsage/ClaudeCodeUsage/issues/94). -- **Aligned dashboard interaction** — shared density, headings, disclosures, - charts, empty states, keyboard focus, ARIA behavior, narrow layout, and - light/dark design tokens keep Claude and Codex consistent without claiming - their metrics are semantically equivalent. -- **One advice loop** — local evidence, explainable recommendations, optional - exact BYOK preview/send, device-local feedback, and versioned comparable-task - results share one boundary. Get AI Advice opens this surface; the Optimizer - reuses its preview/send/cancel/strict-parse behavior instead of forming a - third network path. -- **No automatic AI traffic** — the feature is off by default, aggregate consent - and prompt-personalisation consent are separate, and a request crosses the - network only after the user previews it and clicks Send. - Withdrawing advice consent immediately invalidates previews and cancels active - advice requests; it cannot recall bytes already transmitted. -- **Resumable first-use work** — Codex history and the rolling 30-day hour - migration show why they are running, persist progress/failure/backoff state, - and do not restart equivalent work after completion or on every refresh. -- **Thirty-day hour drill-down** — any populated Codex day in the last 30 days - expands from the existing index with zero JSONL reads on click. Claude and - Codex use the configured timezone and the same `HH:00` labels. -- **Safe rolling totals and resumable indexing** — recent 7/30-day views reject - stale/inflated period projections and use verified daily aggregates until the - zone projection catches up. First-use work persists bounded progress and does - not hot-loop or repeat after completion. - ## What's new in 2.3 +- **Refined throughout the v2.3 line** — GPT-6 Astra and Fable 5.1 model + metadata, optional AWS Bedrock pricing, a fixed-reference display-currency + selector, complete month/day/hour drill-downs, state-preserving refresh, + accessible charts, and lower watcher/title-index overhead. Patch-level + details stay in the changelog and GitHub Releases. - **Codex Beta, enabled by default** — usage records are discovered only from `sessions/**/*.jsonl` and `archived_sessions/**/*.jsonl`; credential, database, and unknown files stay excluded. Separately, the extension streams @@ -448,7 +348,7 @@ package metadata from that release tag. original model-specific contribution in PR #38 by [@wheelbarrel00](https://github.com/wheelbarrel00). - **AI advice 2.0** — bring your own key for Anthropic or an OpenAI-compatible - endpoint (`advice.apiFormat`). v2.3.1 places local evidence and an exact full- + endpoint (`advice.apiFormat`). The v2.3 line places local evidence and an exact full- request preview before the separate Send action. Aggregate-only is the default; prompt samples and `advice.userContext` require independent prompt- personalisation consent and appear verbatim in the preview. The keyless