agent.tool_not_allowed
What happened
Section titled “What happened”This tool is not available in the current mode. Switch the assistant to a mode that covers this action, or do it yourself in the app.
Technical background
Section titled “Technical background”Not an AccessDeniedError. Three triggers:
- Agent loop: the model asked for a tool name outside the catalog built for this run (a hallucinated name, or a handler the run doesn’t expose); the loop records an error turn.
- Rule validation: an
UnprocessableErrorwhen the handler of a new permission rule is missing from the caller’s role-filtered manifest. - An
UnprocessableErrorwhenai-agent-editis not mounted.
The catalog is derived from the mounted registry (buildToolCatalog), so a
handler without a description never becomes a tool at all. Describe the
handler, or widen the agent mode, if the call was meant to work.