Compare commits

...

5 Commits

8 changed files with 65 additions and 8 deletions

1
.gitignore vendored
View File

@@ -122,3 +122,4 @@ mako/*
claude/* claude/*
!claude/CLAUDE.md !claude/CLAUDE.md
!claude/settings.json !claude/settings.json
!claude/statusline-command.sh

View File

@@ -16,7 +16,7 @@ Rules:
- keyword comments must include attribution `(@janezicmatej)` - keyword comments must include attribution `(@janezicmatej)`
## Git ## Git
- all git work MUST happen in sub-agents with `isolation: "worktree"` - commit only when asked or when delegating to agents
- agents MUST commit with `--no-gpg-sign` - agents MUST commit with `--no-gpg-sign`
## Workflow ## Workflow

View File

@@ -7,8 +7,12 @@
] ]
}, },
"hooks": {}, "hooks": {},
"voiceEnabled": true, "statusLine": {
"type": "command",
"command": "sh \"${CLAUDE_CONFIG_DIR:-$HOME/.claude}/statusline-command.sh\""
},
"effortLevel": "xhigh",
"skipDangerousModePermissionPrompt": true, "skipDangerousModePermissionPrompt": true,
"effortLevel": "high", "voiceEnabled": true,
"mcpServers": {} "mcpServers": {}
} }

View File

@@ -0,0 +1,52 @@
#!/bin/sh
input=$(cat)
model=$(echo "$input" | jq -r '.model.display_name // empty')
total_in=$(echo "$input" | jq -r '.context_window.total_input_tokens // 0')
total_out=$(echo "$input" | jq -r '.context_window.total_output_tokens // 0')
ctx=$(echo "$input" | jq -r '.context_window.used_percentage // empty')
five_hr=$(echo "$input" | jq -r '.rate_limits.five_hour.used_percentage // empty')
five_hr_reset=$(echo "$input" | jq -r '.rate_limits.five_hour.resets_at // empty')
seven_day=$(echo "$input" | jq -r '.rate_limits.seven_day.used_percentage // empty')
seven_day_reset=$(echo "$input" | jq -r '.rate_limits.seven_day.resets_at // empty')
# format seconds until reset as human-readable
fmt_remaining() {
now=$(date +%s)
diff=$(( $1 - now ))
[ "$diff" -le 0 ] && return
h=$(( diff / 3600 ))
m=$(( (diff % 3600) / 60 ))
if [ "$h" -gt 0 ]; then
printf '%dh%dm' "$h" "$m"
else
printf '%dm' "$m"
fi
}
parts=""
[ -n "$model" ] && parts="$model"
if [ -n "$total_in" ] && [ "$total_in" != "0" ]; then
total=$((total_in + total_out))
parts="${parts:+$parts | }tokens:${total}"
fi
if [ -n "$ctx" ]; then
parts="${parts:+$parts | }ctx:$(printf '%.0f' "$ctx")%"
fi
if [ -n "$five_hr" ]; then
five_hr_ttl=""
[ -n "$five_hr_reset" ] && five_hr_ttl=$(fmt_remaining "$five_hr_reset")
parts="${parts:+$parts | }5h:$(printf '%.0f' "$five_hr")%${five_hr_ttl:+($five_hr_ttl)}"
fi
if [ -n "$seven_day" ]; then
seven_day_ttl=""
[ -n "$seven_day_reset" ] && seven_day_ttl=$(fmt_remaining "$seven_day_reset")
parts="${parts:+$parts | }7d:$(printf '%.0f' "$seven_day")%${seven_day_ttl:+($seven_day_ttl)}"
fi
[ -n "$parts" ] && printf '%s' "$parts"

View File

@@ -10,7 +10,7 @@ assign [app_id="thunderbird"] workspace 3
assign [app_id="Cider"] workspace 4 assign [app_id="Cider"] workspace 4
assign [app_id=".*BoltLauncher.*"] workspace 5 assign [app_id=".*BoltLauncher.*"] workspace 5
assign [class="net-runelite.*"] workspace 5 assign [class="net-runelite.*"] workspace 5
assign [app_id="vesktop"] workspace 8 assign [app_id="discord"] workspace 8
assign [app_id="Slack"] workspace 8 assign [app_id="Slack"] workspace 8
assign [app_id="org.telegram.desktop"] workspace 8 assign [app_id="org.telegram.desktop"] workspace 8
assign [app_id="Rocket.Chat"] workspace 8 assign [app_id="Rocket.Chat"] workspace 8

View File

@@ -13,7 +13,7 @@ exec $browser
exec thunderbird exec thunderbird
exec cider-2 exec cider-2
exec bolt-launcher exec bolt-launcher
exec vesktop exec discord
exec slack exec slack
exec Telegram exec Telegram
exec rocketchat-desktop exec rocketchat-desktop

View File

@@ -1,2 +1,2 @@
output DP-7 resolution 2560x1440 position 0,0 output DP-7 resolution 2560x1440 position 2560,-1200
output eDP-1 resolution 2560x1600@165Hz position 2560,0 adaptive_sync on output eDP-1 resolution 2560x1600@165Hz position 0,0 adaptive_sync on

View File

@@ -37,7 +37,7 @@ alias gcm='git checkout $(git_main_branch)'
alias gsw="git switch" alias gsw="git switch"
# git fetch/pull/push # git fetch/pull/push
alias gfa="git fetch --all --prune" alias gfa="git fetch --all --prune --tags"
alias gl="git pull" alias gl="git pull"
alias gp="git push" alias gp="git push"
alias gpf="git push --force-with-lease" alias gpf="git push --force-with-lease"