ToolPermission
Stability: beta -- This resource kind ships with
orloj.dev/v1and is suitable for production use, but its schema may evolve with migration guidance in future minor releases.
spec
tool_ref(string): tool name reference.action(string): action name (commonlyinvoke).required_permissions([]string)match_mode(string):alloranyapply_mode(string):globalorscopedtarget_agents([]string): required whenapply_mode=scopedoperation_rules([]object): per-operation-class policy verdicts.operation_class(string):read,write,delete,admin, or*(wildcard). Defaults to*.verdict(string):allow,deny, orapproval_required. Defaults toallow.
Defaults and Validation
tool_refdefaults tometadata.namewhen omitted.actiondefaults toinvoke.match_modedefaults toall.apply_modedefaults toglobal.required_permissionsandtarget_agentsare trimmed and deduplicated.target_agentsmust be non-empty whenapply_mode=scoped.operation_rulesvalues are trimmed and lowercased. Invalidoperation_classorverdictvalues are rejected.- When
operation_rulesis present, the authorizer evaluates the tool'soperation_classesagainst the rules. The most restrictive matching verdict wins (deny>approval_required>allow). - When
operation_rulesis empty, behavior is unchanged (backward-compatible binary allow/deny).
status
phase,lastError,observedGeneration
Examples: examples/resources/tool-permissions/*.yaml
See also: Tool permission concepts.