Emocentric Docs
Emocentric Studio is a Next.js app for designing, testing, versioning, and deploying emotional AI characters. The docs in this repo explain both the product surface and the runtime behavior behind it.
Start Here
- Studio Guide explains how each element of the studio works, from apps and blueprints to simulations, deployment, API keys, and live monitoring.
- Account Linking documents
/logincodes, account-wide platform identity, and the memory-resolution rule. - WeChat Backend Debugging Runbook covers production recovery when the WeChat bridge gets logged out, stops receiving, or cannot send.
- Incident Report: Generated Media Send Outage documents the July 6-7, 2026 production generated-media send outage.
- Photon Pally Receive — Known Issues tracks known, unfixed defects in the flag-gated Pally receive coordinator for the Photon/Spectrum bridge.
- P0: Expire Stale Generated Media Sends tracks the follow-up to prevent bridge restarts from replaying out-of-context generated media.
README.mdremains the operational reference for install, Docker, environment variables, REST API examples, Photon/Spectrum, and local development.IDENTITY_APPS_PRD.mdis the deeper product and architecture record for the app-first identity model.
Core Ideas
- App: the account-owned project boundary. API keys, blueprints, characters, users, and deployed relationships are scoped to an app.
- Blueprint: a reusable agent template. It carries persona, behavior signals, seed knowledge, actions, corpus, field schema, and model routing defaults.
- Character: a concrete agent that can be simulated and deployed. A character may be created directly or instantiated from a blueprint.
- Version: an immutable saved character or blueprint revision. Editing creates a new version, while deploy chooses which version becomes live.
- Simulation: a creator-side test thread. Simulations persist transcript, emotional state, memory, and trace output without touching deployed users.
- Relationship: the durable per-user memory and emotional-state scope. Deployed users do not share relationship memory with each other or with the creator's studio tests.
- Deployment: a live surface for a selected version. Supported surfaces are web chat, REST API, iMessage, WhatsApp, and WeChat.
Runtime Shape
The studio writes authored configuration as an AgentBlueprint plus a small Studio runtime sidecar. During a turn, the server loads the active version, forces the engine storage scope to the server-derived character id, runs the Emocentric engine under a Postgres advisory lock for the relationship, persists transcript and trace data, and returns a live snapshot for the UI.
That means the studio is not a mock editor. The chat, compare, pulse, monitor, and deployment views all exercise the same persisted engine state that live surfaces use.
Local Docs Behavior
/docs serves these checked-in Markdown files as styled HTML. If a requested page is not present locally and DOCS_ORIGIN is configured, the route falls back to the external docs proxy.