<- back to runpane.com

glossary

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

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

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

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

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

# 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

related

- runpane CLI docs — the full reference

- runpane CLI landing page — why Pane built a CLI

- What Is MCP? — the protocol CLIs complement

- What Does Agent-Agnostic Mean? — why CLIs enable it

Parsa Khazaeepoul

by Parsa Khazaeepoul

Last updated June 24, 2026

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.MacLinux