Runs
A run is a saved object rather than a button you pressed once. It knows which records it covers, which rules it used, and what it found.
The gap this closes. Bulk operations in a CRM are anonymous. You select some records, you act, and afterwards there is nothing that says what was done, to which records, under which rules, or by whom. The only evidence is the damage.
A run names two things: the tool it uses, and the records it covers. The scope is a filter over your own fields, the same builder every tool uses, with a count you can read before you commit.
A run owns its findings. The duplicate groups a deduplication run detects belong to that run. Two runs over overlapping records produce independent findings rather than fighting over the same ones, so you can scope narrowly, review, and scope again without losing work.
Re-running is not starting over. A second pass refreshes the findings nobody has decided on yet and preserves the ones you already approved or rejected. The decisions you made are the expensive part and they survive.
The distinction
Most tools use these interchangeably. Here they are different objects, and the difference is what makes a run re-runnable.
The saved thing. It persists, it is listed, and it can be run again.
One execution of that run. A run may have many.
How it goes
Disposition
Not a global setting, and not a decision the tool makes for you.
The same tool can be fully automatic on one scope and fully supervised on another, because the choice belongs to the run rather than to the tool. A normalization run over a scope you trust writes on dispatch. The same tool over the book you just inherited holds every record for review.
Three postures: execute writes when dispatched, queue holds the whole run behind one approval, and propose computes everything, writes nothing, and puts one reviewable proposal in the queue per record it would have changed. A credential may ask for either form of review and may never release it.
For agents
Reads are free and need no permission to write. Anything that changes a record is a separate grant.
list_runs every run on this connection readget_run one run, with its scope and outcome readget_run_records the records a run touched readcreate_deduplication_run one of eleven create tools, one for each writedispatch_run start a pass writedelete_run remove a run you created writeThe rest of it
Where to start
The readiness scan reads your CRM and reports what it finds, before you describe a single change.