The stateless AI API that debugs your distributed systems.
Stop playing detective in local dev tools.
Trace is a stateless AI API for debugging. You give it a question about your app—and it figures out which data to collect, analyzes the results, and gives you the answer.
It doesn't store your code or browser data. It thinks, then tells its client (Extension, SDK, or CLI) what to do. All execution happens locally on your machine.
cart.items.length === 0. Your cart state is empty.Trace is already powering debugging for 100+ developers worldwide.
import { Trace } from '@probebrowser/sdk';
const trace = new Trace({ apiKey: process.env.TRACE_API_KEY });
const result = await trace.analyze({
question: "Why is the button disabled?",
context: { url: window.location.href }
});
console.log(result.rootCause);
// Output: "cart.items.length === 0"$ npx @probebrowser/trace analyze > Connecting to Trace Engine... > Analyzing page state... > DOM inspection complete > Network analysis complete ✓ Root cause identified in 23ms
One command. That's it.
No complex setup. No performance hits. No waiting.
$npm install @probebrowser/sdkEvery response is structured JSON. Pipe it to your scripts, CI/CD, or build your own UI.
rootCause: The exact code condition. No interpretation.
selector: CSS selector to the element. Copy-paste ready.
steps + metrics: Full execution trace with timing data.
A stateless intelligence API that powers every client.
Inputs flow up. Insights flow down.
api.probe.sh/v1
Watch how Trace transforms a simple question into a detailed, actionable solution in seconds.
In plain English. No need to know which tool to use or where to look. Just describe your problem.
{
"steps": [
{ "tool": "get_console_logs" },
{ "tool": "get_dom_element", "selector": "#login-btn" },
{ "tool": "get_network_requests", "filter": "/api/auth" }
]
}The Core Engine receives your query and decides which debugging tools are needed to gather the right context. It returns a plan.
Your client (Extension, SDK, or CLI) runs the plan locally via CDP or Puppeteer. Your data never leaves your machine.
Root Cause: The login button has disabled=true because the /api/auth request returned a 401 Unauthorized.
Suggestion: Check if the Authorization header is being set correctly in your fetch call.
The client sends the results back to the Engine. The AI synthesizes all data into a human-readable root cause and actionable fix.