tatbot command reference¶
Offline CLI workflows for public development and replay. Maintainers can inspect the complete machine-readable schema with tatbot schema --json.
tatbot [global flags] <noun> [verb] [args] [-- passthrough args]
Global flags may appear anywhere before the first --, as --flag value or --flag=value, unless a declared command option owns that spelling: --json, --dry-run, --explain, -q, -v. Stating one twice with different values is a usage error.
--json execution is supported only by commands declaring structured output in schema --json; all commands support JSON plans and explanations. Use --output FILE for draw report destinations. Backend flags on structured commands require --; tokens after it are preserved.
CLI-owned exit codes are below. Executed backends and SSH retain their own exit codes and error output; backend failures are not remapped to 1.
Exit codes¶
code |
meaning |
|---|---|
0 |
ok |
1 |
underlying tool failed |
2 |
usage error |
3 |
safety gate refused |
4 |
wrong node for this verb |
5 |
hardware unreachable |
6 |
busy |
Safety tiers¶
tier |
meaning |
gates |
|---|---|---|
|
files only |
— |
Verbs¶
tatbot completion — generate opt-in shell completion¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
native |
print Bash completion generated from canonical command metadata |
tatbot body — immutable human body model assets and cache audit¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
bake genuine articulated SOMA poses into the shared Inkmap and simulation catalog ( |
|
|
this checkout |
native |
copy a pinned, pre-downloaded MHR and SOMA allowlist into an explicit verified cache |
|
|
this checkout |
native |
read and hash every byte in an explicit MHR and SOMA cache without deserializing it |
tatbot teleop — leader→follower teleoperation¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
export measured follower tip poses and host read timestamps from a flight log ( |
|
|
this checkout |
|
loop-timing stats from a .wxtl without a GUI |
tatbot rollout — analyze policy rollouts and recorded data¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
did the pen draw the shape, did the loop keep time ( |
|
|
this checkout |
|
no-robot checks of the serving path (wire bench / plausibility) ( |
|
|
this checkout |
|
the input/action contract stored with a checkpoint ( |
tatbot sim — scenario, dataset, evaluation and render tools¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
the named distributions the factory can generate |
|
|
this checkout |
|
generate one named distribution into a LeRobot v3 dataset ( |
|
|
this checkout |
|
materialize a bounded artwork suite of posed-body scenarios ( |
|
|
this checkout |
|
compile one Inkmap placement into a replayable posed-body scenario ( |
|
|
this checkout |
|
render audited privileged Inkmap perception labels on CPU ( |
|
|
this checkout |
|
audit an existing privileged Inkmap perception corpus ( |
|
|
this checkout |
|
write and audit the full Inkmap synthetic-pilot ledger ( |
|
|
this checkout |
|
audit an existing Inkmap synthetic-pilot ledger ( |
|
|
this checkout |
|
produce browser/simulator Inkmap mapping and mask parity evidence ( |
|
|
this checkout |
|
generate and trace immutable Inkgen SVG artifacts before scenario compilation ( |
|
|
this checkout |
|
expand a frozen artwork library into reproducible scenario recipes ( |
|
|
this checkout |
|
read a recipe ledger and audit its splits without any network ( |
|
|
this checkout |
|
resolve a typed InkLang request into one replayable posed-body scenario ( |
|
|
this checkout |
|
qualify shared artwork paint, duration, and simulated deposition ( |
|
|
this checkout |
|
score judged expert datasets and write a screen report ( |
|
|
this checkout |
|
run a checkpoint through a local ManiSkill worker and the async wire ( |
|
|
this checkout |
|
preview what the factory would generate, no dataset written ( |
|
|
this checkout |
|
audit tool IK reach over the domain-randomization distribution, headless ( |
|
|
this checkout |
|
path-traced takes of a distribution for showing outside the lab ( |
|
|
this checkout |
|
build an HTML viewer over render directories with system Python ( |
|
|
this checkout |
|
audit a generated dataset or a night of shards ( |
|
|
this checkout |
|
extract stills and short clips from a dataset or shards ( |
|
|
this checkout |
|
materialize five typed artwork previews for the Inkmap pose gallery ( |
tatbot travel — travel demo previews and synthetic tracing episodes¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
native |
render a travel episode and optional camera/hand inspection views without a dataset ( |
|
|
this checkout |
native |
generate travel LeRobot episodes with canonical SOMA surface-address labels ( |
|
|
this checkout |
native |
scan the practice forearm with the blue wrist camera and follow a stroke of ink at the laser’s hover ( |
tatbot calib — native arm measurements and retained overhead registration¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
fit an unadopted overhead registration from original native holds and shared geometry |
tatbot vision — offline vision processing and calibration¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
compare filters on a retained raw scan burst |
|
|
this checkout |
|
compare retained board depth with independently measured fiducial size |
|
|
this checkout |
|
generate a stencil frame: the coded flower-of-life (default) or the legacy floral frame, with print sheets |
|
|
this checkout |
|
export a tracking manifest for existing generated stencil artwork |
|
|
this checkout |
|
print sheets for a stencil: millimetre rulers, a pattern and size label, stencil-app PNG and paper PDFs |
|
|
this checkout |
|
replay known stencil tracking and optional advisory surface candidates |
|
|
this checkout |
|
observe known stencils from an existing visiond owner socket |
|
|
this checkout |
|
score a stencil design and tracker in mm on seeded 2-D transfer scenes (tier 0) |
|
|
this checkout |
|
render the wrist-tag print sheet ( |
|
|
this checkout |
|
plane-route hand-eye for the wrist D405s: fit depth planes against the touched-off paper ( |
tatbot design — an image or an SVG to a portable design, without a browser¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
ask the generator for one tattoo-flash PNG (starting it if it is not up) ( |
|
|
this checkout |
|
retired tracer: use drawingbot generate and import acquired artwork.json ( |
|
|
this checkout |
|
place one artwork on a plane or cylinder chart as a portable design ( |
|
|
this checkout |
|
validate a design with the browser reader and report its material footprint ( |
tatbot drawingbot — DrawingBotV3 stroke experiments and preference review¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
generate one physical DBV3 drawing with verified settings and a saved native recipe |
|
|
this checkout |
|
verify and replay native SVG acquisition only, without ROS compilation |
|
|
this checkout |
|
build, smoke-test or run the private mounted-app acquisition container |
tatbot inkmap — ground InkLang placements and preview tattoos on canonical bodies¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
the tattoo preview app on this machine ( |
|
|
this checkout |
|
resolve InkLang placement text to a canonical rest-surface anchor as JSON |
tatbot inkgen — generate tattoo artwork for Inkmap¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
run or resume a resumable artwork generation job ( |
|
|
this checkout |
|
read a generation job’s ledger: requested, accepted, refused, failed, duplicate ( |
tatbot profile — inspect and validate hardware profiles¶
verb |
tier |
runs on |
wraps |
summary |
|---|---|---|---|---|
|
|
this checkout |
|
the resolved hardware profile: backend, arms, e-stop, provenance |
|
|
this checkout |
|
the profiles this checkout carries |
|
|
this checkout |
|
can the resolved profile drive hardware? (exit 3 if not) |
Compatibility spellings¶
These deprecated forms translate to the same canonical handler. They warn once on stderr. They remain for at least 30 days and two reviewed releases after 2026-09-05, whichever is longer; removal also requires consumer review and a release note.
deprecated form |
canonical form |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Bash completion¶
Generate and source completion explicitly (Bash 4+):
tatbot completion bash > /tmp/tatbot-completion.bash
source /tmp/tatbot-completion.bash
Generation prints shell code; it does not install anything or edit shell startup files. Completion is generated from the canonical commands, options and choices.
Examples¶
tatbot completion bash
tatbot body export --python '<path>' -- --help
tatbot body bootstrap --spec config/body-models/mhr-soma-v1.json --cache-dir '<path>' --source-dir '<path>'
tatbot body audit --spec config/body-models/mhr-soma-v1.json --cache-dir '<path>'
tatbot teleop poses flight.wxtl --out '<path>' --urdf urdf/tatbot.urdf --workspace config/workspace.yaml
tatbot teleop analyze '<path>'
tatbot rollout analyze '<path>'
tatbot rollout bench wire -- --help
tatbot rollout contract '<path>'
tatbot sim list
tatbot sim generate paper-draw -- --out-dir '<path>' --num-episodes 8
tatbot sim sample --count 3 -- --output-dir '<path>'
tatbot sim compile config/inkmap/examples/forearm-placement-v6.json -- --pose reclined-left-arm-supported --output '<path>'
tatbot sim perception '<path>' -- --output-dir '<path>'
tatbot sim perception-audit '<path>'
tatbot sim pilot-plan -- --output-dir '<path>' --seed 42
tatbot sim pilot-audit '<path>'
tatbot sim parity -- --output '<path>'
tatbot sim materialize -- --help
tatbot sim recipes -- --help
tatbot sim recipes-status -- --help
tatbot sim resolve 'a dbv3-orbit on the left forearm' -- --design-id dbv3-orbit --size-mm 30 30 --seed 42 --output-dir '<path>'
tatbot sim qualify-artwork -- --output-dir '<path>'
tatbot sim eval dataset '<path>' -- --output-dir '<path>'
tatbot sim eval policy -- --client-mode hold-control --output-dir '<path>'
tatbot sim preview -- --help
tatbot sim reach -- --help
tatbot sim cinematic -- --help
tatbot sim viewer '<path>' '<path>'
tatbot sim audit -- --help
tatbot sim samples '<path>' -- --out '<path>'
tatbot sim showcase-artwork -- --output-dir '<path>'
tatbot travel preview -- --help
tatbot travel generate -- --help
tatbot travel trace -- scan
tatbot calib register-fit --python '<path>' --arm blue --capture '<path>' --bundle '<path>' --setup-id table-setup --out '<path>'
tatbot vision depth compare --capture capture-1.npz --settings filters.json
tatbot vision board witness --python '<path>' --capture capture.json --inventory fiducials.json --measurement measurement.json --color-sensor wrist_color --out '<path>'
tatbot vision stencil generate --seed 101 --output '<path>'
tatbot vision stencil reference --settings stencil/settings.json
tatbot vision stencil print --seed 101 --output '<path>'
tatbot vision stencil replay --reference stencil/tracking.json --instance skin-a --frames frames.jsonl --output '<path>'
tatbot vision stencil observe --reference stencil/tracking.json --instance skin-a --socket '<path>' --sensor rgb --output '<path>'
tatbot vision stencil bench --seed tatbot-42 --tracker sift
tatbot vision tags print -- --help
tatbot vision handeye d405 --self-test
tatbot design generate 'a swallow carrying a rose' --out '<path>'
tatbot design trace
tatbot design place '<path>' --target cylinder --radius-mm 40 --canvas-mm 80 110 --out '<path>'
tatbot design check '<path>'
tatbot drawingbot generate '<path>' --out '<path>' --app '<path>'
tatbot drawingbot export '<path>' --out '<path>' --app '<path>'
tatbot drawingbot container build --out '<path>'
tatbot inkmap dev
tatbot inkmap resolve --prompt 'left upper inner forearm'
tatbot inkgen batch --output-dir '<path>' --subject 'a heron' --count 4
tatbot inkgen batch-status --output-dir '<path>'
tatbot profile show
tatbot profile list
tatbot profile check