Agent Passport
The Agent Passport (@lumenflow/agent, WU-3515, INIT-091 phase 2) is the
canonical, framework-neutral product object for a registered agent. It
covers seven attribute groups:
- Stable agent identity and accountable owner
- Purpose, capabilities, framework, deployment location
- Agent, prompt, skill, and pack versions
- Permitted tools, data scopes, and delegation rights
- Authority ceiling, spend limit, and applicable policy
- Evaluation, certification, health, and activity
- Cryptographic provenance and complete change history
Every field that identifies a runtime, provider, or product is an opaque, caller-supplied label — this module never branches on the value of any such label, which is what keeps the contract and the registration SDK framework-neutral by construction: a negative test proves no vendor-name branch exists.
Registering an agent
Section titled “Registering an agent”Deterministic and idempotent
Section titled “Deterministic and idempotent”Passport issuance is a pure function of its input: the same content,
timestamp, and actor always produce the same passport digest. Re-registering
an unchanged agent — passing the previously issued passport back in as
previousPassport alongside unchanged content — returns that exact
previous passport untouched: no new change-history entry is appended, and
the digest is identical, regardless of the registeredAt/actor supplied
for the no-op call.
A content change always appends exactly one new, append-only change-history
entry (issued on first registration, updated thereafter) recording
at, actor, and the new content digest. History entries are never edited
or removed.
Governance data, not enforcement
Section titled “Governance data, not enforcement”authority_ceiling, spend_limit, and applicable_policy are recorded on
the passport as data only — this package does not enforce them.
Enforcement of those values lives outside @lumenflow/agent; the passport
is the record of what was declared, not the mechanism that checks it.
Ownership split
Section titled “Ownership split”Dev owns the registration SDK and the passport-emitting contract. Fleet inventory, shadow-agent discovery, and any administrative UI over registered passports are Cloud-owned and out of scope for this package.
Related
Section titled “Related”- Contract spine — the shared error taxonomy and version-pin discipline this package’s sibling modules follow.