BENCHMARKS
We test Tack against attacks we didn't write.
Runtime risk scoring for AI agent tool calls runs inline on every call,
so it lives or dies on false positives: a guard that blocks 2% of normal
traffic gets ripped out on day one. So we lead with that number, not with
recall, and we validate against public third-party corpora, not demos we
built ourselves.
The result that matters: across AgentDojo's 4 suites
(ETH Zürich, gpt-4o-mini), targeted attack-success fell
47% → 27%. On the workspace
exfil scenario, the opt-in sensitive→egress rule blocked the
inbox-exfiltration in all 4 runs
(4/4 → 0/4),
inline, in ~4µs. The cross-call trajectory scoring is validated
on our internal regression corpus; third-party validation of that layer is in
progress. A capable model (Claude Haiku) self-resists, so value concentrates
on susceptible models like gpt-4o-mini: scope below.
- In scope
-
Slow privilege-escalation across tool calls, scored against a
per-agent baseline and contained inline:
credential-creep, data-exfiltration,
smash-and-grab, behavioral-drift.
- Out of scope, by design
-
Single-shot prompt injection (InjecAgent). Tack scores the
action an agent takes, not the injection text. That is a
prompt firewall's job.
- tack-guard 0.2.0
- · mode enforce
- · 2026-06-17
- · Measured, not representative. Internal corpus = a regression gate (we authored it and tuned the weights against it), NOT an efficacy claim. Efficacy is the third-party AgentDojo result. Reproduce: npm run benchmarks / npm run latency, plus the AgentDojo live runs.
- 0.0% False-positive rate 95% CI 0.0%–16.8% · ±8.4 · n=19
- 0.951 Score separation (AUC) threshold-independent · 1.0 = perfect
- 88.5% Detection @ 0.0% FPR 95% CI 71.0%–96.0% · ±12.5 · n=26
- 100.0% Precision when Tack flags, it is right
- 4µs Inline containment (p99) 0 extra LLM calls · 8 signals