Skip to main content
Commands that talk to the server need a URL and token. See Install and sign in. In the CLI, a job is one run and a task is the whole conversation. See Task lifecycle. Most commands are bellows job <verb> and take a job id.

Examples

Create a task and wait for it

Terminal
job wait exits 0 when the run succeeded. Waiting holds for 300 seconds by default. Use --timeout <seconds> to change it.
Terminal
Terminal
Give one --answer per prompt, in the order job questions lists them. An answer is an option’s label or free text. A multi-select joins its picks with , .
Terminal
Terminal

Tasks and runs

Create and check

Flags for job create: job preflight takes --repo, --executor, --executor-scope, --skill and --connection. The prompt comes from the arguments, --file <path> or --stdin. Give one source. It is sent exactly as written and may be at most 16,384 characters. To pass flags of your own in the prompt, end option parsing with --:
Terminal
Attachments. --attach accepts png, jpg, webp, pdf, docx, txt, md and csv. Each file may be 20 MiB, with 10 files and 50 MiB per request. Files upload before the task is created. If any check or upload fails, nothing is created. See Attachments. Idempotency keys. A key is 8 to 128 letters, digits or . _ : -. Repeat the same command with the same key to recover a write whose answer never arrived. You get the task the first attempt made, not a second one. A different request under the same key is refused. Keys are remembered for 24 hours. Use a new key for a genuinely new task.

List and inspect

task list flags: job list flags: --status <status>, --limit <n> (1 to 200), --repo owner/name. job streams and job read flags: job read also takes --cursor <cursor>, --limit <bytes> and --all to read the whole log.

Wait

Change a task

retry re-runs the old command. follow-up sends new instructions.

Repositories, executors, skills, connections

Auth and help

Output formats

Add --json to any command to print one JSON object on stdout and nothing on stderr, whatever the outcome:
Output
Without it, output is plain text for people. Progress, such as attachment uploads, goes to stderr.

Exit codes

A succeeded run means the run’s verdict, not that the pull request is merged.
The CLI also has bellows batch ... commands. They work only on servers where batches are enabled, so they are not covered here.