
Agent Security
The most overlooked part of agent governance: retiring agents cleanly so abandoned agents don't become invisible access paths.
Agent offboarding is one of the most overlooked parts of enterprise AI governance. It is the final stage of the agent lifecycle—and the one that almost no one plans for. Teams pour energy into proposing, approving, and launching agents. Far fewer think carefully about how to retire them.
But every agent eventually reaches the end of its useful life. A project wraps up. A workflow is redesigned. A newer, better agent replaces an older one. A vendor relationship ends. The person who owned the agent leaves the company. An experiment quietly fails. A permission that once made sense is no longer needed.
When that moment arrives, the agent should be decommissioned properly—not simply abandoned. Offboarding is the discipline of removing an agent from operation completely and verifiably, so that nothing it once held remains active. This post lays out what a clean decommissioning process looks like, and why the absence of one is a security problem hiding in plain sight.
Offboarding is skipped for the same reasons it is dangerous. An agent that is no longer used generates no complaints. No one files a ticket because an agent stopped being invoked. The workflow simply moves on, and the agent fades from attention while quietly retaining everything it was granted.
There is also a structural reason. Provisioning has a clear owner and a clear moment: someone wants the agent, so someone builds it. Decommissioning has neither by default. The person who would benefit from retiring an agent cleanly is rarely the person who notices it is idle. Without an explicit process, the work has no home—and work with no home does not get done.
The result is accumulation. Every team that has deployed agents for more than a year tends to discover a backlog of forgotten ones: a marketing campaign agent still holding write access to the ad platform, a data pipeline agent whose service account never expired, a procurement assistant tied to a vendor the company stopped using months ago.
Offboarding should not depend on someone remembering. The triggers that should start a decommissioning process are predictable, and most of them already produce signals elsewhere in the enterprise:
A mature program wires these triggers into its agent inventory. When an owner is offboarded from the HR system, the agents they owned should surface for review. When an integration is decommissioned, the agents that used it should be flagged automatically.
Proper decommissioning is a sequence, not a single action. Each step closes off a different way the agent could remain a liability after it is supposed to be gone. The order matters: you announce the change before you break things, and you confirm access is gone before you consider the agent retired.
The first step is to change the agent's status in the agent inventory or registry. Marking it deprecated and then retired creates a clear, durable record that it is no longer approved to operate.
This matters because the inventory is the source of truth for what should exist. An agent that still appears as active after it has been turned off creates ambiguity—and ambiguity is exactly what lets stale access survive. A status change also gives every downstream review, audit, and access check a single signal to act on.
# Registry record after decommissioning
agent_id: fin-close-reconciler-02
status: retired
retired_on: 2026-07-08
retired_by: paulina@agenticfabriq.com
reason: replaced by fin-close-reconciler-03
permissions: revoked
credentials: revoked
schedules: stopped
logs: retained (policy: finance-7y)If anyone depends on the agent, they should be told before it disappears. An agent that supports a live business workflow cannot simply be switched off without warning—teams may need migration time, or a window to validate that a replacement behaves correctly.
Consider a quarterly close reconciliation agent used by the finance team. Even if a newer agent is ready, finance needs to confirm the new one produces matching results before the old one is removed. Notification turns a disruptive surprise into a planned cutover. It also surfaces hidden dependencies you didn't know existed—someone always replies that their report quietly relies on the agent you thought no one used.
Once dependents are handled, the agent's permissions should be removed. This is the heart of offboarding, because permissions are what made the agent powerful in the first place. Retiring an agent while leaving its access in place removes the convenience but keeps the risk.
Permission removal has to be exhaustive. Agents accumulate access across many surfaces, and any one that is missed becomes a residual exposure:
This is where an action-level inventory earns its keep. If you know precisely what an agent was authorized to do, you know precisely what to revoke—and you can confirm afterward that nothing was left behind.
Removing permissions and revoking credentials are not the same thing, and both are required. Permissions define what the agent is allowed to do; credentials are the keys it holds. A credential that is still valid can sometimes reach systems whose access controls were configured loosely, so leaving keys live is its own distinct risk.
Every credential the agent was ever issued should be invalidated:
Delegated access deserves special attention. A legal review agent that operated on behalf of individual attorneys may hold tokens scoped to their identities. Those delegations must be unwound explicitly, or the retired agent could still act as someone else long after it is supposedly gone.
An agent can keep running long after people stop invoking it manually. Scheduled jobs, event triggers, webhooks, and recurring automations all execute on their own. Decommissioning has to reach these mechanisms directly.
Imagine an IT operations agent that was set up to run a nightly log-cleanup routine. Users stopped interacting with it months ago, but the cron trigger never knew that. Every night it still wakes up, authenticates, and acts on production systems. Until the schedule itself is disabled, "no one uses it anymore" is simply not true. Always confirm that the agent is no longer firing on any timer or event after you believe it is retired.
Retiring an agent does not mean erasing the record of what it did. Decommissioning removes the agent's ability to act; it should not remove the evidence of its past actions.
Audit trails, action logs, and approval records should be retained according to your retention policy—which is often dictated by compliance requirements rather than convenience. If a sales forecasting agent made decisions that affected reported pipeline, you may need to reconstruct exactly what it did, months later, even though the agent itself no longer exists. Decommissioning the actor and preserving the history are complementary, not contradictory.
Finally, ownership records should reflect the new reality. If the agent was retired outright, the inventory should show who retired it and why. If it was replaced, the replacement should be registered, reviewed, and assigned its own owner before the old one is fully removed.
This closes the loop with the rest of the lifecycle. A retirement that updates ownership keeps the inventory honest; a retirement that doesn't leaves orphaned records that look real but point to nothing. The handoff between a retired agent and its successor is also the natural moment to confirm that the new agent inherited only the access it actually needs—not a copy of everything the old one had.
The risk of poor offboarding is simple to state: abandoned agents become invisible access paths into enterprise systems.
They retain permissions long after their purpose disappears. They hold stale credentials that no one is watching. They have no current owner to notice if something goes wrong. And they may continue to run in the background on their own schedule. Each of these is a problem on its own; together, they describe an entry point that is powerful, unmonitored, and not on anyone's list.
These are precisely the conditions attackers look for. An agent identity with live credentials, broad access, and no accountable owner is more attractive than a forgotten human account, because it was designed to act autonomously and is expected to. The danger is not that the agent does anything malicious—it is that the access it carries outlives the oversight that justified it.
An abandoned agent is not a harmless leftover. It is a credentialed, capable actor that no one is governing—exactly the kind of access path you would never approve if someone proposed it on purpose.
Making offboarding real means turning it from a hope into a routine. A few practices make the difference between a policy that exists on paper and one that actually closes access:
A mature Agent Operations program treats offboarding as seriously as onboarding. The same rigor that governs how an agent enters production should govern how it leaves it—because the access an agent carries does not disappear on its own.
Provisioning and decommissioning are two halves of the same discipline. One grants identity, scope, and credentials; the other reclaims them. A program that does only the first accumulates risk with every agent it launches. A program that does both keeps its agent landscape honest: what exists is approved, what is approved is owned, and what is retired is truly gone.
If agents can be provisioned, they must also be deprovisioned. Clean retirement is not the unglamorous end of the lifecycle—it is what keeps the rest of your governance true.