Skip to main content
Understanding how Slate works will help you use it more effectively. To get the most out of Slate, you’ll need to set up your environment and know how to prompt it well: -> Workspace Setup -> Prompting Guide

Frequently Used Features

Switching Sessions

Use /sessions to switch between existing sessions:

Session Selection Process

  1. Type /sessions and press Enter
  2. Use ↑/↓ arrows to navigate available sessions

Cancellation

Esc

Cancels the current agent step, current input or closes dialogs.

Ctrl+C

Hard interrupt - Stops the cli.

Message Queue

When Slate is busy:
  • Press Enter to perform the current Enter mode action.
  • Press Tab to queue the current message so it runs after the current turn finishes.
Use /enter-mode-next to cycle what Enter does while Slate is working:
  • steer: Enter redirects the current run immediately
  • queue: Enter queues the message for later
  • interrupt: Enter aborts the current run and sends your message next
You can also set the mode directly with /steer, /queue, or /interrupt.

Follow-up messages

Queued messages and steering messages appear above the input box under separate Queued and Steering sections. Queued messages drain automatically (with a short 50ms delay) once the session goes idle.

⌥ + ↑ (Alt+Up)

Pops the latest queued message back into the composer so you can edit it before it’s sent.

Ctrl+X then Q

Opens all queued messages as ----separated markdown blocks in your external editor so you can review and reorder them. Use /queue-edit for the same behavior.

Esc on empty input

While the agent is busy, pressing Esc on an empty input aborts the session and restores all queued messages into the composer.
You can also pre-load a queue from the command line with --queue (-q), passing a markdown file whose messages are separated by a line containing ---:
slate --queue plan.md
The queue persists across navigation — queued messages are stored in draft state and won’t be lost if you switch sessions and come back.

Multi-line Messages

Use Ctrl+L to focus the input box from elsewhere in the UI. Use Ctrl+Enter or Option/Alt+Enter to insert newlines:
> Please help me with:
  1. Parsing this JSON file    [Ctrl+Enter]
  2. Validating the schema     [Ctrl+Enter]
  3. Handling errors properly   [Enter to send / busy action]
Use Ctrl+A or Ctrl+E to jump to the beginning or end of the input context.

Shell Command Input

Execute shell commands directly with !:
!ls              # List files
!pwd             # Show directory
!git status      # Check git status
This will send the command output to Slate directly.

Context Management

Use @filename references:
> Please review @src/main.ts and suggest improvements
Add directories to expand agent’s context:
/workspace add ./src
/workspace add ./tests
/workspace list
Start fresh when switching tasks:
/workspace clear    # Clear workspace directories

Long Prompts

Press Ctrl+X then E to open your external editor for composing complex prompts:
1

Press Ctrl+X then E

Opens your system’s default editor
2

Write your prompt

Compose your detailed message in the editor
3

Save and close

The content automatically returns to Slate
This will not work if your permissions do not allow access to tmp or var as this command uses a temp file for your default text editor

Hotkey reference

Explore Slate’s complete set of commands.