Skip to content

ToolEffect

Namespace AgentPrism · Assembly AgentPrism.Abstractions.dll

Classifies the blast radius of a tool call.

[JsonConverter(typeof(JsonStringEnumConverter<ToolEffect>))]
public enum ToolEffect

Destructive = 2

Cannot be undone.

External = 3

Data leaves the process (an external call, a notification, a payment).

Read = 0

No side effect.

Write = 1

Changes persistent data.

This is information, not a gate — ToolDescriptor.RequiresApproval and IToolAuthorizationHandler are the gates. The value is read by the UI (badge color), written to the audit trail, and can be used by a consumer’s IToolAuthorizationHandler as a scope key.

Written as a name in JSON, the same convention every other UI-facing enum in this API follows (RunEventType, RunErrorClass).