aboutsummaryrefslogtreecommitdiffhomepage
path: root/bin/__claude-code-statusline
blob: 4e1efaa2424b3156d9c31d3353876dda94e331e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/usr/bin/env bash

# https://docs.anthropic.com/en/docs/claude-code/statusline

input="$(cat)"
transcript_path="$(echo "$input" | jq -r '.transcript_path')"
cwd="$(echo "$input" | jq -r '.cwd')"
model="$(echo "$input" | jq -r '.model.display_name')"

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 ${cwd/#$HOME/\~}"