Skip to main content
Reference files, send messages, and run commands from the interactive input box. Plan mode, goals, and scheduled tasks provide different controls for ongoing work. Before starting a task, check /permissions; see Permissions and safety. Enter sends a message, Shift+Enter adds a newline, and Esc interrupts output. Type / to select a command. Full lists are in Keyboard shortcuts and Slash commands.

File references

Type @ to search project files and press Tab to complete paths. This works in Git and non-Git directories and on the command line:
Referenced files and files read by tools may enter model context. Check for keys, personal information, and sensitive business data before referencing them.

Pasting images

Use Ctrl+V to paste an image, or Alt+V on Windows / WSL. Supported terminals also let you drag in an image path.
Select a model that accepts images. By default, large images are resized to within 2,000 px to reduce input size; adjust this in [images]. Inline terminal display and sending images to a model are separate capabilities. Disabling display does not prevent image transmission.

Direct shell commands

! runs a local command and sends its output to the model; !! runs it without sending the output. Each prefix applies to one command without switching modes. Commands entered this way do not support background execution. Output appears as a card; long output collapses automatically and can be expanded with Ctrl+O.

During streaming output

  • Enter queues a message for delivery after the current assistant turn’s tools finish.
  • Esc interrupts the turn and restores queued messages to the input box.
  • Alt+↑ retrieves queued messages; use Alt+Q on Windows / WSL.
  • Ctrl+O collapses or expands tool output.
Configure steeringMode and followUpMode in settings. Follow-up delivery has no dedicated shortcut by default.

External editor

Ctrl+G edits the current input in an external editor; the action is app.editor.external. Selection order is externalEditor, VISUAL, EDITOR, then Notepad on Windows or nano elsewhere.

Plan mode

/plan toggles the mode, /plan <task> starts planning a task, and step --plan starts in Plan mode. The model investigates and writes a plan before implementation. In Plan mode, file edits are limited to the plan file. Shell commands remain subject to the normal permission policy. Approving the plan exits Plan mode and begins implementation.

Goal mode

Goal mode drives multiple turns until the goal is achieved or stopped manually. It suits hours-long tasks. Keep the Step Code process running during the task. The status line shows active time, such as Goal: active · 12m 3s, counting only time when the goal is active.

Manage scheduled tasks

Scheduled tasks use five-field cron expressions. Durable tasks are saved to .stepcode/cron/tasks.json in the project and require project trust. Durable tasks require the Step Code process to remain running. See Agents and subagents for multi-agent orchestration and authorization. After creating a task, use /cron to check its schedule and instructions. Remove tasks that are no longer needed.