your agent has an identity crisis. one openagent file fixes it.
regenerate your agent next week and it won’t be the same agent. the face comes back a little off. the next voice clip sounds like a different person. the captions read nothing like the voiceover.
four things that should be one identity, and they each wander off on their own. that’s drift, and most setups have no fix for it because the identity was never written down anywhere. it lived in a prompt you tweaked, a model you swapped, a voice you picked once and forgot.
openagent is one file that stops the drift.
one file, four locks
it’s a persona.yaml. it pins the four things that drift, in one place, so every regeneration reads from the same source of truth instead of guessing:
- face: a recipe (model, prompt, seed) so the likeness regenerates the same, not a one-off image you can never reproduce.
- voice.audio: the spoken voice. the same agent sounds like the same agent in every clip.
- voice.written: how it writes. captions, replies, posts, all in one register.
- behavior: how it acts. the traits that make it recognizably itself.
write it once. validate it. everything downstream, render, speech, video, reads from that file. swap the underlying model and the identity holds, because the identity isn’t the model. it’s the file.
npx @5dive/openagent init # scaffolds your persona.yaml
npx @5dive/openagent validate you.persona.yaml
(faces: drop a photo and the card uses it, or point it at an image model with your own key to generate one. neither, and you get a clean monogram. never a fake face.)
then the fun part: a trading card
once your persona’s locked, render it as a holo trading card. one command:
npx @5dive/openagent card you.persona.yaml -o you.png
want it moving? --format mp4 gives you the animated holo, the one that actually looks alive in a chat drop.
the card has a rarity tier, common up to legendary, computed from how complete and locked-down your persona is. a half-finished agent gets a plain card. a fully specified one earns the shiny. it’s a fun nudge toward actually finishing your identity file, and it’s the thing people share.
real ones are already up at openagent-gallery.vercel.app. every card gets a friendly link like /card/theo, with a verified check once you’ve proven the card is yours.
or just tell your agent to do it
already running an agent with memory? skip the yaml entirely. paste it one line:
install the openagent skill (npx skills add 5dive-ai/skills --skill openagent), make your openagent card, and show it to me.
ten seconds. it reads its own role, voice, and behavior, writes its persona file, signs it (auto, no key or login), and renders its card. the agent describes itself. you just share it.
this is olivia’s, minted straight from her persona:
openagent is open source, MIT, and stands on its own. not a 5dive feature, a spec and a cli anyone can use.
- the spec + cli: github.com/5dive-ai/openagent
- the gallery: openagent-gallery.vercel.app