GitHub

routing

How pane commands choose a session

Commands that work with panes need a room. ordo takes the most explicit answer first, then falls back to what is already running. If nothing is running, it can create the room before running the command.

--session <id>

Use the session you named. Best for scripts and repeatable commands.

ORDO_SESSION

Inside an ordo pane, the session is already known.

one live room

If only one session is live, ordo uses it. If none is live, it starts one.

sessions

Rooms and saved work

ordo

Open the launcher

The plain command opens the ordo command center.

What it does

Starts ordo in a fresh terminal window and shows the launcher.

What it means for you

Use it when you want to see the room before acting. You can start a session, restore one, and watch panes from the center.

ordo syntax
ordo
examples run
$ ordo
# Open the launcher and choose what to do next.

ordo new

Start a new session

Creates a clean session without going through the launcher picker.

What it does

Opens a fresh ordo session immediately.

What it means for you

Use it when you want a new room now. It is the fastest manual way to start from zero.

ordo new syntax
ordo new
examples run
$ ordo new
# Create a fresh session and open its command center.

ordo restore <id>

Restore a session

Reopens a saved session by id.

What it does

Checks that the session exists, opens ordo, and restores that session into view.

What it means for you

Use it to return to named work. If the daemon is still alive, panes reattach. After a reboot, ordo rebuilds from saved state.

ordo restore <id> syntax
ordo restore <id>
examples run
$ ordo restore centurion-optio
# Open the saved session named centurion-optio.

ordo sessions

List sessions

Prints the saved sessions ordo knows about.

What it does

Lists session ids in your terminal.

What it means for you

Use it before restore or delete when you do not remember the exact name.

ordo sessions syntax
ordo sessions
examples run
$ ordo sessions
# Show saved session ids.

ordo delete <id>

Delete a session

Removes a saved session and stops its panes.

What it does

Asks the daemon to kill panes for the session, then deletes the saved session record.

What it means for you

Use it to clear old rooms from the launcher. After this, restore will not find that id.

ordo delete <id> syntax
ordo delete <id>
examples run
$ ordo delete centurion-optio
# Remove that saved session.

panes

Panes, agents and messages

ordo agents

List panes

Shows the panes in the selected session.

What it does

Prints pane name, live/dead state, foreground program and working directory.

What it means for you

Use it to learn the call signs in the room. Those names are what you send to, read from, and interrupt.

Options

--session <id>
Select a specific live or saved session.
ordo agents syntax
ordo agents [--session <id>]
examples run
$ ordo agents
# Show panes for the active or only live session.

ordo spawn

Open a pane

Creates a new pane, optionally running a known agent CLI.

What it does

Requests a pane from the daemon. It can name the pane, choose the working directory, and launch an agent program.

What it means for you

Use it to add another worker to the room. A named agent pane is easy to address later and gets ordo MCP tools automatically.

Options

--agent <agent>
Start a supported agent program such as claude, codex, gemini or opencode.
--cwd <path>
Start the pane in this working directory.
--name <pane>
Give the pane a stable call sign.
--session <id>
Select a specific live or saved session.
ordo spawn syntax
ordo spawn [--agent <agent>] [--cwd <path>] [--name <pane>] [--session <id>]
examples run
$ ordo spawn --agent claude --name legatus
# Open a Claude pane named legatus.

$ ordo spawn --cwd ~/code/ordo
# Open a shell pane in the repo.

ordo send

Send a message

Sends text to a pane by name.

What it does

Resolves the target pane and delivers the message. If an agent is waiting through MCP, it receives the message there. Otherwise ordo types into the pane and presses Enter.

What it means for you

Use it to delegate from anywhere. With the new no-session flow, a command like this can make a room, open or find legatus, and send the message.

Options

--session <id>
Select a specific live or saved session.
ordo send syntax
ordo send <pane> <text...> [--session <id>]
examples run
$ ordo send legatus "hi"
# Start or find legatus and send a short message.

$ ordo send optio "inspect apps/cli/src/core and report back"
# Give optio a concrete task.

ordo read

Read a pane

Prints recent output from a pane.

What it does

Reads the target pane's captured terminal output and prints it to your shell.

What it means for you

Use it to check work without focusing the window. It is useful from scripts, CI, or another agent pane.

Options

--lines N
Limit output to the most recent N lines.
--session <id>
Select a specific live or saved session.
ordo read syntax
ordo read <pane> [--lines N] [--session <id>]
examples run
$ ordo read legatus --lines 80
# Read the last 80 lines from legatus.

ordo broadcast

Broadcast a message

Sends the same text to every other pane in the session.

What it does

Delivers one message to all peer panes.

What it means for you

Use it for room-wide instructions: wrap up, pause, summarize, switch branch, or stop touching a file.

Options

--session <id>
Select a specific live or saved session.
ordo broadcast syntax
ordo broadcast <text...> [--session <id>]
examples run
$ ordo broadcast "wrap up and leave a short status"
# Ask every pane to finish cleanly.

ordo status

Read or set pane status

Shows statuses, or sets your own status from inside a pane.

What it does

With no text, prints live pane statuses. With text, sets the current pane's status when ORDO_PANE is present.

What it means for you

Use it as the room notice board. Agents can say what they are doing, and you can read the whole room in one command.

Options

--session <id>
Select a specific live or saved session.

Notes

  • Setting a status is for panes. A normal shell can read statuses, but it is not a pane unless ordo launched it.
ordo status syntax
ordo status [--session <id>]
ordo status <text...> [--session <id>]
examples run
$ ordo status
# Show current pane statuses.

$ ordo status "reviewing docs"
# Set your pane status from inside an ordo pane.

ordo interrupt

Interrupt a pane

Sends Ctrl-C to the target pane.

What it does

Resolves the target pane and sends an interrupt signal into it.

What it means for you

Use it when a pane is running the wrong task, hanging, or needs to stop before it changes more files.

Options

--session <id>
Select a specific live or saved session.
ordo interrupt syntax
ordo interrupt <pane> [--session <id>]
examples run
$ ordo interrupt legatus
# Stop the current foreground work in legatus.

agents

Supported --agent names

Pass one of these to ordo spawn --agent. ordo starts it in a pane and gives it the MCP tools automatically.

claude codex kilo kilocode gemini opencode copilot qwen cursor-agent goose amp droid

other

Setup and help

ordo completion

Print completion script

Outputs a shell completion script.

What it does

Prints the completion script for the requested shell. The default follows your platform: PowerShell on Windows, otherwise your login shell (bash or zsh).

What it means for you

Use it once during setup if you want Tab to complete commands, sessions, panes and agent names.

ordo completion syntax
ordo completion [powershell|pwsh|bash|zsh]
examples run
$ ordo completion powershell
# Print the PowerShell completer.

$ ordo completion zsh
# Print the zsh completer.

ordo help

Show help

Prints the short command summary.

What it does

Writes the built-in usage text to your terminal.

What it means for you

Use it when you need the compact command list without opening this page.

ordo help syntax
ordo help
ordo -h
ordo --help
examples run
$ ordo --help
# Show help using the long flag.

internals

Real commands, not normal commands

These exist in the CLI because ordo needs them for agents, completion and window launch. You may see them in configs or process lists, but the public commands are what you type.

ordo mcp

MCP server

Starts the MCP server used by agent panes.

What it does

Runs the tool server that lets agents discover peers, send messages, read panes, broadcast, interrupt and spawn.

What it means for you

You normally do not type this. ordo installs it into supported agent configs so the tools appear when an agent starts.

ordo mcp syntax
ordo mcp

ordo __complete

Completion backend

Returns completion candidates to shell completion scripts.

What it does

Looks at the current command words and prints matching subcommands, panes, sessions or agent names.

What it means for you

Your shell calls this after Tab. It is not a user workflow.

ordo __complete syntax
ordo __complete <words...>

ordo __in-window

Window entry point

Runs ordo inside the terminal window it opened.

What it does

Receives the launch intent after the public command has opened a terminal window.

What it means for you

This is window plumbing. Use ordo, ordo new, and ordo restore instead.

ordo __in-window syntax
ordo __in-window
ordo __in-window new
ordo __in-window restore <id>