Skip to content

⚓ CShipBeautiful, Blazing-fast, Customizable Claude Code Statusline

Bring Starship's power to Claude Code. Configure everything in TOML.

CShip statusline with Nerd Fonts — git branch, language runtimes, model, cost, context bar, and usage limits

What is CShip?

cship renders a live statusline for Claude Code sessions. It reads Claude Code's session JSON from stdin and renders styled text using a simple TOML config file — the same format as Starship.

If you've already invested in Starship customization, CShip slots right in: add [cship.*] sections to your existing starship.toml (or use a dedicated ~/.config/cship.toml), reference native CShip modules alongside any Starship module, and get a unified statusline that speaks both languages.

Install

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 and libsecret-tools (Linux only, needed for usage limits).

sh
curl -fsSL https://cship.dev/install.sh | bash

Cargo Install

Requires the Rust toolchain.

sh
cargo install cship

After installing with cargo, wire the statusline manually in ~/.claude/settings.json:

json
{
  "statusLine": { "type": "command", "command": "cship" }
}

Nerd Fonts (optional)

CShip supports Nerd Fonts — patched fonts that add thousands of icons your terminal can render as glyphs. With a Nerd Font active, you can use icon symbols as symbol values in any module config instead of plain text or emoji.

Install a Nerd Font:

  1. Download any font from nerdfonts.com (popular picks: JetBrainsMono Nerd Font, FiraCode Nerd Font, Hack Nerd Font)
  2. Install it on your system and set it as your terminal's font
  3. Use Nerd Font glyphs in your cship.toml:
toml
[cship.model]
symbol = "󰚩 "   # nf-md-robot

[cship.context_bar]
symbol = " "   # nf-oct-cpu

Finding more glyphs

Browse nerdfonts.com/cheat-sheet to find any icon and paste it directly into your cship.toml.

→ The Showcase has a full Nerd Fonts config example.

Quick Start

Create ~/.config/cship.toml:

toml
[cship]
lines = ["$cship.model  $cship.cost  $cship.context_bar"]

[cship.cost]
warn_threshold     = 2.0
warn_style         = "yellow"
critical_threshold = 5.0
critical_style     = "bold red"

[cship.context_bar]
width              = 10
warn_threshold     = 40.0
warn_style         = "yellow"
critical_threshold = 70.0
critical_style     = "bold red"

Open a Claude Code session — your statusline will show the model name, session cost (turning yellow at $2, red at $5), and a 10-character context bar (warming up at 40%, going critical at 70%).

Full Configuration ReferenceShowcase — ready-to-use configs

Debugging

Run cship explain to inspect what CShip sees from Claude Code's context JSON:

sh
cship explain

This shows each module's current rendered value, the config file path in use, and any warnings about missing data or misconfiguration.

Inspired by Starship

Released under the Apache-2.0 License.