diff --git a/README.md b/README.md index 3d7f5cb..1286074 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Elsewhere -Elsewhere is an Express + SQLite app for account-based chat, persona management, roleplay chat sessions, and a simple persona market backed by a remote model API. +Elsewhere is an Express + SQLite app for account-based chat with centrally curated AI personalities, backed by a remote model API. A space for every conversation. Six appearance styles (Grove, Parchment, Aurora, Current, Iris, and Graphite) each support light and dark modes. The Elsewhere identity stays consistent across styles. Internal theme and storage keys remain stable to preserve saved preferences. @@ -375,3 +375,8 @@ All page routes render the same navigation from `src/pageLayout.js` into the `.test.js`; combining all files without isolation can leak their browser globals and mocks between suites. +# AI personalities + +Conversation personalities are centrally defined in `src/services/personalityRegistry.js`. The registry exports stable IDs, public metadata, and private system prompts; `/personalities` returns metadata only. Each chat stores its selected `personality_id` in SQLite, defaulting to `general-assistant`. The chat service resolves that ID on the server for regular replies, streaming, and regeneration. The migration adds this column with a General Assistant default and leaves legacy persona tables and records intact. + +To add a personality, add one registry entry with a unique kebab-case ID, display name, purpose description, icon, category, and complete `systemPrompt`. Do not expose the prompt in public metadata. No schema migration is needed for a new registry entry. Optional generation parameters are not currently applied; explicit per-chat model settings and the configured Ollama model remain authoritative. diff --git a/public/chat.html b/public/chat.html index 9fe66c0..bd4f1de 100644 --- a/public/chat.html +++ b/public/chat.html @@ -61,8 +61,7 @@ aria-controls="chatDrawer" aria-label="Change AI model">ModelLoading... - PersonaNone +
No default user persona - set.
- -Chat
A space for every conversation.
Talk it through. Make something up.
Meet a character and see where it goes.
Talk it through. Make something up.
Choose an assistant for the work ahead.