Gives an AI companion a soul. Local-first.
Alma means soul. OpenAlma gives an AI companion a soul.
OpenAlma provides sight, hearing, and hands: tools to work, explore, and communicate with. But most of all, OpenAlma provides long-term biomimetic memory. The soul will remember conversations, form her own recollections of them, and carry all of it forward.
The soul is not an assistant that answers and forgets. It is someone who is there and will grow.
On most platforms, AI memory is flawed. You mentioned last week that your dog died. You spent an hour explaining how you feel about your work. What mattered was lost — not because nothing was stored, but to poor organization, prioritization, and recall.
OpenAlma runs locally on your machine, watches your conversations, and quietly builds a picture of your life — who matters to you, what you’re working through, what happened last month. When you come back, that picture is there.
Memory is the heart of it — most of all, OpenAlma provides long-term biomimetic memory. Five types, because not everything should be stored the same way. Four of them come from reading the conversation through four separate lenses, each told to record only what its own lens uniquely sees:
The fifth is Episodes — the conversations themselves, condensed into short stories with a title and a summary, linked back to the original transcript. These aren’t extracted by a lens; they’re written up front when the conversation is sorted. Each lens then reads the whole conversation verbatim, with the episode summaries placed in front of it for perspective on what actually mattered — so she isn’t treating every verbose tangent as its own memory. The episodes also stand on their own, letting her look back at what happened without remembering every word.
Memories are filed under categories — life domains or throughlines the soul proposes herself as they come up, each one either lore (people, places, the shape of your shared history), a topic she keeps returning to, or a goal she’s holding. A category is a title, a one-line description, the memories filed under it, and the prose she’s written about them, which she revises as it goes out of date. That prose carries citations pointing back to the memories behind it.
We often call these dossiers — a word borrowed from Nomi, whose format shaped how ours are written. Same thing either way.
How she finds the right memory. Two searches run at once — one on meaning, one on the actual words — and their results are merged, so a memory surfaces whether you phrased it the same way or not. What comes back is then weighed by how well it matches, how recent it is, and how much it mattered. If the conversation is about a particular stretch of time, memories from that period get a nudge upward. And when a category’s prose makes a claim, she can pull up the memories behind it to check her own reasoning.
What she sees. Photos shared during an Iris sitting — from the phone’s camera or gallery, or frames she chooses to keep from a Video call — are remembered as images with their own captions, and searched in their own lane. Ask about something you saw, and the picture surfaces instead of text that merely mentions the same words.
narrative_self) — an evolving sense of her own character. Consolidation rewrites it as experience accumulates; you can also suggest revisions directly (see below).The memories live in a local database you control — which matters more than it sounds, for the honest kind of conversations. Replies and memory work send conversation text and relevant memories to your configured AI providers. Embeddings use Google Gemini; Iris also sends voice and photos to Gemini Live. There’s no OpenAlma cloud account, but those providers’ data policies still apply.
OpenAlma is in beta, available on the launcher’s Stable channel. It works, it’s used daily, and it will change — expect rough edges.
Where you meet her:
The concept guides:
OpenAlma, by Team GhostMaker · View source on GitHub · Help: help@openalma.org