aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-12-22 02:35:41 +0900
committernsfisis <nsfisis@gmail.com>2025-12-22 02:35:41 +0900
commit377dfb7bc4bf19fabdc5db803c566373d7a8c972 (patch)
tree53caf4a770b02f1e4cd1dd1b79bfc7099d197c38
parent825d3eddaf5ffe3b0245b4bce0c0d04179d98a1f (diff)
downloaddotfiles-377dfb7bc4bf19fabdc5db803c566373d7a8c972.tar.gz
dotfiles-377dfb7bc4bf19fabdc5db803c566373d7a8c972.tar.zst
dotfiles-377dfb7bc4bf19fabdc5db803c566373d7a8c972.zip
claude: refactor __claude-code-statusline to use .context_window.current_usage
-rwxr-xr-xbin/__claude-code-statusline17
1 files changed, 6 insertions, 11 deletions
diff --git a/bin/__claude-code-statusline b/bin/__claude-code-statusline
index 42fe3bc..d12d5d0 100755
--- a/bin/__claude-code-statusline
+++ b/bin/__claude-code-statusline
@@ -4,19 +4,14 @@
input="$(cat)"
-transcript_path="$(echo "$input" | jq -r '.transcript_path')"
cwd="$(echo "$input" | jq -r '.cwd')"
model="$(echo "$input" | jq -r '.model.display_name')"
+# Sum consumed token counts and format it like "12.3k".
+consumed_tokens="$(echo "$input" | jq -r '
+ (.context_window.current_usage // {}) |
+ (.input_tokens // 0) + (.cache_creation_input_tokens // 0) + (.cache_read_input_tokens // 0) |
+ [. * 10 / 1000, 0] | max | floor / 10 | " \(.)k"
+')"
cost="$(echo "$input" | jq -r '.cost.total_cost_usd // 0 | . * 100 | floor / 100 | " ($\(.))"')"
-if [[ -n "$transcript_path" && -f "$transcript_path" ]]; then
- # Sum consumed token counts and format it like "12.3k".
- consumed_tokens="$(jq -s -r '
- map(.message.usage // empty) |
- last |
- (.input_tokens // 0) + (.output_tokens // 0) + (.cache_creation_input_tokens // 0) + (.cache_read_input_tokens // 0) |
- [. * 10 / 1000, 1] | max | floor / 10 | " \(.)k"
- ' < "$transcript_path")"
-fi
-
echo "[$model]$consumed_tokens$cost ${cwd/#$HOME/\~}"