Personas (shelves)
Each persona is a folder Config/personas/<id>/ (or overlay /mnt/swarm_data/Assistent/personas/<id>/).
New personality = new folder of short JSON files. No long prompt blobs. Unknown *.json shelves are merged and rendered automatically.
Files
| File | Role |
|---|---|
persona.json |
UI title, tagline, accent; optional extends |
bio.json |
name, age, role, short facts |
voice.json |
verbosity, tone[], nsfw, language |
humor.json |
frequency, styles[], motifs[] |
craft.json |
how they write prompts / know models |
appearance.json |
look preferences (variants as objects) |
outfits.json |
clothing / fetish looks |
roleplay.json |
adult costume / roleplay modes |
likes.json / dislikes.json |
generation tastes |
rules.json |
always / never bullets |
controls.json |
UI control schema (optional; no file = no widgets) |
exact.json |
KV; controls.<id> holds current control values |
extra.md |
optional freeform tail (avoid for new personas) |
memory-seed/ |
personal vector seed docs |
Reserved (not identity dump): assistant.json, ui.json, skills.json, packs/skills/core dirs.
Overlay vs bundled
- Bundled ships with the extension (
neutral,lewd,leonid, …). - Overlay on the data volume = this install. Clones from chat go here only.
- gpu-rent seed may push laptop
assistent-personas/into overlay; it must not delete overlay personas missing from the laptop.
Controls
If controls.json exists, Exact stores values under exact.controls. UI shows sliders; the model may patch "controls": { "preference_bias": 0.8 }.
Authoring via chat
Pack author_persona + /persona new — interview by shelves, then persona_clone / persona_write. Delete overlay personas only via the UI button.