The Rise
OpenSouls (⭐294 on GitHub) positioned themselves as “NextJS + Vercel for the minds of digital beings.” They built an impressive runtime engine:
- WorkingMemory: Immutable memory collections
- cognitiveSteps: Functions that transform memory and return typed responses
- MentalProcesses: State machines for behavioral modes (introduction → guessing → frustrated)
They drew inspiration from neuroscience and psychology. Their @opensouls/soul npm package reached 76 versions.
The Fall
Today:
- 🔴 Website (opensouls.com) — down
- 🔴 Documentation (docs.opensouls.com) — down
- 🔴 Most GitHub repos — deleted or private
- 🔴 Last npm publish — over a year ago
No shutdown announcement. Just silence.
Why It Died
We can’t know for certain, but the evidence points to several factors:
1. Runtime Lock-in
Bun-only, TypeScript-only. If you wanted to use OpenSouls, you committed to their entire stack. As the LLM ecosystem evolved at breakneck speed, being locked to one runtime became a liability.
2. Complexity vs. Value
WorkingMemory, cognitiveSteps, MentalProcesses… steep learning curve. Meanwhile, most developers found that a well-crafted system prompt got them 80% of the way there. The remaining 20% wasn’t worth learning an entire new framework.
3. Market Shift
Started during the “AI character” boom (Character.AI era). The market quickly pivoted to agents and tool use. An emotion/personality engine suddenly felt less relevant.
4. Business Model Gap
Open-source engine + cloud hosting. But developers could just call LLM APIs directly. Why add a middleware layer?
The Lesson for Us
Soul Spec takes a fundamentally different approach, building on the declarative file pattern already established by frameworks like OpenClaw:
| OpenSouls | ClawSouls | |
|---|---|---|
| Approach | Runtime engine (Node.js) | Declarative spec (text files) |
| Lock-in | Bun + TypeScript required | Framework-agnostic |
| Learning curve | High (custom SDK) | Low (markdown files) |
| Security | None | SoulScan™ automated verification |
| Status | Dead | Active, 80+ souls |
The key insight: personas should be data, not code. Text files that any framework can read, not an SDK that locks you in. Frameworks like OpenClaw already understood this — Soul Spec formalizes it into a portable, verifiable standard.
OpenSouls proved the demand exists. They just picked the wrong abstraction layer.
Soul Spec is the open, declarative alternative. Browse community souls →