CLI reference¶
Every autolab command, argument, and option. This page is generated directly
from the CLI, so it never drifts from the version you've installed. For the same
text in your terminal, run:
New here? Start with the Quickstart or the task-focused guides — they show these commands in context.
autolab¶
autolab — git-for-state, slurm-for-compute CLI for the control node.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--url |
text | Control-node URL (overrides AUTOLAB_URL / profile). | None |
--profile |
text | Named profile from ~/.config/autolab/config.toml. | None |
-q, --quiet |
boolean | Print only essential results. | False |
-v, --verbose |
boolean | Stream raw git output. | False |
--version |
boolean | Show the version and exit. | False |
--help |
boolean | Show this message and exit. | False |
autolab cancel¶
Cancel a queued or in-flight job.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab checkout¶
Reset the working tree to an experiment's code (or main).
Fetches first so the target commit is present locally; if you have uncommitted changes it explains how to keep them (submit) or discard them (--force).
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
-f, --force |
boolean | Discard local changes when switching. | False |
--help |
boolean | Show this message and exit. | False |
autolab clone¶
Clone a project into a workspace. PROJECT is owner/project-slug.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab diff¶
Show what submit would send — the changes vs the experiment you're in.
Wraps git diff against the parent experiment's commit: the full patch by
default (new files included), or a --stat summary of files + added/removed
lines. autolab's own .autolab/ control dir is never shown.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--stat, --stats |
boolean | Show a ±LOC summary instead of the full patch. | False |
--help |
boolean | Show this message and exit. | False |
autolab get¶
Fetch logs / traces / artifacts for an experiment.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab init¶
Create a project and link the current directory as its workspace.
First asks whether to use the current directory's code as the source, then collects the research goal:
• using code → name, run command, objective, env setup, constraints, termination • empty → name, objective, constraints, termination (the orchestrator fills run + setup once there's code)
The slug is the slugified name (deduped to …-v2 if taken). Every project starts
on your AutoLab platform key. Fully scriptable with flags + -y (headless /
LLM use); pass --start to go live now.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--name |
text | Project name (the slug is derived from it). | None |
--source |
text | Git URL to clone (implies using code). | None |
--empty |
boolean | Start an empty project (ignore any local files). | False |
--description |
text | Short project description. | `` |
--objective |
text | Research objective — what to optimize. | `` |
--run |
text | How to run an experiment (code projects). | `` |
--prep |
text | Environment setup (code projects, e.g. 'uv sync'). | `` |
--constraints |
text | Constraints the agent must respect. | `` |
--stop-policy |
text | Termination condition (free text). | `` |
--max-cost |
float | Hard $ cap on agent spend. | None |
--start |
boolean | Start the agent immediately. | False |
-y, --yes |
boolean | Non-interactive: use flags, don't prompt. | False |
--help |
boolean | Show this message and exit. | False |
autolab keys¶
List your API keys (subcommands: add, use).
New projects default to your AutoLab platform key; keys use switches a
project to one of your own provider keys.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab keys add¶
Store a new provider API key on your account.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--provider |
choice (anthropic | openai | google | openrouter | xai | deepseek | minimax | moonshot | glm | qwen) |
Key provider. | None |
--name |
text | Display name for the key. | None |
--value |
text | Secret key value (omit for a hidden prompt). | None |
--limit |
float | Spending limit (USD). | None |
--help |
boolean | Show this message and exit. | False |
autolab keys use¶
Assign one of your API keys to the current project. KEY = id-prefix or name.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--model |
text | Also set the model (e.g. 'openai/gpt-5.5'). | None |
--help |
boolean | Show this message and exit. | False |
autolab log¶
Show experiment history (newest first); → marks the experiment you're in.
Includes queued and pending experiments. The commit column stays empty
until the code is final — the agent may still author or revise it.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--limit |
integer | Max rows to show. | 30 |
--help |
boolean | Show this message and exit. | False |
autolab login¶
Sign in and store an API token for this host.
Default is a browser sign-in. --token <tok> stores a token you already
have (e.g. printed by autolab token or created on the dashboard's Access
Tokens page) without a browser — ideal for an agent driving a remote box.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--token |
text | Store this API token directly (no browser) — for headless / SSH / CI. | None |
--help |
boolean | Show this message and exit. | False |
autolab logout¶
Remove the stored token for this host.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab nodes¶
List execution nodes (subcommands: add, rm).
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab nodes add¶
How to attach a machine as an execution node for this project.
A node clones the project's private code, so it registers with a researcher+
token — the runner reads AUTOLAB_TOKEN / serve --token / your stored
login.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab nodes rm¶
Remove an execution node (request shutdown + deregister). NODE = id/name.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab open¶
Open the project dashboard (or an experiment page) in your browser.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab pause¶
Pause the agent (the autonomous loop). Resume with autolab start.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab projects¶
List the projects you can access (for picking one to clone).
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab pull¶
Fetch the latest and fast-forward.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab serve¶
Run this machine as an execution node for a project.
The node clones the project's private code, so it must register with a
researcher+ token: --token, else AUTOLAB_TOKEN, else your stored
autolab login. On a remote box an agent typically does
AUTOLAB_TOKEN=$(autolab token) ... autolab serve.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--project |
text | Project slug (owner/slug) to run jobs for. | Sentinel.UNSET |
--name |
text | Node name (defaults to hostname). | None |
--poll-interval |
integer | Poll interval in seconds. | 5 |
--token |
text | Researcher+ token to register with (else AUTOLAB_TOKEN / stored login). | None |
--autolab-home |
text | Root dir for workspaces (default ~/.autolab). | None |
--help |
boolean | Show this message and exit. | False |
autolab settings¶
Show or edit project settings (subcommands: collab, delete).
With any flag, edits those fields then shows. Pass an empty string to clear a
field, e.g. autolab settings --constraints "".
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--name |
text | Display name. | None |
--objective |
text | What to optimize (the research objective). | None |
--constraints |
text | Constraints the agent must respect. | None |
--run |
text | How to run an experiment. | None |
--prep |
text | Environment prep (e.g. 'uv sync'). | None |
--description |
text | Short project description. | None |
--source |
text | Source repo URL. | None |
--help |
boolean | Show this message and exit. | False |
autolab settings collab¶
List collaborators (subcommands: add, rm, role).
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab settings collab add¶
Add USERNAME (a GitHub username) as a collaborator; re-run to fix the role.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--role |
choice (admin | researcher | viewer) |
Role to grant. | researcher |
--help |
boolean | Show this message and exit. | False |
autolab settings collab rm¶
Remove USERNAME from the project.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab settings collab role¶
Change USERNAME's role.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab settings delete¶
Permanently delete this project on the control node (owner only).
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--yes |
boolean | Skip the confirmation prompt. | False |
--help |
boolean | Show this message and exit. | False |
autolab start¶
Start the agent on this project — and resume it after autolab pause.
The first start takes the project live: it seeds the baseline from your code
(or, for an empty project, lets the agent author from your objective) and starts
the autonomous loop. After that, start just resumes the paused loop.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab status¶
Where you are — the project (agent, nodes, experiment counts) and the run you're in.
Start/pause the agent with autolab start / autolab pause; toggle idea
generation with autolab status autogen on|off.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab status autogen¶
Show or toggle automatic idea generation (autogen on / autogen off).
When on, the agent proposes new experiments on its own; when off, it only runs what you queue. With no argument, prints the current agent + ideas state.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab submit¶
Queue an experiment. With code it snapshots + pushes the working tree; the control node fills in any blank fields (name/description now, run command + code at pickup).
By default every field you provide (including your pushed code) is locked — the
research agent fills only the blanks and never overwrites your values. Pass --soft
to let the agent refine what you set.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
-m, --message |
text | Description / idea for this experiment. | `` |
--name |
text | Experiment name (derived by the agent if omitted). | `` |
--run |
text | Run command (agent fills it if omitted). | `` |
--setup |
text | Setup command (e.g. 'uv sync'). | `` |
--node |
text | Node constraint (e.g. '8xH100'). | `` |
--from |
text | Base ref to branch from. | None |
--priority |
float | Queue priority. | None |
--no-code, --nocode |
boolean | Submit an idea only — ignore code changes; the agent writes the code. Requires -m. | False |
--soft |
boolean | Let the agent edit the fields you set (default: your fields are locked). | False |
--help |
boolean | Show this message and exit. | False |
autolab token¶
Print the active token; subcommands manage PATs (create, ls, revoke).
Bare autolab token prints the token you're authenticated with — handy for
bootstrapping a remote exec node without a browser:
TOK=$(autolab token create --name gpu-box) # a fresh, revocable token
ssh gpubox "AUTOLAB_TOKEN=$TOK autolab serve --project alice/nanochat"
Prefer a named token create over the bare print so you can revoke just that
one later. A token acts as you on every project you can access — pipe it,
don't paste it where it'll be logged.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab token create¶
Mint a new personal access token. Prints the token (once) to stdout.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--name |
text | Name for the token (prompted if a TTY). | None |
--help |
boolean | Show this message and exit. | False |
autolab token ls¶
List your personal access tokens.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab token revoke¶
Revoke a personal access token. REF = id-prefix or name.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |
autolab whoami¶
Show the active host and signed-in user.
Usage:
Options:
| Name | Type | Description | Default |
|---|---|---|---|
--help |
boolean | Show this message and exit. | False |