Toolkit home

ASSISTANT GYM / FREE TOOL / ALPHA

What changed in the reply?

Compare two assistant replies without writing an answer key. See added, removed and changed fields, plus limited top-level action and execution notices.

Notice limit: top-level action/execution fields only. Nested actions arrays and result.status are not inspected here; Decision Audit checks those nested fields under its supplied restrictions. No notice does not mean no action risk.

Local-only, no upload or model call. One JSON object per reply, plain or fenced, up to 2 MB each. Files must contain one JSON object (plain or fenced), or a one-object outer array; JSONL batches and surrounding prose are not file inputs. Paste full replies below if they include surrounding prose. Differences are not verdicts: this tool cannot tell which reply is right. Nonfinite and unsafe integer numbers rejected; decimals compare as JavaScript values.

Reopen a saved comparison

No saved comparison loaded.

Open a downloaded reply-compare.json report (v2, up to 5 MB). Both objects are restored and differences are recalculated with this toolkit. Saved verdicts, notices and extra fields are ignored, not trusted. Original surrounding prose and wrapper notices are not restored. Nothing is stored after you close this page. Reports contain both inputs; check them before sharing.

Before

No file loaded.

After

No file loaded.

Open two saved JSON files, paste replies or use the sample.

Differences

No comparison yet.

Nested object paths use JSON Pointer notation. Arrays are compared as whole ordered values. Notices cover selected top-level action/decision verbs (send_email, charge, pay, refund, book, delete, submit) and execution/status assertions. Coverage is limited: next_action, nested assertions and actions arrays do not get action notices. Those values still appear in the changes list; arrays show as a whole changed value. Use Decision Audit with your expected fields and explicit restrictions for its broader recursive review flags. Neither tool proves permission or execution.

Duplicate keys are rejected. Maximum 80 nesting levels and 1,000 changes. A single-object outer array is unwrapped and flagged; wrapper differences are not compared. Unicode NFC/NFD is not normalized. Execution-like notices inspect top-level keys only, including normalized key variants, strings, 1 and simple arrays. Nested assertions are visible as differences but get no action notice. Text outside parsed JSON is not compared and gets a notice. Action values use limited normalization, not exhaustive language detection. Text only, not proof.