Extending
Prompt Designer
Design your shell prompt by clicking — pick a style, toggle segments, choose a
symbol and color, watch a live preview — then apply it to your shell. No
hand-editing of PS1 escape codes. It ships as an
IPC panel plugin.
Install
Open the Plugins panel (the ⧉ activity-bar icon), find promptdesigner in the Available list, and click Install — or copy the folder in manually:
cp -R plugins/promptdesigner ~/.config/sinclair/plugins/promptdesigner
bun on your PATH. Works with zsh and
bash.
Using it
Open the designer panel from the activity bar (the ✎ icon). It gives you:
- Presets — Minimal, Classic, Arrow — a one-click starting point.
- Segments — toggle
user@host, the working directory, the git branch, and the time. - Symbol — choose the prompt character (
❯ ➜ $ λ »). - Color — pick the accent color.
- Preview — a live, plain-text approximation of the result.
When it looks right, click Apply to zsh (or Apply to
bash). Your choices persist in
~/.config/prompt-designer/design.json, so the panel always opens
on your current design.
How Apply works
Applying is deliberately transparent and reversible:
- The generated prompt — a proper
PROMPT(zsh) orPS1(bash), including a small git-branch helper — is written to~/.config/prompt-designer/prompt.sh. - A single managed block is added to your
~/.zshrcor~/.bashrcthat sources that file. The block is idempotent — re-applying rewritesprompt.shand never duplicates the block. - Apply also
sources the file in the focused pane, so the new prompt appears immediately — no need to open a new shell.
# the managed block added to your rc file (with your real home path)
# >>> prompt-designer >>>
[ -f "/Users/you/.config/prompt-designer/prompt.sh" ] && source "/Users/you/.config/prompt-designer/prompt.sh"
# <<< prompt-designer <<<
The rc file is written atomically (temp file + rename), so an interrupted write can't corrupt your shell startup file.
Removing it
Click Remove from shell in the panel — it strips the managed
block from your rc file. New shells return to your previous prompt; the
generated prompt.sh and your design.json are left in
place so you can re-apply later.
The designer only ever edits its own managed block and its files under
~/.config/prompt-designer/; the rest of your rc is untouched.