Tool

watch

You cannot improve what you cannot measure. watch launches a process with RepoQL as its OpenTelemetry collector, and everything it emits lands in tables while it is still running — alongside sampled CPU and memory for the whole process tree. Evidence you can query repeatedly, not output you read once.

watch executable="dotnet" arguments=["run"] environment="OTEL_LOG_LEVEL=debug" # returns immediately with a run id and the schema to query SELECT name, duration_ms FROM run_a91f.spans WHERE duration_ms > 100 ORDER BY duration_ms DESC;

The process keeps running while you query it. Its telemetry sits in the same database as the code that produced it, so a slow span and the method behind it are one join apart.

Run it yourself

rql watch dotnet run

Or say it to your agent

“run the app and show me which spans are slowest”

Parameters

ParameterWhat it does
executablerequiredA binary on the PATH, or a path to one.
argumentsoptionalArguments to pass to it.
environmentoptionalExtra variables as key=value;key2=value2. Use it to switch on an application's own telemetry.
workingDirectoryoptionalWhere to run it. Defaults to the caller's directory.

What lands in the tables

The run's life

The call returns as soon as the process starts, with a run id and the schema to query. The run ends when the process exits. Telemetry from a finished run stays queryable — that is the point of putting it in a database rather than on a terminal.

A worked example →

This page names what exists. The depth behind every name — the bounds, the failure modes, how they compose — ships inside the binary at help:///, and answers to explore and read exactly like your code does. Install it, and your agent has the manual.