configure-ghostty
This skill helps the agent create, inspect, edit, and validate Ghostty terminal emulator configuration files and settings.
Community author
- Agents
- Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, claude.ai and API
- License
- MIT (permissive)
- Pin
- 519bdaapinned Oct 9, 2026
- Context cost
- about 1,700 tokenswhen the skill loads
- GitHub stars
- 15on narumiruna/skills
- Scripts
- None found
What it does
“Create, inspect, edit, validate, troubleshoot, or apply Ghostty configuration, including files, precedence, includes, themes, fonts, keybindings, reload behavior, runtime diagnostics, launch behavior, and platform or version constraints.”
Generated summary from the skill's own text
This skill helps the agent create, inspect, edit, and validate Ghostty terminal emulator configuration files and settings. It handles configuration file locations, syntax, keybindings, themes, fonts, and validation across different platforms and Ghostty versions. The agent uses Ghostty CLI commands to query available options and diagnose configuration issues.
When to use it
- User needs to set up or modify Ghostty configuration files and keybindings
- Diagnosing Ghostty configuration problems or theme and font selection
- Validating configuration syntax before applying changes to Ghostty
- Creating or editing configuration snippets for specific Ghostty behavior
When not to
- User wants to interactively edit configuration with a text editor
- Launching Ghostty windows as the primary goal rather than configuration
- Terminal emulator issues unrelated to Ghostty configuration
Install
These commands install from the publisher's repository and need no account.
skills CLI
npx skills add narumiruna/skills --skill configure-ghosttyInstalls from the repository's default branch, which may have changed since the commit we checked.
GitHub CLI 2.90 or later
gh skill install narumiruna/skills configure-ghostty@519bdaa68d762fe8c65296916c5d8ed5b6e3c119Installs the commit we checked (519bdaa).
Copy by hand
Download the folder at 519bdaa and put it in .claude/skills/configure-ghostty for Claude Code and in .agents/skills/configure-ghostty for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode.
Copy for your agent
A prompt for any coding agent. It installs this skill from GitHub at the pinned commit, copies the files as they are, and runs nothing unless you ask.
Prompt
Install the agent skill "configure-ghostty" by narumiruna. Source, pinned to commit 519bdaa68d762fe8c65296916c5d8ed5b6e3c119: https://github.com/narumiruna/skills/tree/519bdaa68d762fe8c65296916c5d8ed5b6e3c119/skills/default/configure-ghostty 1. Download that folder at exactly this commit. Do not use the default branch. 2. Copy every file unchanged, keeping the folder structure, into .claude/skills/configure-ghostty/ for Claude Code and .agents/skills/configure-ghostty/ for Codex, Cursor, Gemini CLI, GitHub Copilot and OpenCode. Create the folders if they do not exist. 3. Do not edit the files, and do not run any script in the folder unless I ask you to. 4. When you are done, list the files you copied and where you put them. Listing and checks: https://www.agentnative.dev/skills/narumiruna/configure-ghostty
SKILL.md at the pin
--- name: configure-ghostty description: Create, inspect, edit, validate, troubleshoot, or apply Ghostty configuration, including files, precedence, includes, themes, fonts, keybindings, reload behavior, runtime diagnostics, launch behavior, and platform or version constraints. --- # Configuring Ghostty Treat the installed Ghostty version and its bundled documentation as authoritative because options and platform support can change between releases. Keep Ghostty's defaults unless a setting serves the user's stated goal. ## Establish the Target 1. Identify the requested behavior, operating system, and whether the user wants an explanation, a config snippet, a local config change, runtime diagnosis, or an authorized launch. 2. Run `command -v ghostty` and `ghostty +version` when Ghostty is available. 3. Use `ghostty +help` to list CLI helper actions. 4. Inspect `ghostty --help` and the relevant `ghostty +<cli-action> --help` before relying on helper-action syntax. 5. If Ghostty is unavailable, use documentation that matches the user's target version and mark generated configuration as unvalidated. Do not confuse CLI helper actions such as `+show-config` with keybind actions such as `reload_config`. Keybind actions cannot generally be invoked as `ghostty +<action>` commands. ## Keep Commands Non-Interactive - Do not invoke `ghostty +edit-config` because it opens an editor. - Do not launch an interactive child command with `ghostty -e` from an agent shell. - Do not invoke crash, quit, close, reset, clear, or other disruptive behavior unless the user explicitly requests that exact effect. - Treat unsupported-action errors as platform or build evidence instead of retrying with guessed syntax. ## Locate the Effective Configuration Check these files in load order and read every file that exists: 1. `$XDG_CONFIG_HOME/ghostty/config.ghostty`. 2. `$XDG_CONFIG_HOME/ghostty/config`. 3. `$HOME/Library/Application Support/com.mitchellh.ghostty/config.ghostty` on macOS. 4. `$HOME/Library/Application Support/com.mitchellh.ghostty/config` on macOS. Treat `$XDG_CONFIG_HOME` as `$HOME/.config` when it is unset. Later macOS files override conflicting values from earlier XDG files. Run `ghostty +edit-config --help` without invoking `+edit-config` to confirm the installed version's preferred default path. Prefer an existing non-empty file, and do not create competing configuration files in multiple locations. If no file exists and the request authorizes a change, create `config.ghostty` at the preferred path reported by the installed version. Read the selected file and run `ghostty +show-config --changes-only` before editing when the command is available. Account for every `config-file` include before deciding which file owns a setting. ## Verify Options - Use `ghostty +show-config --default --docs` for the installed version's complete option reference, but capture and search its large output non-interactively. - Use `ghostty +list-fonts --family='<family>'` to verify a font family. - Use `ghostty +show-face --string='<text>'` or `--cp=<codepoint>` to diagnose the selected font face. - Use `ghostty +list-themes --plain` with `--color=dark`, `--color=light`, or `--color=all` to verify a theme name without opening the preview interface. - Use `ghostty +list-colors --plain` to verify named colors. - Use `ghostty +list-actions --docs` to verify a keybind action, its argument, and platform restrictions. - Use `ghostty +list-keybinds --plain` and `ghostty +list-keybinds --default --plain` to detect active and built-in trigger conflicts. Do not invent an option, enum value, action, or platform capability when matching documentation is unavailable. ## Edit the Smallest Configuration Use Ghostty's case-sensitive lowercase `key = value` syntax. Preserve comments, ordering conventions, quoting style, and unrelated settings. Use an empty value such as `font-family =` only when the user intends to reset that option to its default. Do not duplicate a scalar setting in the same effective configuration when updating the existing setting is clearer. A `config-file` path is relative to the file that declares it unless it is absolute. Prefix an optional include with `?`, as in `config-file = ?local.ghostty`. Remember that includes are processed after the containing file, so included values override conflicting values even when the include directive appears earlier in the file. ## Configure Keybindings Use `keybind = trigger=action` after verifying the action and any parameter. Valid modifier names include `shift`, `ctrl`, `alt`, and `super`, with documented aliases such as `cmd` on macOS. Check installed documentation before using `global:`, `all:`, `unconsumed:`, or `performable:` because support and behavior can be platform-specific. Treat triggers with different prefixes as the same trigger for conflict resolution because a later binding can replace an earlier one. Do not replace an existing user binding unless the request authorizes that conflict resolution. Separate a key sequence with `>`, as in `keybind = ctrl+a>n=new_window`. A sequence has no timeout, can replace a standalone binding that shares its prefix, and cannot be combined with `global:` or `all:`. Quote a sequence passed as a shell argument so `>` is not interpreted as redirection. ## Validate and Report 1. Run `ghostty +validate-config --help` to confirm supported validation syntax. 2. Run `ghostty +validate-config --config-file='<path>'` for the changed file when supported. 3. Re-read the changed lines and inspect the relevant `+show-config`, `+list-keybinds`, font, or theme output. 4. Report the Ghostty version, relevant file or runtime evidence, validation result when applicable, platform or reload limitations, and the smallest next action. The default reload binding is `ctrl+shift+,` on Linux and `cmd+shift+,` on macOS. Some options require new terminals or a full restart, so use the exact option documentation instead of promising a live reload. Do not restart Ghostty, change operating-system permissions, or install external fonts or themes unless the user explicitly requests that action. Do not expose unrelated `env`, command, or path values from the user's configuration in the report. ## Launch Ghostty Launch Ghostty only when the user requests opening the application or a window. On macOS, use `open -na Ghostty.app` and pass configuration arguments only with `open -na Ghostty.app --args ...` because direct CLI launching is unsupported. 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. ## Documentation Use the [configuration guide](https://ghostty.org/docs/config) for file locations, syntax, includes, and reload behavior when installed documentation is unavailable. Use the [configuration reference](https://ghostty.org/docs/config/reference) for exact option semantics and platform limitations. Use the [keybinding guide](https://ghostty.org/docs/config/keybind) and [action reference](https://ghostty.org/docs/config/keybind/reference) for triggers, sequences, and actions.
From narumiruna/skills at 519bdaa, shown as plain text under its license: MIT (permissive). The license text is in LICENSE.
View SKILL.md on GitHub at 519bdaaFiles
- SKILL.md7.2 KB · 19b048b1bd5e
1 file, 7.2 KB in total. Each file has a sha256 in the pin's manifest; the first 12 characters are shown.
Skill folder on GitHub at 519bdaaRelated in Cloud and DevOps
n8n-cli
This skill enables agents to manage n8n workflows, credentials, executions, and instance resources via the n8n CLI command-line tool.
by n8nOfficial publisher
Claude Code, Codex, Cursor +4 · about 2.9K tokens · pinned 6 days ago
managing-streamlit-apps
Manage Streamlit apps running in PostHog sandboxes through the full lifecycle: create, set or edit source code, start and stop the sandbox, poll status, and…
by PostHogOfficial publisher
Claude Code, Codex, Cursor +4 · about 1.4K tokens · pinned 6 days ago
release-candidate-prep
Prepares a local Python SDK release candidate in a dedicated Git worktree when explicitly invoked with a version number.
by OpenAIOfficial publisher
Contains scripts
Claude Code, Codex, Cursor +3 · about 4.8K tokens · pinned 6 days ago
cloud-run-basics
Deploys and manages Google Cloud Run services, jobs, and worker pools for running containerized applications or source code.
by GoogleOfficial publisher
Claude Code, Codex, Cursor +4 · about 3.9K tokens · pinned 6 days ago
debug-openshell-cluster
Diagnoses OpenShell gateway deployment problems across Docker, Podman, Kubernetes, and VM compute platforms.
by NVIDIAOfficial publisher
Claude Code, Codex, Cursor +4 · about 19.1K tokens · pinned 6 days ago
hf-cloud-aws-context-discovery
This skill reads the user's local AWS configuration to discover their active profile, region, account ID, and caller identity before any AWS work begins.
by Hugging FaceOfficial publisher
Claude Code, Codex, Cursor +4 · about 830 tokens · pinned 6 days ago