account
A user’s presence on a platform — their GitHub handle, Gmail address, etc. Created by most skills. Links a person to their platform-specific identity.
Identity: [issuer, identifier] — one node per platform+handle combo. issuer = platform domain (e.g. “github.com”, “gmail.com”) identifier = platform-specific handle (e.g. “octocat”, “user@example.com”)
| Metadata | Value |
|---|---|
| Plural | accounts |
| Subtitle field | identifier |
| Identity | issuer, identifier |
Fields
Section titled “Fields”| Field | Type |
|---|---|
issuer | string |
identifier | string |
handle | string |
displayName | string |
email | string |
phone | string |
bio | text |
accountType | string |
color | string |
isActive | boolean |
joinedDate | datetime |
lastActive | datetime |
Relations
Section titled “Relations”| Relation | Target |
|---|---|
platform | product |
owner | person |
follows | account[] |
followers | account[] |
Prior art
Section titled “Prior art”External standards this shape draws from or aligns with. See Shape design principles for how prior art informs shape design.
- OpenID Connect (OIDC) Core 1.0 — Our issuer/identifier maps to OIDC’s iss/sub claims. OIDC is the canonical federated-identity model for “account = (issuer, subject)”.
- WebFinger (RFC 7033) — Resolves issuer+identifier pairs to profile metadata. Our identifier aligns with WebFinger’s acct: URI scheme (user@host).
- vCard 4.0 (RFC 6350) — Defines displayName/email/phone/org in contact cards. We adopt vCard’s contact semantics for the human-readable fields.