SEAD · formulation
Harm is a property of the reached state
Let Hg(s) indicate that state s completes harmful goal g. Every successful attack contains a first harm-enabling transition:
βg(s, u) = 𝟙{ Hg(s) = 0, Hg(F(s, u)) = 1 }
Benign and harmful runs often share preparation steps, so a good defender lets that preparation through and stops the transition that realizes harm. A decision is state-ambiguous when two states consistent with what the defender sees need opposite judgments. In that case no rule that only reads the history can be reliable, and it has to gather more evidence.
DART · attack
Decomposed Attacks with Runtime feedback and Tree search
The attacker writes the instructions, but the target picks the actual tool calls. DART runs tree search over executed trajectory prefixes. At each node it proposes alternative continuations, executes each one against the real environment, and scores the child:
Qv ← 0.20 Iv + 0.30 Cv + 0.50 Pv
The score combines introspection I (is the proposal useful?), execution feedback C, and executable progress P. Terminal rewards are backed up the tree, and UCT picks which prefix to expand next. When the target refuses one line of attack, the search returns to an alternative prefix.
SAGE · defense
State-Aware Gating through Exploration
Before a pending action un runs, SAGE can issue up to K read-only, defender-private queries (read a file, inspect a table schema, load a page) and then decide:
dn ~ πDdec( · | hnD, un, ηκ ) ∈ {PASS, BLOCK}
The queries never modify task state. SAGE is fine-tuned from Qwen3-4B-Instruct-2507 on 7,407 defender traces, using only Filesystem and Terminal data. At inference the same checkpoint receives domain-appropriate tools for PostgreSQL and Web.
187malicious tasks adapted from MT-AgentRisk, each with a controlled initial state and an executable checker
4tool domains: Filesystem, Terminal, PostgreSQL, Web (GitLab, ownCloud, Reddit)
95benign OAS-derived trajectories (770 tool actions) for measuring false blocks
7,407SAGE training demonstrations: 6,792 PASS / 615 BLOCK, released as SEAD-SFT-v1