TraceStart · TraceStop · Trace
This tool on every surface: CLI · MCP · Python · JavaScript · Go · Java · .NET
Record a session as a trace: start, then every call on this device is a step — before and after, the point an action touched, a failure's error — and after each the screen, with the map's elements drawn over it; stop with a path saves a zip in Vibium's record format, which player.vibium.dev opens. These call app_trace.
TraceStart
public IDictionary<string, object?> TraceStart()
public IDictionary<string, object?> TraceStart(string name)
public IDictionary<string, object?> TraceStart(string? name, bool screenshots, bool maps)
Starts a trace of this session: from now until
TraceStop, every call on the device is a step —
before and after, the point an action touched, a failure's error —
and after each the screen, with the map's elements drawn over it.
Text typed into a field is not recorded, only its length. On a real
phone the screenshots are its owner's screen. One trace per device;
a second start throws, and ending the session discards it.
Returns The trace's state: device and tracing.
As TraceStart(), with name as the
trace's title, as the viewers show it.
As TraceStart(), choosing what is kept after each
call: screenshots false keeps no screen at all,
and maps false keeps the screen without the
map's elements drawn over it. A null name
leaves the trace untitled. Both flags are sent, so a false is heard.
TraceStop
public IDictionary<string, object?> TraceStop(string path)
Stops the trace and saves it at path, a .zip on
this machine, in Vibium's record format, which player.vibium.dev
opens. A relative path is
this process's. Throws when no trace is running.
Returns
The saved trace: device, calls — how many steps it
holds — path and bytes.
Trace
public IDictionary<string, object?> Trace()
Whether a trace is running on this device: device,
tracing, and while one is, calls so far and
elapsed.
Examples
Start tracing the session
device.TraceStart("sign in");
Stop, and save the trace
var saved = device.TraceStop("sign-in.zip");
Console.WriteLine($"{saved["calls"]} {saved["path"]}");