starship/starship
Features
User-facing capabilities that span multiple subsystems and modules. Where Modules describes each prompt module and Subsystems describes the engine, this section describes the things you can do with Starship and how the parts compose to make them work.
Pages
| Feature | Page |
|---|---|
| Render a customized cross-shell prompt | Prompt rendering |
Configure modules via starship.toml |
Configuration |
| Add user-defined modules | Custom modules |
| Use packaged presets | Presets |
| Define alternative prompt profiles | Profiles |
| Render the Claude Code statusline | Claude Code statusline |
| Right and continuation prompts | Right and continuation prompts |
| Format string DSL | Format string DSL |
How the features compose
Most user-visible features come from combining a few primitives:
- The format string DSL (
$variable,[group](style),(conditional)). - The module list baked into the binary plus
[custom.<name>]modules from the user's TOML. - The render target (
Main,Right,Continuation,Profile(...)) selected via CLI flag. - The palette and style system for theming.
- The two-phase init for cross-shell wiring.
A theme like gruvbox-rainbow is just a palette + a long format string + module symbol overrides. A profile like claude-code is just a different format string activated by Target::Profile. A custom module is just a [custom.<name>] table with detection rules and a command. All of these are described in detail in the per-feature pages.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.