Control Ghostty terminal with Raycast
Launch configurations let you quickly open Ghostty windows, open tabs, navigate to folders and enter commands. They're inspired by Warp's launch configurations. If you had already created a launch configuration in Warp, you can copy it into this extension.
Create a YAML launch configuration and paste it into the Open Ghostty Launch Configuration command. See the simple example below.
name required display name shown in Raycastwindows required list of Ghostty windows; each additional item opens in a new Ghostty windowwindows[].tabs required list of tabs inside that windowwindows[].tabs[].title optional tab title; if omitted, the extension uses the tab directory namewindows[].tabs[].layout required root pane for the tablayout.cwd optional working directory for that pane; supports ~layout.commands optional list of commands to run in the pane, in orderlayout.split_direction optional split direction for child panes: vertical opens to the right, horizontal opens downwardlayout.panes optional child panes; the first child merges into the current pane, later children are added as splitslayoutcommands on a pane are joined and executed in that panepanes[0] extends the current panepanes[1], panes[2], and so on create additional splitspanes let you build more complex layoutsname: Example Launch Configuration
windows:
- tabs:
- layout:
cwd: ~/projects/my-repo
commands:
- exec: npm run dev
- layout:
cwd: ~/projects/other
panes:
- {}
- split_direction: vertical
commands:
- exec: lazygit
name: App Fabricator
windows:
- tabs:
- title: app-fabricator
layout:
cwd: ~/Developer/slabware/app-fabricator
panes:
- commands:
- exec: npm run dev
- split_direction: vertical
commands:
- exec: lazygit
- title: app-fabricator-api
layout:
cwd: ~/Developer/slabware/app-fabricator-api
commands:
- exec: npm run dev
- tabs:
- layout:
cwd: ~/Developer/slabware/app-fabricator
commands:
- exec: npm test
title, the extension uses the last folder name from its effective directory. For example, ~/Developer/slabware/app-fabricator becomes app-fabricator.commands are run by Ghostty as pasted input followed by Enter.commands if you just want an interactive shell in that directory.The Open Workspace from Git Repos command can reuse your saved launch configurations for any repository it finds.
cwdcwd are shown in the git repo listcwd values anywhere in its tabs or nested panes, it is hidden from that commandExample of a config that will appear in the git repo list:
name: Repo Dev
windows:
- tabs:
- layout:
cwd: ~/some/default/repo
panes:
- commands:
- exec: npm run dev
- split_direction: vertical
commands:
- exec: lazygit
Example of a config that will not appear in the git repo list because it uses multiple different directories:
name: Multi Repo Setup
windows:
- tabs:
- layout:
cwd: ~/repo-a
- layout:
cwd: ~/repo-b