SKILL.md
Operating Ghostty
Treat the installed binary and its help output as the source of truth because Ghostty behavior varies by version, build, and platform.
Establish Context
- Run
command -v ghostty,ghostty +version, andghostty --helpbefore relying on remembered syntax. - Run
ghostty +<cli-action> --helpbefore using a helper action whose flags or effects are uncertain. - Use
ghostty +helpto list CLI helper actions. - Use
ghostty +list-actions --docsto list documented keybind and command-palette actions. - Use
ghostty +list-keybinds --plainfor active keybinds and add--defaultwhen inspecting built-in bindings.
Do not confuse the two action systems. CLI helper actions have names such as +show-config and are invoked as commands. Names from +list-actions, such as newtab, reloadconfig, and toggle_fullscreen, are configuration actions and cannot generally be invoked as ghostty +<name>.
Keep Commands Non-Interactive
- Add
--plainto+list-themes,+list-keybinds, and other listing commands when available. - Do not run
ghostty +edit-configbecause it opens an interactive editor. - Do not launch an interactive child command with
ghostty -efrom an agent shell. - Do not invoke crash, quit, close, reset, clear, or other disruptive behavior unless the user explicitly requested that exact effect.
- Treat unsupported-action errors as platform or build evidence instead of retrying with guessed syntax.
Inspect and Troubleshoot
- Use
ghostty +show-config --changes-onlyto inspect effective non-default settings. - Use
ghostty +show-config --default --docsonly when full option documentation is needed because its output is large. - Use
ghostty +list-fonts --family='<family>'to diagnose font discovery. - Use
ghostty +show-face --string='<text>'or--cp=<codepoint>to identify the selected font face. - Use
ghostty +list-themes --plainwith--color=dark,--color=light, or--color=allto discover theme names without opening the preview TUI. - Use
ghostty +list-colors --plainfor named colors.
Report the Ghostty version, platform-relevant limitation, command evidence, and the smallest next action that resolves the request.
Change Configuration
- Inspect
ghostty +edit-config --helpand existing platform-specific config paths without launching the editor. - Prefer the existing non-empty config selected by Ghostty, and do not create competing config files in multiple locations.
- Read the current file and
ghostty +show-config --changes-onlybefore editing it. - For a keybind, confirm the action and argument with
ghostty +list-actions --docs, then inspect current and default bindings for trigger conflicts. - Add the smallest requested setting in Ghostty configuration syntax, such as
keybind = super+t=new_tab. - Run
ghostty +validate-config --config-file='<path>'after editing. - Re-read the changed lines and relevant
+show-configor+list-keybinds --plainoutput. - Explain that reloading is an in-app keybind or menu action rather than inventing a
ghostty +reload_configcommand.
Preserve comments and unrelated settings. Do not overwrite an existing keybind unless the user requested that conflict resolution. Check action documentation for platform restrictions before adding a binding.
Launch Ghostty
On macOS, direct CLI launching is unsupported, so use open -na Ghostty.app and pass configuration arguments only with open -na Ghostty.app --args .... On supported non-macOS builds, use the launch syntax shown by the installed ghostty --help. Do not claim that a window opened successfully without observable process, window, or command evidence.