From ghostty-your-turn
Temporarily change the current Ghostty pane background to a given color (a one-shot paint, not persisted). Use for: changecolor, change the pane color, temporarily change the background, just change the color for now, make the terminal red. Do NOT use for persistently changing the your-turn color (use update-your-turn-color). Do NOT use for non-Ghostty terminal settings, or enabling/disabling the color change (the Hook itself). Always follow the steps in the body.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ghostty-your-turn:changecolorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Temporarily change the **current pane** background of Ghostty to a given color. A one-shot paint, not persisted.
Temporarily change the current pane background of Ghostty to a given color. A one-shot paint, not persisted.
Note: when the
ghostty-your-turnhooks are enabled, this turn'sStophook overwrites it with the your-turn color, and the nextUserPromptSubmitresets it to the default. So the effect lasts only until you hand the turn back. To permanently change the your-turn color, useupdate-your-turn-color.
Take the color from the user's request (e.g. /changecolor #ff0000, /changecolor red).
#rrggbb form is the most reliable.red / steelblue, etc.) also work on OSC 11-capable terminals, but are less reliable.AskUserQuestion to offer candidates (the user can pick "Other" for any value).Replace <COLOR> with the actual value and run it. Claude's Bash child process has no tty, so you
must write to the tty resolved from $PPID (writing to /dev/tty directly or printf to stdout will not reach it).
COLOR="<COLOR>" # e.g. #ff0000 or red
resolve_pane_tty() {
local pid="$PPID" i=0 t
while [ "$i" -lt 8 ]; do
i=$((i + 1))
t=$(ps -o tty= -p "$pid" 2>/dev/null | tr -d ' ')
case "$t" in
"" | "?" | "??") : ;;
*) printf '/dev/%s\n' "$t"; return 0 ;;
esac
pid=$(ps -o ppid= -p "$pid" 2>/dev/null | tr -d ' ')
{ [ -z "$pid" ] || [ "$pid" = "0" ] || [ "$pid" = "1" ]; } && return 1
done
return 1
}
if DEV=$(resolve_pane_tty); then
printf '\033]11;%s\007' "$COLOR" >"$DEV" && echo "Applied: $COLOR -> $DEV"
else
echo "Could not resolve the tty (e.g. headless). The color was not changed."
fi
Report the applied color and add a one-line note that it is temporary (overwritten at the end of the
turn when the hooks are enabled). You may also mention that it can be reset immediately to the default
with printf '\033]111\007' > <DEV>.
#rrggbb is recommended.color.conf) — this skill does not persist anything.Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub brbranch/claude-ghostty-your-turn --plugin ghostty-your-turn