tessl install github:daymade/claude-code-skills --skill statusline-generatorgithub.com/daymade/claude-code-skills
Configures and customizes Claude Code statuslines with multi-line layouts, cost tracking via ccusage, git status indicators, and customizable colors. Activates for statusline setup, installation, configuration, customization, color changes, cost display, git status integration, or troubleshooting statusline issues.
Review Score
85%
Validation Score
13/16
Implementation Score
73%
Activation Score
100%
This skill provides tools and guidance for creating and customizing Claude Code statuslines. It generates multi-line statuslines optimized for portrait screens, integrates with ccusage for session/daily cost tracking, displays git branch status, and supports color customization.
This skill activates for:
Install the default multi-line statusline:
Run the installation script:
bash scripts/install_statusline.shRestart Claude Code to see the statusline
The default statusline displays:
username (model) [session_cost/daily_cost]current_path[git:branch*+]Alternatively, manually install by:
scripts/generate_statusline.sh to ~/.claude/statusline.shchmod +x ~/.claude/statusline.sh~/.claude/settings.json:
{
"statusLine": {
"type": "command",
"command": "bash /home/username/.claude/statusline.sh",
"padding": 0
}
}The statusline uses a 3-line layout optimized for portrait screens:
username (Sonnet 4.5 [1M]) [$0.26/$25.93]
~/workspace/java/ready-together-svc
[git:feature/branch-name*+]Benefits:
Cost tracking via ccusage:
[$session/$daily] in magentaRequirements: ccusage must be installed and in PATH. See references/ccusage_integration.md for installation and troubleshooting.
Model names are automatically shortened:
"Sonnet 4.5 (with 1M token context)" → "Sonnet 4.5 [1M]""Opus 4.1 (with 500K token context)" → "Opus 4.1 [500K]"This saves horizontal space while preserving key information.
Git branch status shows:
* - Modified or staged files+ - Untracked files[git:main*+] - Modified files and untracked filesPaths are shortened:
~/home/username/workspace/project → ~/workspace/projectDefault colors optimized for visibility:
\033[01;32m)\033[01;36m)\033[01;35m)\033[01;37m)\033[01;33m)\033[01;31m)Customize colors by editing ~/.claude/statusline.sh and modifying the ANSI color codes in the final printf statement. See references/color_codes.md for available colors.
Example: Change username to blue
# Find this line:
printf '\033[01;32m%s\033[00m \033[01;36m(%s)\033[00m%s\n\033[01;37m%s\033[00m\n%s' \
# Change \033[01;32m (green) to \033[01;34m (blue):
printf '\033[01;34m%s\033[00m \033[01;36m(%s)\033[00m%s\n\033[01;37m%s\033[00m\n%s' \Convert to single-line layout by modifying the final printf:
# Replace:
printf '\033[01;32m%s\033[00m \033[01;36m(%s)\033[00m%s\n\033[01;37m%s\033[00m\n%s' \
"$username" "$model" "$cost_info" "$short_path" "$git_info"
# With:
printf '\033[01;32m%s\033[00m \033[01;36m(%s)\033[00m:\033[01;37m%s\033[00m%s%s' \
"$username" "$model" "$short_path" "$git_info" "$cost_info"If ccusage is unavailable or not desired:
%s for $cost_info from the final printfSee references/ccusage_integration.md for details.
Add custom information (e.g., hostname, time):
# Add variable before final printf:
hostname=$(hostname -s)
current_time=$(date +%H:%M)
# Update printf to include new elements:
printf '\033[01;32m%s@%s\033[00m \033[01;36m(%s)\033[00m%s [%s]\n...' \
"$username" "$hostname" "$model" "$cost_info" "$current_time" ...Check:
ccusage installed? Run which ccusageccusage manually: ccusage session --json --offline -o descls -lh /tmp/claude_cost_cache_*.txtSolution: See references/ccusage_integration.md for detailed troubleshooting.
Solution: Adjust colors for your terminal background using references/color_codes.md. Bright colors (01;3X) are generally more visible than regular (00;3X).
Check:
chmod +x ~/.claude/statusline.shCheck:
git branch --show-currentMain statusline script with all features (multi-line, ccusage, git, colors). Copy this to ~/.claude/statusline.sh for use.
Automated installation script that copies the statusline script and updates settings.json.
Complete ANSI color code reference for customizing statusline colors. Load when users request color customization.
Detailed explanation of ccusage integration, caching strategy, JSON structure, and troubleshooting. Load when users experience cost tracking issues or want to understand how it works.