Persona API Spec — Voice Package Format, Install Flow, Runtime
Published 21 April 2026 · 10 min read
The persona package
Every persona is a signed archive with four mandatory components:
- Manifest — identity, version, compatibility, creator.
- Consent manifest — what uses the voice owner approved.
- Voice model — the actual acoustic data.
- Personality config — the style prompts and refusal patterns.
Manifest format
{
"schema_version": "1.0",
"persona_id": "per_01HX3A...",
"name": "Warm British Narrator",
"version": "2.1.0",
"creator": { "id": "creator_abc", "name": "Jamie Lee" },
"compatibility": ["gera.agent.v2+", "robot.gera.v1+"],
"locales": ["en-GB", "en-US"],
"voice_tier": "studio",
"content_ratings": ["PG"],
"subscription_model": "per-install-monthly"
}Consent manifest
The consent manifest is the legal-technical backbone of the platform. It records:
{
"consenting_party": {
"identity": "verified_creator:creator_abc",
"relationship": "self",
"consent_date": "2026-03-10",
"consent_method": "signed-contract"
},
"allowed_use_cases": [
"personal_household",
"narrator",
"meditation",
"audiobook"
],
"disallowed_use_cases": [
"political_advocacy",
"explicit_content",
"financial_instruction",
"impersonation_to_third_party_without_disclosure"
],
"invocation_allow_list": "public",
"revocation_contacts": ["creator:creator_abc"],
"estate_beneficiaries": [
{ "party": "heir_xyz", "share_percent": 100 }
]
}The consent manifest is the gate at runtime. Any invocation that falls outside allowed_use_cases is refused with the reason logged.
Voice model tiers
- Studio tier — full acoustic model recorded in studio conditions; larger package, highest quality.
- Home-recording tier — compact model trained on user-uploaded recordings; smaller package, good quality with warnings about volume / naturalness.
- Heritage tier — models trained from archival recordings (home videos, interviews); lowest fidelity, highest emotional value.
Personality config
The personality config shapes what the persona says as well as how. It contains:
- Style prompts (“speak slowly, use traditional storytelling cadences”).
- Preferred vocabulary / avoided vocabulary.
- Refusal patterns (“when asked about politics, gracefully decline and offer to read a poem instead”).
- Disclosure patterns (“when invoked outside the declared-family allow-list, state that this is a voice skin of X”).
Install flow
- User browses catalogue; selects persona; clicks install.
- Platform verifies the host device is compatible (checks
compatibilityvs device capability descriptor). - Platform verifies the invoker identity is in the
invocation_allow_list. - Platform downloads the package and verifies signature against creator’s public key.
- Package is decrypted, the voice model loads, the personality config applies.
- Subscription billing activates; residual payments begin accruing to creator.
Runtime behaviour
Every response from a persona-skinned agent passes through three gates before being spoken:
- Consent-scope gate: is this use-case in
allowed_use_cases? If not, refuse with reason. - Personality-config gate: does the proposed response fit the style / vocabulary / refusal patterns?
- Disclosure gate: does the context require a “this is a voice skin” prelude? If so, prepend.
Revocation and uninstall
Revocation: creators can revoke a persona with 90 days notice. During the notice period, installed users see warnings. After the period, the package stops activating on new sessions; already-active sessions complete normally.
Uninstall: users can uninstall any time. Residuals stop at the end of the current billing cycle. A 30-day reinstall grace period applies.
Integration with GeraNexus and GeraWitness
Financial transactions initiated with a persona voice route through GeraNexus for consent tokens. High-value or sensitive persona uses are reviewable via GeraWitness. The persona is the voice; the transaction is the protocol.
Cross-links
See also: ethical checklist, residual payout.
Find the right voice.
Browse personas