kitty-config

Configure kitty terminal settings, keybindings, themes, and sessions via kitty.conf or Nix Home-Manager modules.

Updated Jul 4, 2025
One-click install
npx skills add https://github.com/milespossing/nixdots --skill kitty-config-milespossing
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: kitty-config
Source: https://github.com/milespossing/nixdots/tree/main/.agents/skills/kitty-config
Command: npx skills add https://github.com/milespossing/nixdots --skill kitty-config-milespossing

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Configuring the kitty terminal emulator involves a large surface of options—fonts, keymaps, layouts, sessions, remote control, shell integration—and in a NixOS flake repo those settings must be expressed declaratively rather than edited ad hoc. This Skill provides a structured workflow and decision rules for making kitty changes correctly in either mode. ## Core Features & Use Cases - Dual-mode configuration: Supports both direct kitty.conf edits and declarative Nix/Home-Manager module wiring, with rules for choosing between them. - Full config coverage checklist: Covers fonts, colors/themes, keymaps, layouts, mouse, scrollback, shell integration, sessions, and remote control hardening. - Validation workflow: Uses kitty --debug-config, kitten show-key, kitten choose-fonts, and kitten themes to inspect and tune behavior safely. - Use Case: A user wants persistent kitty keybindings and a theme in their NixOS flake. The Skill guides creating a dedicated modules/home/kitty/default.nix module, generating kitty config text from Nix, and formatting with nix fmt. ## Quick Start Ask the assistant to configure kitty keybindings and a color theme as a Home-Manager module in this NixOS flake repo.

Frequently Asked Questions about kitty-config

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure kitty terminal keybindings?▼

Kitty keybindings are set with map directives in kitty.conf, such as map kitty_mod+enter new_window_with_cwd. Validate them with kitty --debug-input or kitten show-key -m kitty, and use conditional mappings with --when-focus-on to resolve conflicts before removing defaults.

How do I manage kitty config in NixOS Home-Manager?▼

Create a dedicated module such as modules/home/kitty/default.nix and generate kitty config text from Nix rather than editing kitty.conf directly. Wire the module through your flake imports and run nix fmt on changed files.

How do I change kitty fonts and themes?▼

Use kitten choose-fonts for interactive font selection and kitten themes for color theme selection. Persist choices in separate included files like kitty.d/fonts.conf and kitty.d/colors.conf to keep config modular.

How do I reload kitty config without restarting?▼

Send SIGUSR1 to the kitty process with kill -SIGUSR1 <kitty-pid>, or use the reload_config_file action. Inspect the active configuration first with kitty --debug-config to confirm what changed.

How do I set up kitty sessions and workspaces?▼

Define a startup_session file and bind goto_session mappings, for example map f7>/ goto_session. Sessions combined with goto_session provide project-style workspaces inside kitty.

Is kitty remote control safe to enable?▼

Enable it with allow_remote_control password and restrict commands using remote_control_password scoped to specific actions, such as limiting color changes. This prevents unrestricted remote command execution.