The terminal app puts 100xprompt right next to your shell. It reads your codebase, writes and edits code, runs commands, and streams its work back to you in real time. Everything is keyboard-driven, so you stay in flow.

Launch the app

Run the command from any project directory:
100xprompt
That opens the interactive terminal app in the current folder. You can also point it at a project, pick a model or agent up front, or resume where you left off:
100xprompt ~/code/my-app
Starts in the given directory instead of the current one.
All launch flags are optional. Running 100xprompt with no arguments is the common case - it opens a fresh session in the current directory.

Know the layout

The app is organized into three regions: the conversation where the agent’s work streams in, a sidebar with your sessions and context, and the input area at the bottom where you type. A slim footer shows the current agent, model, and permission mode.
Toggle the sidebar any time with Ctrl+L to give the conversation more room.

Send prompts

Type your request in the input area and press Enter to send it. The agent starts working immediately - you’ll see its reasoning, file edits, and command runs stream into the conversation.
1

Type your request

Describe what you want in plain language: “Refactor the auth middleware to use the new token helper.”
2

Add multiple lines if needed

Press Shift+Enter (or Ctrl+J) to insert a newline without sending, so you can lay out multi-step instructions or paste in code.
3

Send it

Press Enter to submit. Watch the work stream into the conversation.
4

Interrupt if it goes off track

Press Esc to stop the agent mid-run, then refine your prompt and try again.
Press the up arrow in an empty input to recall your previous prompts - handy for tweaking and resending a request.

Attach images and files

Suppose you’re fixing a UI bug and want the agent to see the broken screen. You can bring visual and file context straight into a prompt:
  • Paste an image - copy a screenshot or image to your clipboard and press Ctrl+V. It attaches as [Image 1] and travels with your prompt.
  • Reference files by name - use an @-mention (below) to attach a file’s contents without leaving the keyboard.
  • Drag a file path in - paste a file path and the agent will read it as part of the request.
Image attachments require a model that supports vision. If your current model is text-only, switch to a vision-capable model before attaching images.

Reference files with @-mentions

Type @ in the input to open an autocomplete list of files in your project. Keep typing to filter, use the arrow keys to move, and press Enter (or Tab) to insert the selection. The file is attached to your prompt so the agent has its exact contents. The same @ menu also lets you address a specific agent by name (for example @explore), routing that message to it.
Update @src/server/routes.ts to add a health-check endpoint
@-mentions beat pasting large files - they keep your prompt readable and hand the agent the precise, up-to-date contents.

Run commands with the / menu

Type / at the start of the input to open the command menu with autocomplete. It lists built-in commands, your custom commands, plugin commands, skills, and MCP commands, each with a short description. Filter by typing, navigate with the arrows, and run with Enter. You can also open the command palette any time with Ctrl+P.
Built-in commands, any commands you’ve defined for the project, commands provided by installed plugins, available skills, and commands exposed by connected MCP servers. Entries are tagged so you can tell them apart (for example (skill) or (MCP)).
Yes. Custom commands you create for a project appear in this menu automatically. See Commands to author your own.

Review inline diffs

When the agent edits code, the change renders as a color-coded diff right in the conversation - additions and removals side by side or stacked, so you can read exactly what changed before it’s applied. The layout adapts to your terminal width; you can also force a single-column, stacked style in your settings if you prefer.

Respond to permission prompts

Before the agent does something consequential - editing files, running a shell command, or reaching outside the project - it can pause and ask. The prompt appears inline with clear choices:
ChoiceWhat it does
Allow onceApproves just this action.
Allow alwaysApproves this kind of action for the rest of the session (until you restart).
RejectDeclines the action; the agent adapts and continues.
Whether - and how often - you’re asked is governed by the permission mode, which you can cycle without leaving the keyboard.
1

Default

The agent asks before consequential actions. The safe starting point.
2

Accept edits

File edits are applied automatically; other sensitive actions still prompt.
3

Auto

The agent runs with minimal interruption for a hands-off flow.
4

Plan

The agent proposes a plan without making changes - review before anything runs.
Press Ctrl+X then P to cycle through the modes. The current mode is always shown in the footer.
Broader modes trade oversight for speed. Use Auto and Accept edits in trusted repositories, and lean on Plan when you want to review the approach first. See Permissions for fine-grained rules like allowing specific commands.

Switch agents and models

Change who’s doing the work and which model powers it at any time.
  • Agents - press Tab to cycle to the next agent, Shift+Tab for the previous. Press Ctrl+X then A to open the full agent list.
  • Models - press Ctrl+X then M to open the model list, or use F2 / Shift+F2 to jump between your recently used models. Press Ctrl+T to cycle model variants.
The active agent and model are always visible in the footer, so you know exactly what’s running.

Keyboard shortcuts

The app is built to be driven entirely from the keyboard. Many actions use a leader key - press Ctrl+X, then the next key - shown below as Ctrl+X key.
Every shortcut below is remappable. Set your own bindings under keybinds in 100xprompt.json, including a custom leader key.

Sessions & app

ActionDefault
New sessionCtrl+X N
List sessionsCtrl+X L
Session timelineCtrl+X G
Compact the sessionCtrl+X C
Export session to editorCtrl+X X
Next / previous child sessionCtrl+X / Ctrl+X
Go to parent sessionCtrl+X
Toggle sidebarCtrl+L
List themesCtrl+X T
Open external editorCtrl+X E
Send running task to backgroundCtrl+B
Interrupt the agentEsc
Suspend to shellCtrl+Z
Exit the appCtrl+C / Ctrl+D / Ctrl+X Q

Agents, models & permissions

ActionDefault
Next / previous agentTab / Shift+Tab
List agentsCtrl+X A
List modelsCtrl+X M
Next / previous recent modelF2 / Shift+F2
Cycle model variantsCtrl+T
Cycle permission modeCtrl+X P
Command menu / paletteCtrl+P

Conversation

ActionDefault
Page up / downPageUp / PageDown
Half page up / downCtrl+Alt+U / Ctrl+Alt+D
First / last messageCtrl+G / Ctrl+Alt+G
Copy messageCtrl+X Y
Undo / redo messageCtrl+X U / Ctrl+X R

Input

ActionDefault
Send promptEnter
New lineShift+Enter / Ctrl+J
Paste (text or image)Ctrl+V
Previous / next prompt in history /
Move to line start / endCtrl+A / Ctrl+E
Word forward / backwardAlt+F / Alt+B
Delete word backwardCtrl+W
Delete to end of lineCtrl+K
Undo / redo editCtrl+- / Ctrl+.

Optional vim-style input

Prefer modal editing? Turn on vim keybindings for the prompt input in 100xprompt.json:
{
  "$schema": "https://100xprompt.com/config.json",
  "vim": true
}
With vim mode on, the input supports normal and insert modes so you can navigate and edit prompts with familiar motions, then drop back into insert mode to type.

Run multiple sessions

Suppose you kick off a long refactor and want to start something else while it finishes. Each session is its own conversation with the agent, with its own history and context. Create as many as you need and move between them without losing your place.
  • Press Ctrl+X N to start a fresh session.
  • Press Ctrl+X L to list and jump between existing sessions.
  • Send a long-running task to the background with Ctrl+B, then start something new while it finishes.
  • Sessions can branch into child sessions; move between them with Ctrl+X / Ctrl+X and jump to the parent with Ctrl+X .
Reopen any past session from the terminal with 100xprompt --continue (last session) or 100xprompt --session <id> (a specific one).

Tips

Nearly every action has a default binding - the sidebar, model and agent switches, permission mode, and history navigation all work without the mouse. Learn the leader (Ctrl+X) shortcuts and you’ll rarely reach for anything else.
Referencing files with @ keeps prompts short and hands the agent exact, current file contents - far cleaner than pasting large blocks of code.
Start in Default, switch to Plan when you want to review an approach first, and move to Accept edits or Auto in trusted repos for a faster flow. Cycle any time with Ctrl+X P.
When a session grows large, press Ctrl+X C to compact it and keep the agent focused on what matters.
Remap anything under keybinds in 100xprompt.json, including the leader key, so the app matches your muscle memory.
  • Quickstart: install 100xprompt and run your first session in minutes.
  • Commands: author custom / commands that show up in the menu.
  • Permissions: set fine-grained rules for what the agent can do without asking.

Quickstart

Install 100xprompt and run your first session in minutes.

Commands

Author custom / commands that show up in the menu.

Permissions

Set fine-grained rules for what the agent can do without asking.