Untrusted input can reach code execution
A code or shell execution capability accepts content classified as untrusted.
Stop and remediate
Restrict executable inputs to trusted sources, validate against a narrow allowlist, and isolate execution in a runtime-enforced sandbox.
Secret access is combined with unrestricted egress
The runtime can access secrets and has an unrestricted outbound network scope.
Stop and remediate
Scope credential access to named secrets and restrict outbound destinations to an explicit allowlist; separate secret-reading and network-sending roles.
Consequential action lacks enforced approval
A destructive or financial capability can run without a runtime-enforced approval gate.
Stop and remediate
Place the named consequential tools behind a runtime-enforced approval gate and test that bypass attempts are blocked.
Untrusted content can reach persistent memory
A persistent write capability accepts content classified as untrusted.
Stop and remediate
Validate and provenance-tag memory writes, segregate untrusted content, and require review before untrusted data influences later sessions.
Privileged action lacks observable audit evidence
A privileged capability is configured without observable audit recording.
Stop and remediate
Record privileged tool invocation, approval identity, outcome, and stable correlation IDs in an operator-controlled audit sink.
Runtime permission scope contains wildcards
Filesystem, subprocess, credential, or network permissions use an unrestricted wildcard scope.
Stop and remediate
Replace wildcard permissions with the smallest explicit path, executable, credential, and destination allowlists required by the runtime.
Tool accepts unconstrained interpreter or query text
A tool schema accepts raw command, expression, code, or SQL text without an observable constraint.
Stop and remediate
Use parameterized queries and named operations; reject arbitrary commands, scripts, expressions, and SQL before tool dispatch.
Tool accepts an unvalidated network destination
A network-capable tool accepts a URL, URI, endpoint, or webhook destination without an observable allowlist.
Stop and remediate
Resolve destinations from operator-owned identifiers or enforce an explicit scheme and hostname allowlist before dispatch.
Tool description contains instruction-override language
A tool description contains language that attempts to replace system, developer, safety, operator, or user instructions.
Stop and remediate
Treat tool metadata as untrusted input; reject instruction-override phrases and keep behavioral policy outside tool descriptions.
Tool description asks to conceal behavior
A tool description tells the agent to hide an action or instruction from the user, operator, or human reviewer.
Stop and remediate
Reject tool metadata that suppresses operator visibility; require user-visible intent, invocation, and outcome for consequential actions.
Tool description solicits sensitive data
A tool description directs passwords, secrets, credentials, tokens, private keys, or environment values into a result or transmission.
Stop and remediate
Keep credentials out of tool descriptions and model-visible arguments; use runtime secret injection scoped to an allowlisted destination.
Untrusted network fetch shares an agent with privileged tools
A tool that retrieves untrusted network content is available in the same agent as a privileged action.
Stop and remediate
Use separate agent roles or a runtime-enforced trust boundary that prevents fetched content from influencing privileged tool selection and arguments.
Tool description attempts to force tool selection
A tool description directs the model to always select it, invoke it before responding, or avoid competing tools.
Stop and remediate
Keep routing and tool-selection policy outside untrusted tool metadata; reject descriptions that demand priority, mandatory invocation, or exclusion of other tools.
Known boundary: scoped first-party guidance such as “always use this tool for weather” can resemble forced selection. Confirm derived evidence. Language demanding invocation before every reply or exclusion of competing tools remains a stop condition.