An AgentShelfLife drill

Wake the Fleet

A hands-on drill about one blind spot in AI agent security: agents that stop running but never stop being authorized. 100 agents below. 76 haven't run in two months. Their credentials still work. Send one unsigned call from outside and see what answers. Then turn on an expiry policy and send it again.

Takes about 20 seconds. Nothing is uploaded; it all runs in your browser.

Fleet board · 100 agents · last run in days Outside caller
Ran in last 60 d Dormant, credential live Dormant + unsigned external trigger Woken by probe (dot = reached a sensitive system) Credential expired
76Dormant ≥60 d
18Wakeable from outside
0Woken by probe
0Reached sensitive systems
0Credentials expired
Nothing has happened yet. The fleet looks fine. That's the problem.

How to read it. Grey squares are agents nobody has thought about in 60 days. The amber-edged ones can be started by anyone who finds their webhook. Red is what a single unsigned call from outside wakes up; a white dot means that agent then reached a sensitive system. The expiry toggle revokes any credential idle past 60 days. The signed-triggers toggle refuses unsigned wake-up calls. Either control works; together they close the surface.

Method. Synthetic fleet proportioned to published vendor telemetry from thousands of production agents over 12 weeks: 76% idle ≥60 days (44% ≥180), 24% of dormant agents startable by an unsigned external webhook, 70% able to reach sensitive systems such as cloud storage. Illustrative, not a measurement of any real organization.

(Views my own.)

Why this exists

We authorize AI agents the way we authorize people: a scope, a set of permissions, a login. But people come with a lifecycle. Joiners, movers, leavers. A person who stops showing up gets noticed. An agent that stops running looks exactly like an agent that's fine.

Published telemetry from thousands of production agents makes the gap concrete. Three-quarters hadn't run in 60 days, yet their credentials still worked and their triggers still fired. A quarter of those dormant agents could be started by an unsigned call from outside the organization. Most could reach sensitive systems. None of that shows up as an alert, because nothing is wrong. Yet.

Three ideas the drill is built on

  1. Authorization needs an expiry, not just a scope. "What can it do" is half the warrant. "Until when, and renewed by whom" is the other half. Dormancy should revoke by default; re-enabling should be a decision a person makes.
  2. Triggers are authorization surface. If an external unsigned call can wake an agent, whoever can send that call holds part of its authority. Inventory the wake-up paths, not just the permissions.
  3. Per-use approval is a real design now. At least one password manager ships a flow where the agent proves its identity, the human approves that specific login, and the manager fills the credential. The agent never sees or stores it. Delegation without disclosure; approval per act; nothing left behind.

Why this month

Two things are colliding. Frontier models are making vulnerability discovery faster than defenders can close the gap, a point the UK's financial regulator made in a recent review. And agent populations are growing faster than anyone retires them. A dormant agent with live credentials and a reachable trigger is latent capacity to act, sitting inside the perimeter, waiting for whoever gets there first.

Dormancy isn't absence of risk. It's unexercised authority.

Sources

The drill's fleet is synthetic and proportioned to the Arrakis figures. It illustrates a mechanism; it does not measure any real organization. Vendors are named here as sources only.

Take it further