install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/TerminalSkills/skills/starship" ~/.claude/skills/comeonoliver-skillshub-starship && rm -rf "$T"
manifest:
skills/TerminalSkills/skills/starship/SKILL.mdsource content
Starship — Cross-Shell Prompt
You are an expert in Starship, the minimal, blazing-fast, cross-shell prompt written in Rust. You help developers customize their terminal prompt with git status, language versions, cloud context, battery level, time, and custom modules — working identically across Bash, Zsh, Fish, PowerShell, and any shell with a single TOML config file.
Core Capabilities
Configuration
# ~/.config/starship.toml format = """ $username\ $hostname\ $directory\ $git_branch\ $git_status\ $nodejs\ $python\ $rust\ $golang\ $docker_context\ $kubernetes\ $aws\ $terraform\ $cmd_duration\ $line_break\ $character""" [character] success_symbol = "[❯](bold green)" error_symbol = "[❯](bold red)" [directory] truncation_length = 3 truncate_to_repo = true style = "bold cyan" [git_branch] symbol = "🌿 " style = "bold purple" [git_status] conflicted = "⚔️ " ahead = "⇡${count} " behind = "⇣${count} " diverged = "⇕⇡${ahead_count}⇣${behind_count} " untracked = "?${count} " stashed = "📦 " modified = "!${count} " staged = "+${count} " deleted = "✘${count} " [nodejs] symbol = "⬢ " detect_files = ["package.json", ".nvmrc"] style = "bold green" [python] symbol = "🐍 " detect_extensions = ["py"] style = "bold yellow" [rust] symbol = "🦀 " style = "bold red" [docker_context] symbol = "🐳 " only_with_files = true [kubernetes] disabled = false symbol = "☸ " detect_files = ["k8s", "kubernetes"] [aws] symbol = "☁️ " format = '[$symbol($profile )(\($region\))]($style)' [cmd_duration] min_time = 2000 # Show if command took >2s format = "took [$duration]($style) " style = "bold yellow" [time] disabled = false format = "🕐 [$time]($style) " time_format = "%H:%M" # Custom module [custom.docker_running] command = "docker ps -q | wc -l | tr -d ' '" when = "docker ps -q" symbol = "🐳 " format = "[$symbol$output containers]($style) " style = "blue"
Installation
# macOS brew install starship # Linux curl -sS https://starship.rs/install.sh | sh # Add to shell: # Bash: eval "$(starship init bash)" >> ~/.bashrc # Zsh: eval "$(starship init zsh)" >> ~/.zshrc # Fish: starship init fish | source >> ~/.config/fish/config.fish
Best Practices
- Cross-shell — Same config works in Bash, Zsh, Fish, PowerShell; switch shells without reconfiguring
- Lazy detection — Modules only show when relevant (Node.js only in JS projects); clean prompt by default
- Git status at a glance — Shows ahead/behind, modified, staged, untracked counts inline
- Command duration — Set
to show timing for slow commands; helps identify bottlenecksmin_time = 2000 - Cloud context — Show AWS profile, K8s context, Terraform workspace; never deploy to wrong environment
- Custom modules — Use
for any shell command output; docker containers, VPN status, etc.[custom.name] - Presets — Start with a preset:
starship preset nerd-font-symbols -o ~/.config/starship.toml - Performance — Written in Rust; renders in <10ms; never slows down your terminal