Starship Prompt =============== Starship - minimal, fast, and customizable shell prompt Date: February 7, 2026 [Starship](https://starship.rs/) is a minimal, fast, and customizable prompt for any shell. It provides useful context at a glance without cluttering your terminal. ## Features - **Fast** - Written in Rust, renders in milliseconds - **Cross-shell** - Works with zsh, bash, fish, and more - **Informative** - Git status, tool versions, execution time - **Customizable** - Extensive configuration options ## Setup ### Installation Via mise (recommended): ```bash mise install starship ``` Or direct install: ```bash curl -sS https://starship.rs/install.sh | sh ``` ### Shell Integration Add to `~/.zshrc`: ```bash eval "$(starship init zsh)" ``` ## Configuration Config file: `~/.config/starship.toml` ### Minimal Setup ```toml # Don't print a new line at the start of the prompt add_newline = false # Replace the "❯" symbol in the prompt with "➜" [character] success_symbol = "[➜](bold green)" error_symbol = "[✗](bold red)" ``` ### Git Status Show detailed git information: ```toml [git_status] conflicted = "🏳" ahead = "🏎💨" behind = "😰" diverged = "😵" up_to_date = "✓" untracked = "🤷" stashed = "📦" modified = "📝" staged = "[++\($count\)](green)" renamed = "👅" deleted = "🗑" ``` ### Tool Versions Show active tool versions: ```toml [nodejs] format = "via [🤖 $version](bold green) " [python] format = "via [🐍 $version](bold blue) " [rust] format = "via [🦀 $version](bold red) " [golang] format = "via [🐹 $version](bold cyan) " ``` ### Directory Customize how directories are displayed: ```toml [directory] truncation_length = 3 truncate_to_repo = true ``` ### Command Duration Show how long the last command took: ```toml [cmd_duration] min_time = 500 format = "took [$duration](bold yellow)" ``` ## Modules Starship supports many modules out of the box: ### Development - **git_branch** - Current git branch - **git_commit** - Current git commit - **git_state** - Rebase/merge/cherry-pick state - **git_status** - Working tree status - **package** - Package version from package.json, Cargo.toml, etc. ### Languages - **nodejs** - Node.js version - **python** - Python version and virtualenv - **rust** - Rust version - **golang** - Go version - **ruby** - Ruby version - **lua** - Lua version ### System - **directory** - Current directory - **hostname** - System hostname - **username** - Current user - **time** - Current time - **battery** - Battery percentage - **memory_usage** - RAM usage ### Tools - **aws** - AWS profile - **gcloud** - Google Cloud region - **kubernetes** - Current k8s context - **terraform** - Terraform workspace ## Conditional Formatting Show modules only in certain contexts: ```toml [nodejs] detect_extensions = ["js", "mjs", "cjs", "ts"] detect_files = ["package.json", ".node-version"] detect_folders = ["node_modules"] ``` ## Performance Starship is designed to be fast, but you can optimize further: ```toml # Disable unused modules [fill] disabled = true [line_break] disabled = true # Reduce git status checks [git_status] disabled = false ahead = "⇡${count}" diverged = "⇕⇡${ahead_count}⇣${behind_count}" behind = "⇣${count}" ``` ## Transient Prompt Keep previous prompts minimal: ```toml [character] success_symbol = "[❯](bold green)" error_symbol = "[❯](bold red)" # This requires shell-specific config ``` For zsh, add to `~/.zshrc`: ```bash # Transient prompt setopt transient_rprompt ``` ## Troubleshooting ### Prompt not showing 1. Check starship is in PATH: `which starship` 2. Verify init command is in shell config 3. Restart shell: `exec zsh` ### Slow prompt Profile with: `STARSHIP_LOG=trace starship prompt` ## See Also <div class="embed-card embed-card-external"> <a href="https://starship.rs/config/" class="embed-card-link" target="_blank" rel="noopener noreferrer"> <div class="embed-card-image"> <img src="https://starship.rs/icon.png" alt="" loading="lazy"> </div> <div class="embed-card-content"> <div class="embed-card-title">Starship: Cross-Shell Prompt</div> <div class="embed-card-description">Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish,...</div> <div class="embed-card-meta">starship.rs</div> </div> </a> </div> <div class="embed-card"> <a href="/zsh/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">zsh Configuration</div> <div class="embed-card-description">zsh shell configuration - my primary shell with autosuggestions, syntax highlighting, and custom functions</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card embed-card-external"> <a href="https://starship.rs/presets/" class="embed-card-link" target="_blank" rel="noopener noreferrer"> <div class="embed-card-image"> <img src="https://starship.rs/icon.png" alt="" loading="lazy"> </div> <div class="embed-card-content"> <div class="embed-card-title">Starship: Cross-Shell Prompt</div> <div class="embed-card-description">Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish,...</div> <div class="embed-card-meta">starship.rs</div> </div> </a> </div>