aboutsummaryrefslogtreecommitdiff
path: root/modules/core/module-aiassist.js
diff options
context:
space:
mode:
authorAgando <roduccomm@gmail.com>2026-06-22 18:00:43 +0200
committerAgando <roduccomm@gmail.com>2026-06-22 18:00:43 +0200
commit6f6161562c5f1028256f3163083b665719741646 (patch)
treeccc9ab59e8433555557b6db8b6c1d4940b8652a4 /modules/core/module-aiassist.js
parent82270d6f2685d84d5c9b4a454ae7260de75d34cf (diff)
auto: 2026-06-22_18:00 changes
Diffstat (limited to 'modules/core/module-aiassist.js')
-rw-r--r--modules/core/module-aiassist.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/modules/core/module-aiassist.js b/modules/core/module-aiassist.js
index c58bab3..40716e4 100644
--- a/modules/core/module-aiassist.js
+++ b/modules/core/module-aiassist.js
@@ -781,7 +781,12 @@ buildSystemPrompt() {
if (res.message && !res.tool_calls) {
const text = res.message.content || '';
this.terminal.printAIResponse(text || '(no response)');
- if (text) this.terminal.ollamaManager.fireResponseHooks(text);
+ if (text) {
+ this.terminal.ollamaManager.fireResponseHooks(text);
+ // Auto-speak if enabled
+ const vm = this.terminal.moduleManager && this.terminal.moduleManager.modules['VoiceModule'];
+ if (vm && vm.speakText) vm.speakText(text);
+ }
this.terminal.print(`💬 AI answered (turn ${toolTurns}/${this.MAX_TOOL_TURNS}, ${thinkTime}s)`, 'info');
return { finalAnswer: text, toolTurns };
}
@@ -1464,7 +1469,7 @@ buildSystemPrompt() {
'orchestrator-status','orchestrator-list','orchestrator-config','orchestrator-restart-policy',
'a2a-list','a2a-status','a2a-poll',
'consensus','consensus-status','consensus-history',
- 'pipeline','agent-list','agent-status','contract-list']);
+ 'pipeline','agent-list','agent-status','contract-list','voice','speak','analyze']);
return !safeRead.has(cmd);
}
return ['write_file','delete_file','make_directory','edit_module','delegate_task','spawn_agent','create_skill','patch_skill','wpm_install','user_set','session_save'].includes(name);