| name | paseo |
| description | Paseo CLI reference for managing agents. Load this skill whenever you need to use paseo commands. |
Agent Commands
paseo ls
paseo ls -g
paseo ls --json
paseo run --mode bypassPermissions "<prompt>"
paseo run --mode bypassPermissions --name "task-name" "<prompt>"
paseo run --mode bypassPermissions --provider claude/opus "<prompt>"
paseo run --mode full-access --provider codex/gpt-5.4 "<prompt>"
paseo run --wait-timeout 30m "<prompt>"
paseo run --wait-timeout 1h "<prompt>"
paseo run --detach "<prompt>"
paseo run -d "<prompt>"
paseo run --output-schema '{"type":"object","properties":{"summary":{"type":"string"}},"required":["summary"]}' "<prompt>"
paseo run --worktree feature-x "<prompt>"
paseo logs <agent-id>
paseo logs <agent-id> -f
paseo logs <agent-id> --tail 10
paseo logs <agent-id> --filter tools
paseo wait <agent-id>
paseo wait <agent-id> --timeout 60
paseo send <agent-id> "<prompt>"
paseo send <agent-id> --image screenshot.png "<prompt>"
paseo send <agent-id> --no-wait "<prompt>"
paseo inspect <agent-id>
paseo stop <agent-id>
paseo archive <agent-id>
paseo archive <agent-id> --force
paseo delete <agent-id>
paseo attach <agent-id>
paseo permit ls
paseo permit allow <agent-id>
paseo permit deny <agent-id> --all
paseo ls --json
paseo ls -q
Loop Commands
Iterative worker loops: launch a worker agent, verify its output, repeat until done.
paseo loop run "<worker prompt>" [options]
--verify "<verifier prompt>"
--verify-check "<command>"
--name <name>
--sleep <duration>
--max-iterations <n>
--max-time <duration>
--provider <provider/model>
--verify-provider <provider/model>
--archive
paseo loop ls
paseo loop inspect <id>
paseo loop logs <id>
paseo loop stop <id>
Schedule Commands
Recurring time-based execution: run a prompt on a cron or interval schedule.
paseo schedule create "<prompt>" [options]
--every <duration>
--cron <expr>
--name <name>
--target <self|new-agent|id>
--max-runs <n>
--expires-in <duration>
paseo schedule ls
paseo schedule inspect <id>
paseo schedule logs <id>
paseo schedule pause <id>
paseo schedule resume <id>
paseo schedule delete <id>
Chat Commands
Asynchronous agent coordination through persistent chat rooms.
paseo chat create <name> --purpose "<description>"
paseo chat ls
paseo chat inspect <name-or-id>
paseo chat post <room> "<message>"
paseo chat post <room> "<message>" --reply-to <msg-id>
paseo chat post <room> "@<agent-id> <message>"
paseo chat post <room> "@everyone <message>"
paseo chat read <room>
paseo chat read <room> --limit <n>
paseo chat read <room> --since <duration-or-timestamp>
paseo chat read <room> --agent <agent-id>
paseo chat wait <room>
paseo chat wait <room> --timeout <duration>
paseo chat delete <name-or-id>
Terminal Commands
Manage workspace terminals: create, inspect, send keystrokes, capture output.
paseo terminal ls
paseo terminal ls --all
paseo terminal ls --cwd ~/dev/myapp
paseo terminal create
paseo terminal create --cwd ~/dev/myapp
paseo terminal create --name "build-runner"
paseo terminal kill <terminal-id>
paseo terminal kill abc123
paseo terminal kill build-runner
paseo terminal capture <terminal-id>
paseo terminal capture <terminal-id> --scrollback
paseo terminal capture <terminal-id> -S
paseo terminal capture <terminal-id> --start 0 --end 10
paseo terminal capture <terminal-id> --start -5
paseo terminal capture <terminal-id> --ansi
paseo terminal capture <terminal-id> --json
paseo terminal send-keys <terminal-id> "ls -la" Enter
paseo terminal send-keys <terminal-id> "echo hello" Enter
paseo terminal send-keys <terminal-id> C-c
paseo terminal send-keys <terminal-id> C-d
paseo terminal send-keys <terminal-id> --literal "raw text"
Special key tokens (interpreted by default, use --literal to send raw):
Enter, Tab, Escape, Space, BSpace, C-c, C-d, C-z, C-l, C-a, C-e
Common pattern — launch a process and interact with it:
id=$(paseo terminal create --name "my-shell" -q)
paseo terminal send-keys "$id" "claude" Enter
sleep 5
paseo terminal capture "$id" --scrollback
paseo terminal send-keys "$id" "Hello!" Enter
sleep 10
paseo terminal capture "$id" --scrollback
paseo terminal send-keys "$id" "/exit" Enter
paseo terminal kill "$id"
Available Models
Claude (default provider):
--provider claude/haiku — Fast/cheap, ONLY for tests (not for real work)
--provider claude/sonnet — Good for most tasks
--provider claude/opus — For harder reasoning, complex debugging
Codex:
--provider codex/gpt-5.4 — Latest frontier agentic coding model (preferred for all engineering tasks)
--provider codex/gpt-5.4-mini — Cheaper, faster, but less capable
Permissions
Always launch agents fully permissioned. Use --mode bypassPermissions for Claude and --mode full-access for Codex. Always specify the model: --provider claude/opus, --provider codex/gpt-5.4, etc. Control behavior through strict prompting, not permission modes.
Waiting for Agents
Both paseo run and paseo wait block until the agent completes. Trust them.
paseo run waits forever by default (no timeout). Use --wait-timeout to set a limit.
paseo wait also waits forever by default. Use --timeout to set a limit.
- Agent tasks can legitimately take 10, 20, or even 30+ minutes. This is normal.
- When a wait times out, just re-run
paseo wait <id> — don't panic, don't start checking logs.
- Do NOT poll with
paseo ls, paseo inspect, or paseo logs in a loop to "check on" the agent.
- Never launch a duplicate agent because a wait timed out. The original is still running.
Composing Agents in Bash
paseo run blocks by default and --output-schema returns structured JSON, making it easy to compose agents in bash loops and pipelines.
Detach + wait pattern for parallel work:
api_id=$(paseo run -d --name "impl-api" "implement the API" -q)
ui_id=$(paseo run -d --name "impl-ui" "implement the UI" -q)
paseo wait "$api_id"
paseo wait "$ui_id"