glossary

what is a cli (and why do agents love them)?

TL;DR

A CLI is a program you control by typing commands, like git, npm or docker. AI coding agents already spend their day typing commands, so a CLI is the easiest thing for them to use, with no special integration. Good agent CLIs give short, predictable output and explain themselves when asked. That's why Pane's control surface for agents is runpane, a CLI any agent can run.

or
Download*
Windows SmartScreen warningDirect downloads can show a SmartScreen warning while Pane is unsigned. Pane is fully open source, so you can audit the code and build from source yourself.1. Click More info2. Click Run anyway3. Continue the installerThe PowerShell install downloads the official release directly and avoids most browser download friction.npm global install
Paste that in PowerShell.Linux

CLI stands for Command Line Interface. It's a program you control by typing commands instead of clicking buttons. You're probably already using several: git, npm, docker.

gui vs cli

A GUI is built for eyes and a mouse. A CLI is built for typing, which is what agents do.

GUI (graphical)CLI (command line)
how you use itClick buttons, drag thingsType commands
exampleGitHub Desktopgit push
for humansUsually easier to startFaster once you know the commands
for agentsHard to use (need screenshots, clicking)Native (agents already type commands)

why agents love clis

Every agent already has a terminal, so a CLI works with all of them on day one.

AI coding agents spend their entire day typing commands in terminals. That's how they run your code, install packages, use git, and run tests. A CLI fits right into what they're already doing. No special integration needed.

This is why Pane built runpane as a CLI instead of requiring agents to use a custom protocol. Claude Code, Codex, Aider, a bash script, it doesn't matter. If it can type runpane panes create, it can control Pane.

what makes a cli agent-friendly

Structured output, a way to discover commands, short output and no prompts.

Not all CLIs are equally good for agents. Here's what matters:

  • → JSON output. Agents can't reliably parse human-readable tables. A --json flag gives them structured data they can actually work with.
  • → A discovery command. Agents shouldn't need to read docs to find out what commands exist. A command like runpane agent-context tells them everything in one call.
  • → Short default output. Agents have limited context windows. If a command dumps 500 lines of output by default, it wastes tokens. Good agent CLIs keep output short and let you ask for more with flags like --limit 200.
  • → Non-interactive mode. Agents can't answer "Are you sure? (y/n)" prompts. A --yes flag lets them skip confirmations in automated workflows.
  • → Readable before install. Agents should be able to check what a CLI can do before installing it. Pane publishes the full command list at a public URL so agents can look before they commit.

how runpane uses these principles

runpane follows all five rules, so any agent can drive Pane.

# Discovery: what commands exist?
runpane agent-context --json

# Short output: just what's on screen right now
runpane panels screen --panel <id> --limit 80 --json

# Non-interactive: skip the "are you sure?" prompt
runpane panes create --repo active --name "my-task" --yes --json

# Readable before install:
curl -fsSL https://runpane.com/runpane-cli-contract.json

Sources

Corrections
If anything here is wrong or out of date, tell us and we'll fix it and update the date at the top. Open an issue on GitHub
Sources

frequently asked questions

or
Download*
Windows SmartScreen warningDirect downloads can show a SmartScreen warning while Pane is unsigned. Pane is fully open source, so you can audit the code and build from source yourself.1. Click More info2. Click Run anyway3. Continue the installerThe PowerShell install downloads the official release directly and avoids most browser download friction.npm global install
Paste that in PowerShell.Linux

By Parsa Khazaeepoul, co-founder of Pane. .