Command palette
Open connections, run actions, insert snippets and repeat earlier commands from the keyboard with the command palette of the terminal window.
The command palette is a quick switcher for the terminal window. Type a few letters to open a connection, run an action such as splitting the tab, insert a snippet or repeat a command you typed earlier – without taking your hands off the keyboard.
Open the palette
Press ⌘PCtrlP, choose Edit → Command Palette… or click the ⌘ button at the right end of the tab bar. Esc or a click outside closes it again.
On Windows and Linux, the terminal passes CtrlP to the shell while it has the focus. Use the button in the tab bar there. See Keys in the terminal.
What the palette contains
Every entry shows its group on the right:
| Group | Entries | What happens when you choose one |
|---|---|---|
| Action | New tab, AI Pilot, Files, Clear terminal, Reconnect, Split right, Split down, Send input to all tabs, Settings, Home | kaiport runs the action for the current tab. AI Pilot and Files open or close the panel, Send input to all tabs turns broadcast mode on or off. |
| Connections | All saved connections, including storage connections | The connection opens in a new tab. |
| Snippet | Your snippets | The command is typed into the focused terminal. |
| History | Commands you typed before, see Command history | The command is typed into the focused terminal. |
Snippets and history entries are typed into the terminal without Enter: you see the command at the prompt, can change it and then press Enter yourself. They go to the focused pane only, also in broadcast mode.
Search and keys
Type into the field Search connections, commands or actions… to filter the list. The palette looks at the name of an entry, its detail and its group, and ignores upper and lower case:
- For connections, the detail is the address, for example
deploy@web-01or the bucket of an S3 connection. - For snippets, it's the command.
- The group name counts too:
snippetlists all snippets,historyyour command history,actionall actions.
Without a search, the palette starts with the actions, followed by connections, snippets and history. It shows up to 60 entries at a time.
| Key | What it does |
|---|---|
| ↑ / ↓ | Moves the highlight. Hovering with the mouse does the same. |
| Enter | Runs the highlighted entry. A click does the same. |
| Esc | Closes the palette. |
Command history
When you press Enter at a shell prompt, kaiport notes the command on the line and saves it once the prompt comes back. Commands AI Pilot runs aren't recorded.
- The history is kept per connection, newest first, with up to 300 commands per connection. Running a command again moves it to the top instead of adding a copy. Commands longer than 500 characters aren't saved.
- The palette lists the history of the current tab's connection first and then the commands from your other connections, up to 200 entries in total.
- The history lives in the file
command-history.jsonin the data folder and stays on this computer. Settings → About shows the path of the folder under Data, and Help → Open Data Folder (settings, logs) opens it.
Snippets
Snippets are commands you need again and again, saved under a name.
Create and edit snippets
- Open Settings → Snippets in the start window. ⌘,Ctrl, opens the settings.
- Click Snippet (with the plus sign). A new row appears.
- Enter a Name and the command, for example
docker compose logs -f. A snippet holds one line.
Changes are saved as you type, and all terminal windows see them right away. To remove a snippet, click the trash icon in its row; there is no confirmation.
Insert a snippet
- Press ⌘PCtrlP in the terminal window, or click the ⌘ button in the tab bar.
- Type part of the snippet's name or command.
- Press Enter. kaiport types the command at the prompt of the focused pane.
- Check the command, adjust it if needed, and press Enter to run it.
A few ideas for snippets:
| Name | Command |
|---|---|
| Follow logs | docker compose logs -f |
| Disk usage | df -h |
| Failed services | systemctl --failed |
| Recent errors | journalctl -p err -n 50 --no-pager |
| Reload nginx | sudo nginx -t && sudo systemctl reload nginx |
Examples
- Switch to another server: ⌘PCtrlP, type
prod, Enter – the connection opens in a new tab. - Repeat a long command: ⌘PCtrlP, type a part you remember, such as
rsync, pick the entry from History, adjust it and press Enter. - Split the tab: ⌘PCtrlP, type
split, choose Split right or Split down. - Turn broadcast mode on or off: ⌘PCtrlP, type
send input, Enter. - Open the settings: ⌘PCtrlP, type
settings, Enter.