Skip to content

glauberlima/claude-code-statusline

Repository files navigation

Claude Code Statusline

Claude Code Statusline

> Ridiculously simple. Surprisingly rich.

Platform support MIT License

💡 What You Get

More context in Claude Code's statusline: directory, git status, file changes, model, context usage with progress bar, and cost — all visible at once.

Claude Code Statusline Demo

Install with one command. Works immediately. Configure when you need it.

✨ Quick Install

macOS / Linux / WSL

curl -fsSL https://raw.githubusercontent.com/glauberlima/claude-code-statusline/main/install.sh | bash

Windows — PowerShell

irm https://raw.githubusercontent.com/glauberlima/claude-code-statusline/main/install.ps1 | iex

Windows — CMD

curl -fsSL https://raw.githubusercontent.com/glauberlima/claude-code-statusline/main/install.cmd -o install.cmd && install.cmd && del install.cmd

Windows requires Git for Windows. Install it first if you don't have it.

Manual Installation

Use this if you can't run the one-liner (corporate proxy, air-gapped environment, restricted shell).

macOS / Linux / WSL

1. Get the files

git clone https://github.com/glauberlima/claude-code-statusline.git
cd claude-code-statusline

2. Patch for language and features (optional — skip for English with messages/cost off)

# English with messages enabled
./patch-statusline.sh statusline.sh messages/en.json

# Portuguese, no cost display
./patch-statusline.sh statusline.sh messages/pt.json --no-cost

# Disable messages entirely
./patch-statusline.sh statusline.sh --no-messages

3. Copy to ~/.claude/

mkdir -p ~/.claude
cp statusline.sh ~/.claude/statusline.sh
chmod +x ~/.claude/statusline.sh

4. Add to ~/.claude/settings.json

{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/statusline.sh",
    "padding": 0
  }
}
Windows (PowerShell)

1. Download the files (run in PowerShell)

$base = "https://raw.githubusercontent.com/glauberlima/claude-code-statusline/main"
New-Item -ItemType Directory -Force statusline | Out-Null
Set-Location statusline
Invoke-WebRequest "$base/statusline.sh" -OutFile statusline.sh
Invoke-WebRequest "$base/patch-statusline.sh" -OutFile patch-statusline.sh
New-Item -ItemType Directory -Force messages | Out-Null
foreach ($lang in "en","pt","es") {
  Invoke-WebRequest "$base/messages/$lang.json" -OutFile "messages/$lang.json"
}

2. Patch via Git Bash (optional — skip for English with messages/cost off)

# Run these in Git Bash, not PowerShell
./patch-statusline.sh statusline.sh messages/en.json

3. Copy to %USERPROFILE%\.claude\ (run in PowerShell)

New-Item -ItemType Directory -Force "$env:USERPROFILE\.claude" | Out-Null
Copy-Item statusline.sh "$env:USERPROFILE\.claude\statusline.sh"

4. Add to %USERPROFILE%\.claude\settings.json

{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/statusline.sh",
    "padding": 0
  }
}

Features

  • 📁 Directory name
  • 🌿 Git branch
  • ✏️ File changes
  • 🤖 Model name
  • 📊 Context usage with progress bar and funny messages
  • 💰 Cost tracking

Multi-language: English, Brazilian Portuguese, Spanish

⚙️ Configuration

Re-run the installer to change language or toggle features. Use the same command for your platform as in Quick Install above.

🛠️ Development

Testing

./tests/unit.sh && ./tests/integration.sh && ./tests/shellcheck.sh

ShellCheck reference: https://www.shellcheck.net/

Contributing

  1. Fork and create a feature branch
  2. Make changes and run tests
  3. Submit a pull request

See CLAUDE.md for architecture details and development commands.

Inspirations

License

MIT License

About

Supercharge your Claude Code CLI experience with a powerful statusline that displays key session metrics (Git state, context usage, model info and cost) at a glance — minimal setup, maximum insight.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors