Skip to content

The prompt

Keys, completion, shell mode, search, attachments, the queue and the external editor in the terminal prompt.

Keys#

KeyDoes
EnterSend (or queue, while a run is busy)
ShiftEnterNew line
CtrlJNew line, on terminals that do not report Shift+Enter
↑ ↓Previous and next prompt from history, at the start or end of the text
?Search this conversation, on an empty prompt
!Shell mode, on an empty prompt
CtrlVPaste text or an image from the system clipboard
CtrlGEdit the prompt in $VISUAL or $EDITOR
CtrlASelect all
BackspaceRemove the last attachment, on an empty prompt

Completion#

TypeListsInserts
/Commands, then skillsThe command name
@Files and folders in the working directoryThe path
#Your other chats, then this session's artifacts (pull requests, branches, files)A short chat id such as #abc123, or the artifact's URL or path

In the popup, ↑ ↓ move, Enter or Tab picks, Esc closes. On #, Tab switches between chats from this project and from all projects. A chat reference lets the agent read that conversation.

zidane
Typing / lists the commands.
zidane
Typing @src/ lists that folder's files.
zidane
Typing # lists your other chats with their id, age and message count.

Commands#

Built-in slash commands
CommandDescription
/helpList commands.
/reloadReload extensions and rerun their setup.Terminal app only.

Extensions add commands, and you add yours as Markdown files: extensions.

Pin a skill#

/<skill-name> pins a skill to the session: the agent gets its instructions on every run, after restarts too. Run it again to unpin. The footer counts pinned skills (✦ 2 skills). A skill wins over a command with the same name. How skills load: skills.

Shell mode#

! on an empty prompt switches to shell mode. Type a command and press Enter. Backspace at the start of the line leaves it.

  • The command runs in your $SHELL (or /bin/sh), with the terminal's environment, in the session's folder, or on the remote host for a remote session.
  • zidane records it as a shell call, so the agent sees the command and its output on the next turn.
LimitValue
Lines shown in the transcriptThe last 10. Settings › UI › Full shell output shows all.
Output kept for the transcript and the agentThe last 32 KiB
Output before zidane stops the command1 MiB

Search the conversation#

? on an empty prompt, or CtrlS, searches this conversation's messages. Type to filter, ↑ ↓ to move, Enter to open a message, Esc to leave. An open message can be forked, edited, copied or deleted: sessions and forks.

Attachments#

AttachmentWhen you
paste.txtPaste more than 10 lines or 10,000 characters
The fileDrop a file onto the terminal (up to 20 MiB, a larger file inserts its path)
The imagePress CtrlV with an image copied (up to 3.5 MiB)

These limits are the terminal app's own. Settings › Agent › Paste attachments off makes pastes and drops insert plain text.

The queue#

With Settings › Composer › Messages during a run on Queuing (the default), a message sent during a run waits above the prompt until the run ends. On Steering, it goes into the run. AltEnter sends one message the other way. Queue and steering in both apps: queue and steer.

KeyDoes
↑ on an empty promptSelect the queue
↑ ↓Move between queued messages
CtrlEnterSteer: send the selected message into the running turn, between tool calls
BackspaceDrop it
EscBack to the prompt

Inline autocomplete#

Settings › Agent › Inline autocomplete (on by default) suggests the rest of a path or command in dim text. Tab accepts, ↑ ↓ show other suggestions, Esc dismisses.

External editor#

CtrlG opens the prompt in $VISUAL, else $EDITOR. Save and quit to bring the text back. Settings › Agent › Edit prompt in $EDITOR turns the key off. Composer settings and defaults: Settings.