1. The agent generates and executes code. This is not about code in the agent's own codebase. It's about code the agent writes at runtime — in response to instructions, queries, or goals — and then runs in an interpreter, shell, REPL, or similar environment.
2. The code performs actions beyond intended scope. "Scope" here means the boundaries the operator and user intended: which systems, which data, which operations, which scale. Unexpected execution crosses those boundaries — sometimes through attacker manipulation, sometimes through ambiguous instructions, sometimes through the agent inferring too aggressively.
3. The effects reach real systems. The code runs against live infrastructure — production databases, file systems, cloud APIs, operating system processes, network endpoints. The consequences are real, immediate, and often irreversible.
Malicious inputs: an attacker crafts input that drives the agent to generate and run harmful code — a form of code injection through natural language.
Insufficient sandboxing: the agent's code execution environment has access to more than it should — no resource limits, no network isolation, no filesystem restrictions — so when code runs unexpectedly, the blast radius is large.