Operating system
macOS or Linux
Windows is not supported.
Snorkel Terminal-Bench CLI
macOS + LinuxPython 3.12+The complete command-line path from first install to accepted task—including revisions, reviews, adjudications, status meanings, and common failures.
Operating system
macOS or Linux
Windows is not supported.
Runtime
Docker running
The CLI must reach the Docker socket.
Toolchain
uv + Python 3.12+
uv installs and isolates STB globally.
01 / STB guide
Run these once on a supported machine. Keep Docker Desktop open while using STB.
Install Docker Desktop or Docker Engine first. STB does not start Docker for you.
docker version
docker run --rm hello-worlduv is the package manager used to install the STB command globally.
curl -LsSf https://astral.sh/uv/install.sh | sh
uv --versionThe package is served from Snorkel’s wheel index and requires Python 3.12 or newer.
uv tool install snorkelai-stb \
--find-links https://snorkel-python-wheels.s3.us-west-2.amazonaws.com/stb/index.html \
--python ">=3.12"Restart the terminal if the command is not immediately available.
stb --version
stb --helpGenerate an API key on the Experts platform, then paste it into the terminal prompt.
stb loginView the current credentials or refresh them when expired or exhausted.
stb keys show
stb keys refresh02 / STB guide
The same CLI covers task authors, reviewers, and adjudicators.
Initialize a task, test it with the oracle and real agents, then submit it.
Confirm that the Submitter role is active. You can use the project name or UUID in later commands.
stb projects listChoose the template assigned to your project. The template flag is optional when only one template exists.
stb init my-task-name -p PROJECT_ID -t default
# Milestone task:
stb init my-task-name -p PROJECT_ID -t milestoneEdit the generated task files, run the oracle, then run each target model two or three times to estimate difficulty.
stb harbor tasks start-env -p ./my-task-name -i
stb harbor run -a oracle -p ./my-task-name
stb harbor run -m @openai/gpt-5.5 -p ./my-task-name
stb harbor run -m @anthropic/claude-opus-4-8 -p ./my-task-nameThe CLI does not create rubrics. Open the task on the Experts platform and finish the rubric before submission.
Record actual working time in minutes. STB zips the folder, uploads it, runs checks, and creates the submission.
stb submissions create ./my-task-name -p PROJECT_ID --time 120List project submissions, open one in the browser, download its files, or retrieve the latest feedback.
stb submissions list -p PROJECT_ID --show-folder-names
stb submissions view SUBMISSION_ID
stb submissions feedback SUBMISSION_ID03 / STB guide
Only NEEDS_REVISION permits an update. Other states are informational or final.
| Status | Meaning | Can update? |
|---|---|---|
| EVALUATION_PENDING | Automated checks are running | No |
| NEEDS_REVISION | Reviewer requested changes | Yes |
| REVIEW_PENDING | Waiting for a human reviewer | No |
| ACCEPTED | Task accepted | No |
| OFFERED | An offer was made | No |
| REJECTED | Task rejected | No |
| SKIPPED | Task skipped | No |
04 / STB guide
Use placeholders such as PROJECT_ID and SUBMISSION_ID exactly where shown.
uv tool install snorkelai-stb \
--find-links https://snorkel-python-wheels.s3.us-west-2.amazonaws.com/stb/index.html \
--python ">=3.12" --reinstall --no-cacheConfiguration and credentials are preserved.
uv tool uninstall snorkelai-stb
# Optional: remove local config
rm -rf ~/.config/stb/Removing the config signs this machine out and deletes local settings.
05 / STB guide
Search by an error, command, status, or symptom.
Treat it as a Docker connectivity problem first. Start Docker Desktop, verify the Docker CLI can reach the engine, and retry STB. On macOS, enable “Allow the default Docker socket to be used” in Docker Desktop Advanced settings. E006 is not defined in public STB documentation, so include the full command and error output when escalating.
docker version
docker ps
docker run --rm hello-worldThe uv tool bin directory is probably not in the current shell PATH. Update the shell configuration, then restart the terminal.
uv tool update-shell
# Restart the terminal, then:
stb --versionA submitted folder is linked to an existing submission. Use submissions update instead of creating a second submission.
stb submissions update ./my-task-name --time 60Updates are allowed only in NEEDS_REVISION. Run the list command to confirm the current state. Do not create a replacement submission to bypass the state.
stb submissions list -p PROJECT_IDThe account has reached its AI credential refresh cap. Contact an admin to reset or raise the limit, then run the refresh command again.
stb keys refreshYes, when it is the known model-information warning and the run continues. It does not mean the model execution itself failed. Investigate only if the run stops or reports a separate authentication error.
That is the older milestone layout. Upgrade STB before continuing. The current milestone template uses self-contained subdirectories under steps/.
uv tool install snorkelai-stb --find-links https://snorkel-python-wheels.s3.us-west-2.amazonaws.com/stb/index.html --python ">=3.12" --reinstall --no-cacheNo. Complete the rubric in the Experts platform UI before running submissions create. STB packages and uploads the task but does not include a rubric step.
No. STB currently does not support Windows. Use macOS or Linux rather than relying on a Windows-native setup.
Record the STB version, exact command, full error output, Docker status, operating system, project ID, and submission or review ID. Never paste API keys or AI credentials into Slack or an issue.
stb --version
docker version
stb projects listKeep learning
STB handles the workflow. The Task and Craft guides explain what a strong Terminal-Bench task must contain and how reviewers judge it.