â CShip (pronounced "sea ship")
Beautiful, Blazing-fast, Customizable Claude Code Statusline.
cship renders a live statusline for Claude Code sessions, showing session cost, context window usage, model name, API usage limits, and more â all configurable via a simple TOML file.
Key features:
- ðĻ Fully Customizable: Configure every module with Starship-compatible TOML. Colors, symbols, thresholds â your statusline, your rules.
- ⥠Blazing Fast: Written in Rust with a âĪ10ms render budget.
- ð Starship Passthrough: Embed any Starship module (git_branch, directory, language runtimes) right next to native CShip modules.
- ð° Session Insights: Track cost, context window usage, API limits, vim mode, agent name, and more â all from Claude Code's live JSON feed. Implement custom warn and critical thresholds with custom colors for each.
ð Install
⥠Method 1: curl installer (recommended)
|
Auto-detects your OS and architecture (macOS arm64/x86_64, Linux x86_64/aarch64), downloads the binary to ~/.local/bin/cship, creates a starter config at ~/.config/cship.toml, wires the statusLine entry in ~/.claude/settings.json, and optionally installs Starship (needed for passthrough modules) and, on Linux, libsecret-tools (needed for usage limits).
ðĶ Method 2: cargo install
Requires the Rust toolchain.
After installing with cargo, wire the statusline manually in ~/.claude/settings.json:
âïļ Configuration
- The default config file is
~/.config/cship.toml. - You can also place a
cship.tomlin your project root for per-project overrides. - The
linesarray defines the rows of your statusline. - Each element is a format string mixing
$cship.<module>tokens (native cship modules) with Starship module tokens (e.g.$git_branch).
A minimal working example:
[]
= ["$cship.model $cship.cost $cship.context_bar"]
ðĻ Styling example
[]
= ["$cship.model $cship.cost $cship.context_bar"]
[]
= 1.0
= "bold yellow"
= 5.0
= "bold red"
ð§Đ Available modules
Everything in the Claude Code status line documentation is available as a $cship.<module> token for you to mix and match in the lines format strings. Here are the most popular ones:
| Token | Description |
|---|---|
$cship.model |
Claude model name |
$cship.cost |
Session cost in USD ($X.XX) |
$cship.context_bar |
Visual progress bar of context window usage |
$cship.context_window |
Context window tokens (used/total) |
$cship.usage_limits |
API usage limits (5hr / 7-day) |
$cship.agent |
Sub-agent name |
$cship.session |
Session identity info |
$cship.workspace |
Workspace/project directory |
Full configuration reference: https://cship.dev
ð Debugging
Run cship explain to inspect what cship sees from Claude Code's context JSON â useful when a module shows nothing or behaves unexpectedly.
âĻ Showcase
Six ready-to-use configurations â from minimal to full-featured. Each can be dropped into ~/.config/cship.toml.
1. ðŠķ Minimal
One clean row. Model, cost with colour thresholds, context bar.
[]
= ["$cship.model $cship.cost $cship.context_bar"]
[]
= "green"
= 2.0
= "yellow"
= 5.0
= "bold red"
[]
= 10
= 40.0
= "yellow"
= 70.0
= "bold red"
2. ðŋ Git-Aware Developer
Two rows: Starship git status on top, Claude session below. Starship passthrough ($directory, $git_branch, $git_status) requires Starship to be installed.
[]
= [
"$directory $git_branch $git_status",
"$cship.model $cship.cost $cship.context_bar",
]
[]
= "ðĪ "
= "bold cyan"
[]
= 2.0
= "yellow"
= 5.0
= "bold red"
[]
= 10
= 40.0
= "yellow"
= 70.0
= "bold red"
3. ð° Cost Guardian
Shows cost, lines changed, and rolling API usage limits all at once. Colour escalates as budgets fill.
[]
= [
"$cship.model $cship.cost +$cship.cost.total_lines_added -$cship.cost.total_lines_removed",
"$cship.context_bar $cship.usage_limits",
]
[]
= "bold purple"
[]
= 1.0
= "bold yellow"
= 3.0
= "bold red"
[]
= 10
= 40.0
= "yellow"
= 70.0
= "bold red"
[]
= 60 # cache TTL in seconds; increase if running many concurrent sessions
= "5h {pct}%"
= "7d {pct}%"
= " "
= 70.0
= "bold yellow"
= 90.0
= "bold red"
4. ðĻ Material Hex
Every style value is a fg:#rrggbb hex colour â no named colours anywhere. Amber warns, coral criticals.
`
[]
= [
"$cship.model $cship.cost",
"$cship.context_bar $cship.usage_limits",
]
[]
= "fg:#c3e88d"
[]
= "fg:#82aaff"
= 2.0
= "fg:#ffcb6b"
= 6.0
= "bold fg:#f07178"
[]
= 10
= "fg:#89ddff"
= 40.0
= "fg:#ffcb6b"
= 70.0
= "bold fg:#f07178"
[]
= "5h {pct}%"
= "7d {pct}%"
= " "
= 70.0
= "fg:#ffcb6b"
= 90.0
= "bold fg:#f07178"
5. ð Tokyo Night
Three-row layout for polyglot developers. Starship handles language runtimes and git; cship handles session data. Styled with the Tokyo Night colour palette.
[]
= [
"""
$directory\
$git_branch\
$git_status\
$python\
$nodejs\
$rust
""",
"$cship.model $cship.agent",
"$cship.context_bar $cship.cost $cship.usage_limits",
]
[]
= "ðĪ "
= "bold fg:#7aa2f7"
[]
= "âģ "
= "fg:#9ece6a"
[]
= 10
= "fg:#7dcfff"
= 40.0
= "fg:#e0af68"
= 70.0
= "bold fg:#f7768e"
[]
= "ð° "
= "fg:#a9b1d6"
= 2.0
= "fg:#e0af68"
= 5.0
= "bold fg:#f7768e"
[]
= "â 5h {pct}%"
= "ð
7d {pct}%"
= " "
= 70.0
= "fg:#e0af68"
= 90.0
= "bold fg:#f7768e"
6. ðĪ Nerd Fonts
Requires a Nerd Font in your terminal. Icons are embedded as symbol values on each module and as literal characters in the format string for Starship passthrough rows. You can use format to control how the symbol and value are combined for each module exactly like you'd do with Starship.
[]
= [
"""
$directory\
$git_branch\
$git_status\
$python\
$nodejs\
$rust
""",
"$cship.model $cship.cost $cship.context_bar $cship.usage_limits",
]
[]
= "ï "
= "bold fg:#7aa2f7"
[]
= "ð° "
= "fg:#a9b1d6"
= 2.0
= "fg:#e0af68"
= 5.0
= "bold fg:#f7768e"
[]
= "ï "
= "[$symbol$value]($style)"
= 10
= "fg:#7dcfff"
= 40.0
= "fg:#e0af68"
= 70.0
= "bold fg:#f7768e"
[]
= "â 5h {pct}%"
= "ð
7d {pct}%"
= " "
= 70.0
= "fg:#e0af68"
= 90.0
= "bold fg:#f7768e"
ð Full documentation
â cship.dev
Complete configuration reference, format string syntax, all module options, and examples.
If you found this project useful, please give us a star â on GitHub!
If you find bugs or have suggestions, open an issue or submit a pull request. Contributions are very welcome!
ðĄ Inspiration
- Inspired by starship, built with Rust and the Claude Code status line API.
ð License
Apache-2.0