Install
In your terminal, run:~/.empirical/bin to your shell PATH. To make it available without it, run:
Agent skill
The Empirical skill teaches compatible local coding agents how to use theempirical command.
The installer suggests this as a next step after install. Run it with exactly one of --global or --project:
empirical skill install --help for all options.
The SKILL.md file is managed by the CLI: installs and upgrades overwrite it, so don’t edit it directly. To customize the skill for your project, add a CUSTOM.md file in the same directory — the skill instructs agents to read it, and the CLI never touches it.
Commands reference
- User auth
empirical loginauthorizes the CLI with Empirical.empirical logoutclears local CLI authorization.empirical whoamiprints the current authenticated account.
- Version and upgrade
empirical versionprints the installed CLI version.empirical upgradeupgrades to the latest published CLI version.
- Agent skill
empirical skill installinstalls the EmpiricalSKILL.mdfor local coding agents, overwriting any existing copy. Requires exactly one of--globalor--project.
- Sessions
empirical session "<prompt>"creates a session and sends a prompt.empirical session --id <id> "<prompt>"sends a prompt to an existing session.empirical session -x "<prompt>"creates a session, waits for the agent response, and prints only the final assistant text.empirical session -x --id <id> "<prompt>"sends to an existing session, waits for the agent response, and prints only the final assistant text.echo "<prompt>" | empirical session --execute --id <id>reads the prompt from stdin.empirical session listlists recent sessions.empirical session status <id>shows the current agent and sandbox state, queued messages, latest assistant response, branches, and pull requests.empirical session activity <id> --since 1hprints durable activity in chronological order with RFC 3339 UTC timestamps. Add--before <time>to select a bounded interval; both options accept relative durations or RFC 3339 timestamps.empirical session listen <id>follows live session activity. Add--since 1hto replay recent durable activity before following live events.empirical session listen <id> --until idle --timeout 300waits until the agent is idle and no messages remain queued.- Add
--project <slug>only when you need to choose a specific project.
- Git
empirical git setupconfigures git to authenticate togit.empirical.runwith your CLI login, via a credential helper scoped to that host. Run it once per machine.empirical clone [directory]clones a project’s test repository fromgit.empirical.run, running the setup above first if needed. Without a directory, git creates./<project-slug>.- Add
--project <slug>only when you need to choose a specific project; with several projects the error lists the available slugs. - After setup, plain
git clone https://git.empirical.run/<project-slug>.gitworks too. - With your login you can fetch and push; pushes to the project’s default branch are rejected. Project API keys are read-only. Without the CLI (for example in CI), use a project API key as the HTTP password.
- API
empirical api <endpoint>calls any Empirical API endpoint using your CLI login token.- Use
--project <slug>to select a project without supplying anx-project-slugheader. Do not combine it withx-project-idorx-project-slugheaders. - Add repeatable
-q, --query <key=value>options for URL query parameters. Values are URL-encoded automatically, and repeated keys append to any parameters already in the endpoint. Query parameters alone keep the request method as GET. - Example:
empirical api api/slack/threads --project flash -q entity_type=test_run -q entity_id=131825. - Use
--jq <expression>to filter JSON output (requires jq). The former-qshorthand for jq filtering now means--query; update existing commands to use--jq. empirical api api/endpointslists the endpoints available to your authentication method.
Telemetry
The CLI collects usage telemetry to help improve the product. Command arguments and flag values are never collected. To opt out, set theDO_NOT_TRACK environment variable.