Using Flockdeck
Panes and tabs
A pane is one terminal running one agent, or a plain shell. Tabs hold panes, and a tab can hold one or several, split however you like.
Making them
| Keys | What it makes |
|---|---|
| Ctrl+Shift+T | A tab with one agent in it |
| Ctrl+Shift+N | A tab with a plain shell — no agent, no hooks |
| Ctrl+Shift+D | An agent beside the focused pane |
| Ctrl+Shift+E | An agent below the focused pane |
| Split right (shell) | A shell beside the focused pane, from the command palette |
Each of those takes the project's default agent, which keeps making a pane one
keystroke. To choose a different agent or a different model, click the ▾
beside the + that opens a new tab, or take the two picker entries out of the
command palette; Agents and models is the page for all of it. The pane header then names what it got, beside the branch.
A shell pane is an ordinary terminal in the same directory. It is there for
the git, npm or go command you want to run yourself while the agents
work, and for watching a build — which is why it can be split in beside an
agent as well as opened in a tab of its own.
Working in them
Click a pane to give it the keyboard. Everything you type goes to the agent in it — that is the point, and it is why almost all of this application's own shortcuts are on Ctrl+Shift, which agents do not use.
- Drag the divider between two panes to resize them — or reach it with Tab and use the arrow keys, and Home to share the room equally again.
- Ctrl+Shift+Z gives the focused pane the whole tab, and gives it back. The others keep running; they are simply not on screen.
- Ctrl+Shift+F searches the focused terminal's scrollback.
- Select text with the mouse and Ctrl+C copies it; Ctrl+V pastes. With nothing selected, Ctrl+C goes to the agent, as it always did. Keyboard shortcuts has the rest, and macOS.
- Ctrl+Shift+W closes a pane and stops the agent in it, without asking.
It also ends what was started in the pane and is still running there: a
shell's background jobs, a server an agent left going, a job that ignores
the hangup. A program with windows of its own — a browser, an editor
started with
code .— stays open, as it does when a terminal is closed, and so does what it runs, such as the terminals in that editor. On macOS a background job that ignores the hangup (nohup) keeps running. Closing a tab's last pane closes the tab, and the×on a tab closes every pane in it.
The buttons in a pane header do the same things: fan out, include in broadcast, restart, zoom, close.
Naming a tab
A tab names itself after the first thing its agent is asked. To call it something else, double-click it, press F2 while the keyboard is on it, or choose Rename this tab… in the command palette; a name you give it stays, whatever the agent is asked next. To go back, rename it to an empty name or choose Use the automatic title in the same dialog: the tab takes the title it would have had if it had never been renamed. Either way the name is kept with the layout.
Restarting
Restart pane, in the command palette and in the pane header, stops the process and starts it again in the same directory, with the same agent and model — resuming the same conversation where that agent can, because a pane and its conversation are one identity. Use it when an agent is stuck or has wedged itself, not to clear the screen.
A pane whose process exits covers its terminal with a Restart button rather than leaving a dead black rectangle.
Font size
Ctrl+= and Ctrl+- change the terminal font size for every pane; Ctrl+0 puts it back.