-
Notifications
You must be signed in to change notification settings - Fork 0
Managing servers
When the JSON source is active, Settings → "Add / edit servers…" opens an editor to manage your connection list from a GUI — no hand-editing of JSON required.
- Add a server with a form: Name, Group, User, Host or IP, Port, and an optional remote command.
- Edit any entry — including renaming it or moving it to another group.
- Reorder entries within a group by dragging them (use the ≡ handle / drag the row).
- Favorite an entry to pin it to a ★ Favorites section at the top of the dropdown — hover the star on a menu row, or use the Favorite toggle in the editor.
- Delete entries; a group with no entries left is removed automatically.
Entries with the same name (e.g. two "AdGuard" with different IPs) are kept distinct — editing, deleting or reordering one never affects the other.
| Field | Notes |
|---|---|
| Name | Display name in the menu (required). Duplicate names are fine. |
| Group | Type a new group or pick an existing one. Empty → "Servers". |
| User | Optional; becomes user@host. |
| Host or IP | Required (in connection mode). |
| Port | Optional; omitted when 22. |
| Remote command | Optional. Runs on the server with a TTY: ssh -t user@host <command> — e.g. htop, tail -f /var/log/syslog. Empty = interactive shell. |
| Raw custom command | Toggle. Runs verbatim and ignores user/host/port — e.g. ssh -J jump root@10.0.0.5. |
| Favorite | Toggle. Pins the entry to the ★ Favorites section at the top of the menu. |
Pin the servers you use most to a ★ Favorites section at the very top of the dropdown:
- Click the star that appears when you hover a row in the menu (filled = pinned), or use the Favorite toggle in the editor.
- The section is expanded by default when it has ≤ 5 entries, and is always collapsible.
- A favorite also still appears in its normal group — pinning is a shortcut, not a move.
- Favorites are stored as
favorite: trueon the JSON entry (only written when set). This works with the JSON source (ShuttleX can't write~/.ssh/config).
To pin a one-click action (monitor, restart, log tail), fill in Remote command:
- It keeps your User / Host / Port and runs
ssh -t user@host '<command>'. - The
-tgives a TTY, so interactive tools likehtoprender correctly. - Leave it empty for a normal interactive shell.
For something the connection fields can't express (jump hosts, tunnels), flip on Raw custom command and write the whole line yourself.
Host, IP and user are validated: values containing whitespace or shell metacharacters are rejected with an inline message. On top of that, every connection target is shell-quoted when the ssh command is built, so server data can't inject shell commands. See also Table import → Safety.
Every change writes the JSON file and snapshots the previous version — see Backups.