spec: add identity.yaml — cryptographic agent identity (Ed25519)#76
spec: add identity.yaml — cryptographic agent identity (Ed25519)#76vystartasv wants to merge 1 commit into
Conversation
Implements the identity layer proposed in open-gitagent#70: - New identy.yaml optional file convention for agent repos - JSON Schema (spec/schemas/identity.schema.json) - SPECIFICATION.md section 3a with field spec, example, semantics - Directory structure updated Schema maps 1:1 to Works With Agents Identity Protocol (L2, CC BY 4.0): https://workswithagents.dev/specs/identity.md Fully optional. Agents without identity.yaml continue working. Production/regulated deployments get Ed25519 key binding with signing, verification, delegation, and revocation semantics.
|
Thank you @vystartasv for picking this up — the work is real and the schema is competent. Brutally honest, though: there's a design conflict between this PR and the RFC that just merged (#73, The conflict:
The RFC direction was the one I asked for in the original review of #70 — and the reason is to keep the canonical surface area finite. Every additional required-or-optional file at the repo root is a thing every adapter, validator, and reviewer has to know about. The The Works With Agents Identity Protocol angle: Concrete ask before merge:
If the WWA Identity Protocol is something you want to advocate as the canonical reference impl alongside APS, I'd accept a separate small PR adding a Section 7-style cross-walk to the RFC. But the spec mechanics need to be the If you'd rather close this and open a fresh PR aligned with the RFC, that works too — your authorship credit stays. Let me know which path you prefer. Real apologies that this lands as a "redo" — the timing with the RFC merge was unfortunate. The substance of your work isn't wasted; the schema fields are mostly right. |
|
Thank you for the thorough review — I appreciate you taking the time to map out exactly how this should align with RFC #73. The conflict is real and your reasoning is sound: keeping the canonical surface area finite by folding identity into the existing I'm closing this PR. I'll open a fresh one that:
If there's room on the spec side afterward, I'd also like to open a cross-walk PR showing Works With Agents Identity Protocol as a Thanks again for the clear direction — much better than a silent close. I'd rather redo it right than have it land wrong. |
Closes #70
What
Adds an optional
identity.yamlfile convention for verifiable agent identity via Ed25519 keypairs.Changes
spec/schemas/identity.schema.json— JSON Schema for identity.yaml (new)spec/SPECIFICATION.md— Section 3a added with field spec, example, and runtime semanticsSchema (subset)
Alignment with #70
#70 proposed Ed25519 key binding + passport_uri + key_fingerprint. This PR implements all three plus optional DID, hardware binding, and owner identity from the reference standard.
Reference Standard
The schema implements the Works With Agents Identity Protocol (v1.0.0-draft, CC BY 4.0). All identity.yaml fields map 1:1 to the Identity Protocol — gitagent identity.yaml is a compatible subset.
Design decisions
Tested
Schema validates against JSON Schema draft 2020-12. Manual test: identity.yaml conforms to identity.schema.json.