Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/earendil-works/pi/llms.txt

Use this file to discover all available pages before exploring further.

Pi’s default mode is an interactive TUI (terminal user interface). When you run pi without flags, you land in this interface. Understanding the layout and controls will help you work more efficiently.

Layout

The interface is organized top-to-bottom:
  • Startup header — shows shortcuts (/hotkeys for all), loaded AGENTS.md files, prompt templates, skills, and extensions
  • Messages — your messages, assistant responses, tool calls and results, notifications, errors, and extension UI
  • Editor — where you type; the border color indicates the current thinking level
  • Footer — working directory, session name, total token/cache usage, cost, context usage, and current model
The editor can be temporarily replaced by other UI, such as the built-in /settings panel or custom UI from extensions.

Editor

On Windows Terminal, use Ctrl+Enter instead of Shift+Enter to insert a new line.
FeatureHow
File referenceType @ to fuzzy-search project files
Path completionTab to complete paths
Multi-line inputShift+Enter to insert a new line
Paste imagesCtrl+V (or Alt+V on Windows), or drag onto the terminal
Run a command and send output to LLM!command
Run a command without sending output!!command
Standard editing keybindings (delete word, undo, kill ring, etc.) are also available. See keybindings for customization.

Commands

Type / in the editor to open the command palette. Extensions can register custom commands, skills appear as /skill:name, and prompt templates expand via /templatename.
CommandDescription
/login, /logoutOAuth authentication
/modelSwitch models
/scoped-modelsEnable or disable models for Ctrl+P cycling
/settingsThinking level, theme, message delivery, transport
/resumePick from previous sessions
/newStart a new session
/name <name>Set the session display name
/sessionShow session info (file, ID, messages, tokens, cost)
/treeJump to any point in the session and continue from there
/forkCreate a new session from a previous user message
/cloneDuplicate the current active branch into a new session
/compact [prompt]Manually compact context; optional custom instructions
/copyCopy the last assistant message to clipboard
/export [file]Export the session to an HTML file
/shareUpload as a private GitHub gist with a shareable HTML link
/reloadReload keybindings, extensions, skills, prompts, and context files
/hotkeysShow all keyboard shortcuts
/changelogDisplay version history
/quitQuit Pi

Keyboard shortcuts

Run /hotkeys inside Pi for the full list. All shortcuts can be customized in ~/.pi/agent/keybindings.json.
KeyAction
Ctrl+CClear the editor
Ctrl+C twiceQuit
EscapeCancel or abort the current operation
Escape twiceOpen /tree
Ctrl+LOpen the model selector
Ctrl+PCycle scoped models forward
Shift+Ctrl+PCycle scoped models backward
Shift+TabCycle the thinking level
Ctrl+OCollapse or expand tool output
Ctrl+TCollapse or expand thinking blocks
Ctrl+GOpen in external editor ($VISUAL or $EDITOR)
Ctrl+ZSuspend to background (Linux/macOS; not available on native Windows)

Thinking level cycling

Press Shift+Tab to cycle the thinking level: offminimallowmediumhighxhighoff. The editor border changes color to reflect the active level. You can also set a default level with defaultThinkingLevel in settings.

Message queue

You can submit messages while the agent is actively working. Pi queues them and delivers them in order.
KeyBehavior
EnterQueue a steering message — delivered after the current tool calls finish
Alt+EnterQueue a follow-up message — delivered only after the agent finishes all work
EscapeAbort the current operation and restore queued messages to the editor
Alt+UpRetrieve queued messages back to the editor without sending
On Windows Terminal, Alt+Enter triggers fullscreen by default. Remap it in your terminal settings so Pi can receive the follow-up shortcut.
Delivery behavior is configurable in settings:
  • steeringMode"one-at-a-time" (default) or "all" (deliver all queued steering messages at once)
  • followUpMode"one-at-a-time" (default) or "all" (deliver all queued follow-ups at once)

Build docs developers (and LLMs) love