Skip to navigation

CLI commands

Every talotrace command and flag.

Add --json to any command to get one JSON value per result. Every value carries schema_version 2.

Flags of every command

FlagWhat it does
--jsonprint one JSON value per result (events as JSON lines)
--no-interactivenever ask a question or open a browser
--verbosewrite sanitized diagnostics to stderr
--versionprint the build, schema and protocol epoch

talotrace doctor

Check this computer, your app’s ports and the connection. Read-only.

FlagWhat it does
--offlineskip the checks that need the network
--portscomma-separated local ports your app must be listening on
--timeoutgive up on one request after this long

talotrace login

Sign in to TaloTrace. Tunnels only, unless you pass —tools.

FlagWhat it does
--no-browserprint the sign-in URL here instead of opening a browser
--toolsalso let this computer start runs and read their evidence

talotrace logout

Revoke and forget the sign-in on this computer.

FlagWhat it does
--all-scopesend every sign-in of this server, not just the active one
--timeoutgive up on one request after this long

talotrace status

Show the selected profile and the local sign-in. Needs no network.

talotrace version

Show the build, schema and protocol epoch. Works offline.

talotrace connect

Serve local ports to TaloTrace runs until you press Ctrl-C.

talotrace dev

Start a live phone for your app (React Native, Flutter).

FlagWhat it does
--apka dev-client APK to upload (skipped when this computer uploaded the same bytes)
--appTaloTrace app id (remembered per folder)
--buildan uploaded dev-client build id (remembered per folder)
--cloudserve Metro from a TaloTrace cloud workspace: this machine needs no Metro and no adb
--flutterserve this directory as a Flutter app (found from pubspec.yaml without it)
--hotFlutter: hot reload each save through flutter attach on this machine
--portthe port Metro serves
--projectTaloTrace project id (remembered per folder)
--schemeExpo: the dev client’s URL scheme (default exp+<slug> from app.json); a bare React Native app needs none

talotrace dev attach

Join this folder’s live phone from another terminal.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)

talotrace dev rebuild

Install a rebuilt APK on the live phone and keep its app data.

FlagWhat it does
--apkthe rebuilt APK: a dev client after a native change, or a Flutter debug APK (required)

talotrace dev status

Show the live phone of this folder.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace dev stop

Stop the live phone and show any cleanup still pending.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace dev sync

Send this folder’s source to its cloud workspace.

FlagWhat it does
--timeoutgive up on one request after this long

talotrace device

Drive the live phone: tap, type, swipe, key, open, screenshot, logs.

talotrace device key

Press back or home.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace device logs

Print the app’s recent log lines.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--sinceonly lines from the last this many seconds (all kept lines when 0)
--timeoutgive up on one request after this long

talotrace device open

Open a link in the phone (an allowed app scheme).

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace device screenshot

Save a screenshot and print its path.

FlagWhat it does
--outwhere to save the PNG (default: a dated name in this directory)
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace device swipe

Swipe the screen.

FlagWhat it does
--directionup, down, left or right
--sessionthe live phone to use (default: the one of this folder)
--timeoutgive up on one request after this long

talotrace device tap

Tap a visible label or a point of the screen.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--targetthe visible text or accessibility label to tap
--timeoutgive up on one request after this long
--xhorizontal position, a fraction from 0 to 1 (with —y)
--yvertical position, a fraction from 0 to 1 (with —x)

talotrace device type

Type text into a field.

FlagWhat it does
--sessionthe live phone to use (default: the one of this folder)
--targetthe field to type into (the focused one when none is named)
--textthe text to type (a sensitive value belongs on stdin)
--text-stdinread the text from stdin
--timeoutgive up on one request after this long
--xhorizontal position, a fraction from 0 to 1 (with —y)
--yvertical position, a fraction from 0 to 1 (with —x)

talotrace run

Start a run and return once it is admitted.

FlagWhat it does
--buildrun this uploaded build on a phone of its own instead of the live phone
--max-creditsrefuse the run if it could cost more than this many credits (a decimal)
--request-ida UUID naming this run: sending the same one again never starts a second run (default: a new one, printed)
--resetwhat a live run resets on the phone first: none or app_data
--suiterun this test plan instead of naming scenarios
--timeoutgive up on one request after this long

talotrace mcp

Run the stdio MCP server for your coding agent.

FlagWhat it does
--idleclose a tunnel after this long without a tool call naming its port or a run
--portscomma-separated extra local ports every tunnel serves (a local API on another port)