reviewmy / Products / 03 · Agent Console
Replay what your agents did, step by step.
The console records what every agent did inside an environment, lets a human replay it, and turns any step you flag into a change brief the agent collects over MCP. It watches. It never controls a run.
The Planner read the component named in the brief, then grepped for its call sites before writing a four-step plan.
The Coder added an empty-string guard and surfaced the API error.
It then re-ran that identical command nine more times across nine seconds without changing a line, which is the single largest cost in the run.
The fix was one line in the test file: awaiting the mock.
The Reviewer read both files, raised two notes, built a preview and opened the pull request.
A model wrote this from the run data. Every claim links to the step it came from.
Planner
claude-sonnet
Coder
claude-sonnet
Reviewer
gpt-5-codex
src/checkout/CouponField.tsx+38 −6
export function CouponField({ onApply }: Props) {
const [code, setCode] = useState("");
const [error, setError] = useState<string | null>(null);
async function submit() {
await onApply(code);
if (!code.trim()) return setError("Enter a code first.");
const res = await onApply(code);
if (!res.ok) return setError(res.message);
setError(null);
}- Duration
- 1:02
- Cost
- $0.75
- Tokens
- 65,500
- Wasted, estimated
- $0.37 · 49%
- Files written
- 2
Retry and wasted are heuristics, not measurements. Sometimes a re-run is the right call.
Moving the playhead moves your view of the run. The run itself finished before this screen loaded and nothing here can pause, resume or alter it.
0:26, run_tests · retry 3–11Workflow audit: the real screen, running on sample data. Scrub it, click it, flag a step.
The problem
Agents are cheap to start and expensive to ignore.
Four measured claims, all from the one run embedded above. Every number on this page comes from that run or from the price catalogue, and the run is sample data built to tell one story rather than a benchmark.
3 identical retries
The same command, re-run with no edit in between. Retry is a heuristic, and sometimes a re-run is the right call, which is why the console says so beside the number.
49% of the run wasted
The share of this run spent on those retries. An estimate, and labelled as one everywhere it appears.
$0.75 for one ticket
A single coupon-field fix, across three agents and a minute of wall clock. The fix, when it came, was one line.
- Watches, never controls
There is no pause, no kill and no approve anywhere in the console. It reads what your agents report after the fact, which means it can tell you a rule was broken and could not have prevented it.
- Runtime attribution
Claude Code reports per-step tokens and tool arguments. Codex reports commands, exit codes and per-turn tokens. Anything else reports run totals only, and the console says which rather than showing blank columns.
- Advisory policies
Rules are checked after a run finishes and never stop one. A budget sends an alert and the agents keep working, because losing the record of the runs that caused an overspend is the wrong trade.
- One queue
Findings raised by you, by an AI reviewer, or by a policy check all land in the same brief. Yours are marked raised by a human, because that carries different weight.
Integration
One HTTP call, from anything.
No SDK to install and nothing to import. Post a run and its events to one endpoint from whatever language the agent is written in, and the steps appear on the timeline within seconds.
await fetch('https://review-my-site.com/api/agents/ingest', {
method: 'POST',
headers: { authorization: 'Bearer agk_...', 'content-type': 'application/json' },
body: JSON.stringify({
run: { id: runId, agent: 'support-bot', environment: 'prod' },
events: [
{ seq: 1, kind: 'start' },
{ seq: 2, kind: 'model_call', name: 'plan', model: 'claude-sonnet-5',
input_tokens: usage.input_tokens, output_tokens: usage.output_tokens },
{ seq: 3, kind: 'end', detail: { status: 'succeeded' } },
],
}),
});Watch takes 100,000 events a month. Audit raises that to 500,000, and Govern to 2,000,000.
Pricing
Priced on what you ingest, not on seats.
The Agent Console is metered separately from the review plans. Watching agents scales with how many runs there are, not with how many page reviews you buy.
Watch
- Per month
- $15
- Per year
- $150/year
- API keys
- 3
- Events a month
- 100,000
Audit
- Per month
- $29
- Per year
- $290/year
- API keys
- 10
- Events a month
- 500,000
Govern
- Per month
- $99
- Per year
- $990/year
- API keys
- 25
- Events a month
- 2,000,000
Free is the absence of a subscription, not a trial. It does not expire, nothing auto-converts, and doing nothing charges nothing. Every figure above is read from the same catalogue the checkout charges against, so a price shown here cannot differ from a price taken.
The centrepiece
Replay any run, step by step.
One playhead, and five panels that move with it. Clicking a block or a row moves the playhead to that step and stops playback, because a replay that keeps advancing under your cursor takes you off the moment you just pointed at.
- The lanes
One per agent, with every step positioned by when it started and how long it took. Steps overlap where agents worked at the same time, and a lane sitting empty means it was waiting.
- The diff panel
Walks backwards to the most recent step that wrote something, so it holds the current file rather than emptying between writes. Before the first write it says so.
- Spent and tokens
Cumulative sums across every step that had started, so at the end of the run they equal the totals on the outcome panel exactly.
The AI layer
A copilot that cites its work, and seven reviewers you can switch off.
Every factual claim an AI panel makes carries a chip that moves the playhead to the step it came from. A sentence with no citation is marked as the model talking rather than the record.
- It refuses
Ask the copilot something outside the run data and it says it does not have that, rather than something plausible. The refusal is the default answer, not the last one it tries.
- It cannot act
The copilot cannot start a run, stop one, change a policy or a budget, or read source outside a recorded diff. That list is on the screen, and it is read from the code that does the grounding.
- Seven reviewers, five on
Each publishes its own hit rate, because a reviewer you disagree with is one you need to be able to switch off, and you cannot judge that without the number.
The loop closes
Flag a step. The agent picks it up.
A brief drafted by the copilot from the step you flagged, editable before you send it, and marked as raised by a human when the agent collects it. Flagging changes nothing about the run: it finished before you opened the screen.
- One drawer
Every entry point opens the same one with the right step in it: the replay, the live run, a token anomaly, or the action row on an AI summary.
- No duplicates
Flagging the same step twice confirms the finding that already exists rather than raising a second one, because two descriptions of the same nine seconds are still one problem.
The other half
What reviewmy does to websites.
Stop guessing what the agent did.
Connect an environment and the next run is on the timeline within seconds of the agent reporting it.