tool contract

The agreed inputs, outputs, permissions, errors, and side effects of a tool an agent or workflow can call. Makes clear what the agent can do, not just what it can call.
The tool contract made it clear the agent could create drafts but not send them.