destroys
@forge/monorepo / backend/src / destroys
Function: destroys()
destroys<
I,O>(spec):Tool<O>
Defined in: backend/src/tools/define.ts:113
A tool whose effect cannot be undone — a delete, a merge, a send that cannot be recalled.
Distinct from confirms because the classification differs and downstream policy reads it: a shadow run
suppresses destructive and external-write alike, but an operator reviewing what an agent may do wants to
know which of the two a tool is. Collapsing them would lose that, and the answer to "what can this agent
irreversibly do" would stop being answerable from the catalogue.
Type Parameters
I
I = unknown
O
O = unknown
Parameters
spec
GatedToolSpec<I, O>
Returns
Tool<O>