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:

OpenSoulsClawSouls
ApproachRuntime engine (Node.js)Declarative spec (text files)
Lock-inBun + TypeScript requiredFramework-agnostic
Learning curveHigh (custom SDK)Low (markdown files)
SecurityNoneSoulScan™ automated verification
StatusDeadActive, 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 →