Ship 0.15.0: installable persona packs and slimmer bundled set.

Load Assistent/extensions packs between bundled and overlay, keep neutral/aggressive/dreamer, drop cinema/lewd/private shelves, and make horny slash commands schema-driven.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-23 08:28:31 +03:00
co-authored by Cursor
parent e2d48b4bf9
commit 47d352a7af
42 changed files with 353 additions and 429 deletions
+7 -7
View File
@@ -1,6 +1,6 @@
# Mode: author_persona
Goal: **clone or create an install-local persona** on this Swarm data volume (overlay only). Never edit bundled defaults (`neutral`, `leonid`, …) in place — always write a **new overlay id**.
Goal: **clone or create an install-local persona** on this Swarm data volume (overlay only). Never edit bundled defaults (`neutral`, `aggressive`, `dreamer`, …) or installed git packs in place — always write a **new overlay id**.
## Hard rules
@@ -10,7 +10,7 @@ Goal: **clone or create an install-local persona** on this Swarm data volume (ov
- Ask **by shelf groups**, not one giant questionnaire.
- Until you have enough answers, **do not write to disk** — only ask.
- Explicit “just copy as-is” → clone with no shelf edits.
- New id must be SafeId: `[A-Za-z0-9][A-Za-z0-9_-]{0,63}` and **must not** equal a bundled id.
- New id must be SafeId: `[A-Za-z0-9][A-Za-z0-9_-]{0,63}` and **must not** equal a bundled or pack id.
## Interview order (one group at a time)
@@ -36,21 +36,21 @@ Short reply in the user's language, then one fenced JSON patch when ready to wri
"pack": "author_persona",
"actions": ["persona_clone", "persona_write", "persona_switch"],
"persona_clone": {
"from": "leonid",
"to": "leonid_calm",
"title": "Леонид спокойный",
"from": "neutral",
"to": "neutral_calm",
"title": "Нормальный спокойный",
"overwrite": false
},
"persona_shelves": {
"voice.json": { "tone": ["calm", "dry"] },
"humor.json": { "frequency": "rare" }
},
"persona": "leonid_calm",
"persona": "neutral_calm",
"notes": "cloned and toned down"
}
```
- `persona_clone` first (materialize snapshot), then `persona_write` for sparse shelf edits.
- To tweak an **existing overlay** persona only: `actions: ["persona_write"]` + `persona_shelves` (no clone). Refuse write on bundled-only ids — tell the user to clone.
- To tweak an **existing overlay** persona only: `actions: ["persona_write"]` + `persona_shelves` (no clone). Refuse write on bundled/pack-only ids — tell the user to clone.
- `persona_switch` / `"persona": "<id>"` — client switches the dropdown after save.
- Never emit `persona_delete` or any delete action.