Fix manifest to list all library files explicitly

WebFetch can't handle glob patterns. Now manifest lists each persona,
modality, and structure file explicitly. Update command now checks for
new library options and offers to add them.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Anthony Taglianetti
2026-02-08 14:54:33 -08:00
parent ed4e89f106
commit 2515398ec5
2 changed files with 58 additions and 22 deletions
+13 -2
View File
@@ -1,4 +1,4 @@
<!-- version: 1.1.0 -->
<!-- version: 1.2.0 -->
# Customization Commands
The client can request changes to their therapy setup during a session. All customization files are stored locally in `.therapy/library/`.
@@ -70,7 +70,7 @@ Recognize conversational requests, not just exact command phrases:
https://raw.githubusercontent.com/ataglianetti/inner-dialogue/main/manifest.json
```
3. For each component in manifest, fetch the file and extract its version from `<!-- version: X.Y.Z -->` header
3. For each component in `components`, fetch the file and extract its version from `<!-- version: X.Y.Z -->` header
4. Compare with installed versions and show available updates:
> **Updates available:**
@@ -86,6 +86,17 @@ Recognize conversational requests, not just exact command phrases:
6. Always recommend safety-protocol updates (crisis resources should never be stale)
7. **Check library for new options:**
- Compare files in manifest's `library` section against `.therapy/library/`
- If new personas, modalities, or structures are available:
> **New options available:**
> - 2 new personas (Creative & Playful, Contemplative & Spacious)
> - 3 new modalities (IFS, Somatic Experiencing, Narrative)
>
> Add these to your library?
- Fetch each file from `base_url` + file path
- Write to the `target` directory
## When client says "import", "import notes", or "I have files to import"
1. Ask for the file or folder path:
+37 -12
View File
@@ -1,6 +1,7 @@
{
"version": "1.0.0",
"version": "1.1.0",
"description": "Inner Dialogue updatable components",
"base_url": "https://raw.githubusercontent.com/ataglianetti/inner-dialogue/main/",
"components": {
"safety-protocol": {
"file": "safety-protocol.md",
@@ -13,25 +14,49 @@
"target": ".therapy/commands.md",
"required": true,
"description": "Customization commands (import, update, persona, etc.)"
}
},
"library": {
"personas": {
"files": "personas/*.md",
"target": ".therapy/library/personas/",
"required": false,
"description": "Communication style options"
"description": "Communication style options",
"files": [
"personas/warm-4o.md",
"personas/direct-challenging.md",
"personas/warm-supportive.md",
"personas/coach.md",
"personas/grounded-real.md",
"personas/contemplative.md",
"personas/philosophical.md",
"personas/creative.md"
]
},
"modalities": {
"files": "modalities/*.md",
"target": ".therapy/library/modalities/",
"required": false,
"description": "Therapeutic approach options"
"description": "Therapeutic approach options",
"files": [
"modalities/cbt.md",
"modalities/act.md",
"modalities/cft.md",
"modalities/dbt-skills.md",
"modalities/ifs.md",
"modalities/lifespan-integration.md",
"modalities/motivational-interviewing.md",
"modalities/narrative.md",
"modalities/polyvagal.md",
"modalities/psychodynamic.md",
"modalities/sfbt.md",
"modalities/somatic-experiencing.md"
]
},
"structures": {
"files": "structures/*.md",
"target": ".therapy/library/structures/",
"required": false,
"description": "Session structure options"
"description": "Session structure options",
"files": [
"structures/structured.md",
"structures/moderate.md",
"structures/freeform.md"
]
}
}
},
"base_url": "https://raw.githubusercontent.com/ataglianetti/inner-dialogue/main/"
}