kitty_launch
Create a new kitty window, tab, or OS window to run a command or shell, with configurable location, environment, and input source.
Instructions
Launch a new process in a kitty window, tab, or OS window. This is the primary window creation tool. Returns the ID of the newly created window. If no command is specified, the default shell is launched. Supports many launch options including window type, location, environment, and stdin source.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Working directory. Special values: "current", "oldest", "last_reported", "root". | |
| env | No | Environment variables as "NAME=VALUE" strings. Example: ["TERM=xterm-256color", "DEBUG=1"]. | |
| var | No | User variables as "NAME=VALUE" strings, accessible via kitty match expressions. | |
| hold | No | Keep window open after the command exits. | |
| self | No | Use the tab of the window this command runs in. | |
| type | No | Where to launch: window (in current tab), tab (new tab), os-window (new OS window), overlay (over current window), etc. Default: window. | |
| match | No | Tab match expression — which tab to create the window in. | |
| copy_env | No | Copy environment from the source window. | |
| location | No | Where in the tab to place the new window. "vsplit"/"hsplit" create vertical/horizontal splits. Default: default. | |
| tab_title | No | Title for the new tab (if launching in a new tab). | |
| keep_focus | No | Keep focus on the current window instead of switching. | |
| copy_colors | No | Copy colors from the source window. | |
| command_args | No | The command and its arguments to run. Example: ["python3", "-m", "http.server", "8080"]. If omitted, the default shell is launched. | |
| copy_cmdline | No | Copy command line from the source window. | |
| stdin_source | No | Where to get stdin for the launched process. | |
| window_title | No | Title for the new window. | |
| allow_remote_control | No | Allow remote control from the new window. |