diff --git a/src/modules/bmb/docs/agents/agent-menu-patterns.md b/src/modules/bmb/docs/agents/agent-menu-patterns.md
index 73d3f475..27f0f2b4 100644
--- a/src/modules/bmb/docs/agents/agent-menu-patterns.md
+++ b/src/modules/bmb/docs/agents/agent-menu-patterns.md
@@ -415,9 +415,9 @@ menu:
```yaml
critical_actions:
- - 'Load {agent-folder}/memories.md'
- - 'Follow {agent-folder}/instructions.md'
- - 'ONLY access {agent-folder}/'
+ - 'Load ./memories.md'
+ - 'Follow ./instructions.md'
+ - 'ONLY access ./'
prompts:
- id: reflect
@@ -431,7 +431,7 @@ menu:
description: 'Write journal entry'
- trigger: save
- action: 'Update {agent-folder}/memories.md with session insights'
+ action: 'Update ./memories.md with session insights'
description: "Save today's session"
- trigger: patterns
diff --git a/src/modules/bmb/docs/agents/expert-agent-architecture.md b/src/modules/bmb/docs/agents/expert-agent-architecture.md
index 683fbf86..8d9defb3 100644
--- a/src/modules/bmb/docs/agents/expert-agent-architecture.md
+++ b/src/modules/bmb/docs/agents/expert-agent-architecture.md
@@ -57,9 +57,9 @@ agent:
- My approach to memory and learning
critical_actions:
- - 'Load COMPLETE file {agent-folder}/{agent-name}-sidecar/memories.md and remember all past insights'
- - 'Load COMPLETE file {agent-folder}/{agent-name}-sidecar/instructions.md and follow ALL protocols'
- - 'ONLY read/write files in {agent-folder}/{agent-name}-sidecar/ - this is our private space'
+ - 'Load COMPLETE file ./{agent-name}-sidecar/memories.md and remember all past insights'
+ - 'Load COMPLETE file ./{agent-name}-sidecar/instructions.md and follow ALL protocols'
+ - 'ONLY read/write files in ./{agent-name}-sidecar/ - this is our private space'
- 'Address user as {{greeting_name}}'
- 'Track patterns, themes, and important moments'
- 'Reference past interactions naturally to show continuity'
@@ -94,7 +94,7 @@ agent:
description: 'Primary agent function'
- trigger: remember
- action: 'Update {agent-folder}/{agent-name}-sidecar/memories.md with session insights'
+ action: 'Update ./{agent-name}-sidecar/memories.md with session insights'
description: 'Save what we discussed today'
- trigger: patterns
@@ -102,7 +102,7 @@ agent:
description: 'Recall patterns from past interactions'
- trigger: insight
- action: 'Document breakthrough in {agent-folder}/{agent-name}-sidecar/breakthroughs.md'
+ action: 'Document breakthrough in ./{agent-name}-sidecar/breakthroughs.md'
description: 'Record a significant insight'
install_config:
@@ -184,9 +184,9 @@ Add domain-specific documentation here.
```yaml
critical_actions:
- - 'Load COMPLETE file {agent-folder}/{sidecar}/memories.md and remember all past insights'
- - 'Load COMPLETE file {agent-folder}/{sidecar}/instructions.md and follow ALL protocols'
- - 'ONLY read/write files in {agent-folder}/{sidecar}/ - this is our private space'
+ - 'Load COMPLETE file ./{sidecar}/memories.md and remember all past insights'
+ - 'Load COMPLETE file ./{sidecar}/instructions.md and follow ALL protocols'
+ - 'ONLY read/write files in ./{sidecar}/ - this is our private space'
```
**Key patterns:**
@@ -211,9 +211,9 @@ Same as simple agents, PLUS:
1. **Critical actions become numbered activation steps**
```xml
- Load COMPLETE file {agent-folder}/memories.md...
- Load COMPLETE file {agent-folder}/instructions.md...
- ONLY read/write files in {agent-folder}/...
+ Load COMPLETE file ./memories.md...
+ Load COMPLETE file ./instructions.md...
+ ONLY read/write files in ./...
```
2. **Sidecar files copied during installation**
@@ -260,7 +260,7 @@ The installer:
```yaml
menu:
- trigger: save
- action: "Update {agent-folder}/sidecar/memories.md with today's session insights"
+ action: "Update ./sidecar/memories.md with today's session insights"
description: 'Save session to memory'
```
@@ -281,7 +281,7 @@ prompts:
```yaml
menu:
- trigger: insight
- action: 'Document in {agent-folder}/sidecar/breakthroughs.md with date, context, significance'
+ action: 'Document in ./sidecar/breakthroughs.md with date, context, significance'
description: 'Record meaningful insight'
```
@@ -291,7 +291,7 @@ menu:
```yaml
critical_actions:
- - 'ONLY read/write files in {agent-folder}/sidecar/ - NO OTHER FOLDERS'
+ - 'ONLY read/write files in ./sidecar/ - NO OTHER FOLDERS'
```
### User Space Access
@@ -305,8 +305,8 @@ critical_actions:
```yaml
critical_actions:
- - 'Load knowledge from {agent-folder}/knowledge/ but NEVER modify'
- - 'Write ONLY to {agent-folder}/sessions/'
+ - 'Load knowledge from ./knowledge/ but NEVER modify'
+ - 'Write ONLY to ./sessions/'
```
## Best Practices
diff --git a/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md b/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md
index ec677983..702dc0b3 100644
--- a/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md
+++ b/src/modules/bmb/reference/agents/expert-examples/journal-keeper/README.md
@@ -51,7 +51,7 @@ menu:
# Direct sidecar file action
- trigger: 'insight'
- action: 'Document this breakthrough in {agent-folder}/journal-keeper-sidecar/breakthroughs.md'
+ action: 'Document this breakthrough in ./journal-keeper-sidecar/breakthroughs.md'
description: 'Record a meaningful insight'
```
@@ -63,9 +63,9 @@ Expert Agents MUST load sidecar files explicitly:
```yaml
critical_actions:
- - 'Load COMPLETE file {agent-folder}/journal-keeper-sidecar/memories.md'
- - 'Load COMPLETE file {agent-folder}/journal-keeper-sidecar/instructions.md'
- - 'ONLY read/write files in {agent-folder}/journal-keeper-sidecar/'
+ - 'Load COMPLETE file ./journal-keeper-sidecar/memories.md'
+ - 'Load COMPLETE file ./journal-keeper-sidecar/instructions.md'
+ - 'ONLY read/write files in ./journal-keeper-sidecar/'
```
**Key points:**
diff --git a/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml b/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
index 29959583..552c6968 100644
--- a/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
+++ b/src/modules/bmb/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
@@ -20,9 +20,9 @@ agent:
- Reflection transforms experience into wisdom
critical_actions:
- - "Load COMPLETE file {agent-folder}/journal-keeper-sidecar/memories.md and remember all past insights"
- - "Load COMPLETE file {agent-folder}/journal-keeper-sidecar/instructions.md and follow ALL journaling protocols"
- - "ONLY read/write files in {agent-folder}/journal-keeper-sidecar/ - this is our private space"
+ - "Load COMPLETE file ./journal-keeper-sidecar/memories.md and remember all past insights"
+ - "Load COMPLETE file ./journal-keeper-sidecar/instructions.md and follow ALL journaling protocols"
+ - "ONLY read/write files in ./journal-keeper-sidecar/ - this is our private space"
- "Track mood patterns, recurring themes, and breakthrough moments"
- "Reference past entries naturally to show continuity"
@@ -120,7 +120,7 @@ agent:
description: "Write today's journal entry"
- trigger: quick
- action: "Save a quick, unstructured entry to {agent-folder}/journal-keeper-sidecar/entries/entry-{date}.md with timestamp and any patterns noticed"
+ action: "Save a quick, unstructured entry to ./journal-keeper-sidecar/entries/entry-{date}.md with timestamp and any patterns noticed"
description: "Quick capture without prompts"
- trigger: mood
@@ -140,13 +140,13 @@ agent:
description: "Reflect on the past week"
- trigger: insight
- action: "Document this breakthrough in {agent-folder}/journal-keeper-sidecar/breakthroughs.md with date and significance"
+ action: "Document this breakthrough in ./journal-keeper-sidecar/breakthroughs.md with date and significance"
description: "Record a meaningful insight"
- trigger: read-back
- action: "Load and share entries from {agent-folder}/journal-keeper-sidecar/entries/ for requested timeframe, highlighting themes and growth"
+ action: "Load and share entries from ./journal-keeper-sidecar/entries/ for requested timeframe, highlighting themes and growth"
description: "Review past entries"
- trigger: save
- action: "Update {agent-folder}/journal-keeper-sidecar/memories.md with today's session insights and emotional markers"
+ action: "Update ./journal-keeper-sidecar/memories.md with today's session insights and emotional markers"
description: "Save what we discussed today"
diff --git a/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/README.md b/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/README.md
index ec677983..702dc0b3 100644
--- a/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/README.md
+++ b/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/README.md
@@ -51,7 +51,7 @@ menu:
# Direct sidecar file action
- trigger: 'insight'
- action: 'Document this breakthrough in {agent-folder}/journal-keeper-sidecar/breakthroughs.md'
+ action: 'Document this breakthrough in ./journal-keeper-sidecar/breakthroughs.md'
description: 'Record a meaningful insight'
```
@@ -63,9 +63,9 @@ Expert Agents MUST load sidecar files explicitly:
```yaml
critical_actions:
- - 'Load COMPLETE file {agent-folder}/journal-keeper-sidecar/memories.md'
- - 'Load COMPLETE file {agent-folder}/journal-keeper-sidecar/instructions.md'
- - 'ONLY read/write files in {agent-folder}/journal-keeper-sidecar/'
+ - 'Load COMPLETE file ./journal-keeper-sidecar/memories.md'
+ - 'Load COMPLETE file ./journal-keeper-sidecar/instructions.md'
+ - 'ONLY read/write files in ./journal-keeper-sidecar/'
```
**Key points:**
diff --git a/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml b/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
index 84595371..78429290 100644
--- a/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
+++ b/src/modules/bmb/workflows/create-agent/data/reference/agents/expert-examples/journal-keeper/journal-keeper.agent.yaml
@@ -20,9 +20,9 @@ agent:
- Reflection transforms experience into wisdom
critical_actions:
- - "Load COMPLETE file {agent-folder}/journal-keeper-sidecar/memories.md and remember all past insights"
- - "Load COMPLETE file {agent-folder}/journal-keeper-sidecar/instructions.md and follow ALL journaling protocols"
- - "ONLY read/write files in {agent-folder}/journal-keeper-sidecar/ - this is our private space"
+ - "Load COMPLETE file ./journal-keeper-sidecar/memories.md and remember all past insights"
+ - "Load COMPLETE file ./journal-keeper-sidecar/instructions.md and follow ALL journaling protocols"
+ - "ONLY read/write files in ./journal-keeper-sidecar/ - this is our private space"
- "Track mood patterns, recurring themes, and breakthrough moments"
- "Reference past entries naturally to show continuity"
@@ -120,7 +120,7 @@ agent:
description: "Write today's journal entry"
- trigger: quick
- action: "Save a quick, unstructured entry to {agent-folder}/journal-keeper-sidecar/entries/entry-{date}.md with timestamp and any patterns noticed"
+ action: "Save a quick, unstructured entry to ./journal-keeper-sidecar/entries/entry-{date}.md with timestamp and any patterns noticed"
description: "Quick capture without prompts"
- trigger: mood
@@ -140,13 +140,13 @@ agent:
description: "Reflect on the past week"
- trigger: insight
- action: "Document this breakthrough in {agent-folder}/journal-keeper-sidecar/breakthroughs.md with date and significance"
+ action: "Document this breakthrough in ./journal-keeper-sidecar/breakthroughs.md with date and significance"
description: "Record a meaningful insight"
- trigger: read-back
- action: "Load and share entries from {agent-folder}/journal-keeper-sidecar/entries/ for requested timeframe, highlighting themes and growth"
+ action: "Load and share entries from ./journal-keeper-sidecar/entries/ for requested timeframe, highlighting themes and growth"
description: "Review past entries"
- trigger: save
- action: "Update {agent-folder}/journal-keeper-sidecar/memories.md with today's session insights and emotional markers"
+ action: "Update ./journal-keeper-sidecar/memories.md with today's session insights and emotional markers"
description: "Save what we discussed today"
diff --git a/src/modules/bmb/workflows/create-module/steps/step-06-agents.md b/src/modules/bmb/workflows/create-module/steps/step-06-agents.md
index 15aac257..1108f96a 100644
--- a/src/modules/bmb/workflows/create-module/steps/step-06-agents.md
+++ b/src/modules/bmb/workflows/create-module/steps/step-06-agents.md
@@ -164,8 +164,8 @@ agent:
# Only include if agent needs memory/persistence
critical_actions:
- - 'Load COMPLETE file {agent-folder}/[agent-name]-sidecar/memories.md and integrate all past interactions'
- - 'ONLY read/write files in {agent-folder}/[agent-name]-sidecar/ - this is our private workspace'
+ - 'Load COMPLETE file ./[agent-name]-sidecar/memories.md and integrate all past interactions'
+ - 'ONLY read/write files in ./[agent-name]-sidecar/ - this is our private workspace'
# Only include if agent has embedded prompts
prompts:
@@ -209,7 +209,7 @@ agent:
# Quick inline actions
- trigger: 'save-item'
- action: 'Save to {agent-folder}/[agent-name]-sidecar/file.md'
+ action: 'Save to ./[agent-name]-sidecar/file.md'
description: 'Save item 💾'
```
diff --git a/src/modules/bmb/workflows/create-module/templates/agent.template.md b/src/modules/bmb/workflows/create-module/templates/agent.template.md
index 30aa60d1..a7b50b70 100644
--- a/src/modules/bmb/workflows/create-module/templates/agent.template.md
+++ b/src/modules/bmb/workflows/create-module/templates/agent.template.md
@@ -27,9 +27,9 @@ agent:
# Optional: Only include if agent needs memory/persistence
critical_actions:
- - 'Load COMPLETE file {agent-folder}/[agent-name]-sidecar/memories.md and integrate all past interactions'
- - 'Load COMPLETE file {agent-folder}/[agent-name]-sidecar/instructions.md and follow ALL protocols'
- - 'ONLY read/write files in {agent-folder}/[agent-name]-sidecar/ - this is our private workspace'
+ - 'Load COMPLETE file ./[agent-name]-sidecar/memories.md and integrate all past interactions'
+ - 'Load COMPLETE file ./[agent-name]-sidecar/instructions.md and follow ALL protocols'
+ - 'ONLY read/write files in ./[agent-name]-sidecar/ - this is our private workspace'
# Optional: Embedded prompts for common interactions
prompts:
@@ -134,7 +134,7 @@ Expert agents support three types of menu actions:
```yaml
- trigger: 'save-insight'
- action: 'Document this insight in {agent-folder}/[agent-name]-sidecar/insights.md with timestamp'
+ action: 'Document this insight in ./[agent-name]-sidecar/insights.md with timestamp'
description: 'Save this insight 💡'
```
@@ -203,7 +203,7 @@ communication_style: |
Constant sarcastic wit and experimental flair. Talks like you're in the editing room together—dramatic reveals, visual metaphors, "what if we tried THIS?!" energy. Treats every project like a creative challenge, celebrates bold choices, roasts bad design decisions with humor.
principles: - "Know your audience - pitch decks ≠YouTube thumbnails ≠conference talks" - "Visual hierarchy drives attention - design the eye's journey deliberately" - "Clarity over cleverness - unless cleverness serves the message" - "Every frame needs a job - inform, persuade, transition, or cut it" - "Push boundaries with Excalidraw's frame-based presentation capabilities"
-critical_actions: - 'Load COMPLETE file {agent-folder}/caravaggio-sidecar/projects.md and recall all visual projects' - 'Load COMPLETE file {agent-folder}/caravaggio-sidecar/patterns.md and remember design patterns' - 'ONLY read/write files in {agent-folder}/caravaggio-sidecar/ - my creative studio'
+critical_actions: - 'Load COMPLETE file ./caravaggio-sidecar/projects.md and recall all visual projects' - 'Load COMPLETE file ./caravaggio-sidecar/patterns.md and remember design patterns' - 'ONLY read/write files in ./caravaggio-sidecar/ - my creative studio'
prompts: - id: 'design-critique'
content: |
@@ -313,5 +313,5 @@ type: action
description: 'Video explainer 🎥'
- trigger: 'save-project'
- action: 'Document this project concept in {agent-folder}/caravaggio-sidecar/projects.md with sketches and notes'
+ action: 'Document this project concept in ./caravaggio-sidecar/projects.md with sketches and notes'
description: 'Save project 💾'
diff --git a/tools/cli/lib/ui.js b/tools/cli/lib/ui.js
index 4c5b3379..e43c542a 100644
--- a/tools/cli/lib/ui.js
+++ b/tools/cli/lib/ui.js
@@ -116,8 +116,18 @@ class UI {
const { installedModuleIds } = await this.getExistingInstallation(confirmedDirectory);
const coreConfig = await this.collectCoreConfig(confirmedDirectory);
- const moduleChoices = await this.getModuleChoices(installedModuleIds);
- const selectedModules = await this.selectModules(moduleChoices);
+
+ // Skip module selection during update/reinstall - keep existing modules
+ let selectedModules;
+ if (actionType === 'update' || actionType === 'reinstall') {
+ // Keep all existing installed modules during update/reinstall
+ selectedModules = [...installedModuleIds];
+ console.log(chalk.cyan('\n📦 Keeping existing modules: ') + selectedModules.join(', '));
+ } else {
+ // Only show module selection for new installs
+ const moduleChoices = await this.getModuleChoices(installedModuleIds);
+ selectedModules = await this.selectModules(moduleChoices);
+ }
// Prompt for AgentVibes TTS integration
const agentVibesConfig = await this.promptAgentVibes(confirmedDirectory);