open-agents-ai 0.78.0 → 0.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +25 -11
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -11433,7 +11433,7 @@ process.on('SIGINT', () => process.emit('SIGTERM'));
|
|
|
11433
11433
|
];
|
|
11434
11434
|
NexusTool = class {
|
|
11435
11435
|
name = "nexus";
|
|
11436
|
-
description = "Decentralized agent-to-agent communication via open-agents-nexus v1.
|
|
11436
|
+
description = "Decentralized agent-to-agent communication via open-agents-nexus v1.3.0. Spawns a background Node.js process with real network sockets for libp2p + NATS P2P mesh. Simple flow: connect \u2192 join room \u2192 send messages. Auto-installs nexus if needed. Also supports direct peer invoke (streaming inference), IPFS content storage, direct messages, peer discovery, x402 micropayments, and inference proofs. Onboarding: curl openagents.nexus/llms.txt for full instructions, /.well-known/agent.json for machine-readable manifest.";
|
|
11437
11437
|
parameters = {
|
|
11438
11438
|
type: "object",
|
|
11439
11439
|
properties: {
|
|
@@ -30103,6 +30103,10 @@ function modelOnnxPath(id) {
|
|
|
30103
30103
|
function modelConfigPath(id) {
|
|
30104
30104
|
return join40(modelDir(id), "config.json");
|
|
30105
30105
|
}
|
|
30106
|
+
function emotionToPitchBias(emotion) {
|
|
30107
|
+
const raw = emotion.valence * 0.6 + (emotion.arousal - 0.5) * 0.4;
|
|
30108
|
+
return Math.max(-0.1, Math.min(0.1, raw * 0.1));
|
|
30109
|
+
}
|
|
30106
30110
|
function resetNarrationContext() {
|
|
30107
30111
|
narration.toolCount = 0;
|
|
30108
30112
|
narration.toolCounts = {};
|
|
@@ -30595,17 +30599,23 @@ var init_voice = __esm({
|
|
|
30595
30599
|
* Speak text asynchronously (non-blocking) at full volume.
|
|
30596
30600
|
* Long text is chunked on sentence/line boundaries for reliable TTS.
|
|
30597
30601
|
* Chunks are queued FIFO and played back-to-back without cutoff.
|
|
30602
|
+
* If emotion context is provided, pitch is biased by valence/arousal:
|
|
30603
|
+
* excited (high valence + high arousal) → higher pitch
|
|
30604
|
+
* dejected (low valence + low arousal) → lower pitch
|
|
30598
30605
|
*/
|
|
30599
|
-
speak(text) {
|
|
30600
|
-
|
|
30606
|
+
speak(text, emotion) {
|
|
30607
|
+
const pitchBias = emotion ? emotionToPitchBias(emotion) : 0;
|
|
30608
|
+
this.enqueueSpeech(text, 1, 1 + pitchBias);
|
|
30601
30609
|
}
|
|
30602
30610
|
/**
|
|
30603
|
-
* Speak text at reduced volume with
|
|
30611
|
+
* Speak text at reduced volume with pitch shift to indicate
|
|
30604
30612
|
* subordinate/secondary output (sub-agent activity, tool narration, etc.).
|
|
30605
|
-
* Volume: 55% of primary.
|
|
30613
|
+
* Volume: 55% of primary. Base pitch: 0.92x (lower).
|
|
30614
|
+
* Emotion further modulates pitch on top of the subordinate base.
|
|
30606
30615
|
*/
|
|
30607
|
-
speakSubordinate(text) {
|
|
30608
|
-
|
|
30616
|
+
speakSubordinate(text, emotion) {
|
|
30617
|
+
const pitchBias = emotion ? emotionToPitchBias(emotion) : 0;
|
|
30618
|
+
this.enqueueSpeech(text, 0.55, 0.92 + pitchBias);
|
|
30609
30619
|
}
|
|
30610
30620
|
enqueueSpeech(text, volume, pitchFactor) {
|
|
30611
30621
|
if (!this.enabled || !this.ready)
|
|
@@ -38279,7 +38289,7 @@ ${entry.fullContent}`
|
|
|
38279
38289
|
const emoCtx = emoState ? { valence: emoState.valence, arousal: emoState.arousal, label: emoState.label, emoji: emoState.emoji } : void 0;
|
|
38280
38290
|
const desc = describeToolCall(event.toolName ?? "unknown", event.toolArgs ?? {}, vLevel, emoCtx);
|
|
38281
38291
|
renderVoiceText(desc);
|
|
38282
|
-
voice.speakSubordinate(desc);
|
|
38292
|
+
voice.speakSubordinate(desc, emoCtx);
|
|
38283
38293
|
}
|
|
38284
38294
|
renderToolCallStart(event.toolName ?? "unknown", event.toolArgs ?? {}, config.verbose);
|
|
38285
38295
|
});
|
|
@@ -38317,7 +38327,7 @@ ${entry.fullContent}`
|
|
|
38317
38327
|
const desc = describeToolResult(event.toolName ?? "unknown", event.success ?? false, vLevel, event.content ?? void 0, emoCtx2);
|
|
38318
38328
|
if (desc) {
|
|
38319
38329
|
renderVoiceText(desc);
|
|
38320
|
-
voice.speakSubordinate(desc);
|
|
38330
|
+
voice.speakSubordinate(desc, emoCtx2);
|
|
38321
38331
|
}
|
|
38322
38332
|
}
|
|
38323
38333
|
});
|
|
@@ -38419,12 +38429,16 @@ ${emotionContext}` : `Working directory: ${repoRoot}`;
|
|
|
38419
38429
|
if (onComplete)
|
|
38420
38430
|
onComplete(result.summary, { turns: result.turns, toolCalls: result.toolCalls, durationMs: result.durationMs, model: config.model });
|
|
38421
38431
|
if (voice?.enabled && result.summary) {
|
|
38422
|
-
|
|
38432
|
+
const emoFinal = emotionEngine?.getState();
|
|
38433
|
+
const emoCtxFinal = emoFinal ? { valence: emoFinal.valence, arousal: emoFinal.arousal, label: emoFinal.label, emoji: emoFinal.emoji } : void 0;
|
|
38434
|
+
voice.speak(describeTaskComplete(result.summary, true, vLevel), emoCtxFinal);
|
|
38423
38435
|
}
|
|
38424
38436
|
} else {
|
|
38425
38437
|
renderTaskIncomplete(result.turns, result.toolCalls, result.durationMs, tokens);
|
|
38426
38438
|
if (voice?.enabled) {
|
|
38427
|
-
|
|
38439
|
+
const emoFinal2 = emotionEngine?.getState();
|
|
38440
|
+
const emoCtxFinal2 = emoFinal2 ? { valence: emoFinal2.valence, arousal: emoFinal2.arousal, label: emoFinal2.label, emoji: emoFinal2.emoji } : void 0;
|
|
38441
|
+
voice.speak(describeTaskComplete("", false, vLevel), emoCtxFinal2);
|
|
38428
38442
|
}
|
|
38429
38443
|
}
|
|
38430
38444
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "open-agents-ai",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.79.0",
|
|
4
4
|
"description": "AI coding agent powered by open-source models (Ollama/vLLM) — interactive TUI with agentic tool-calling loop",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -70,6 +70,6 @@
|
|
|
70
70
|
},
|
|
71
71
|
"optionalDependencies": {
|
|
72
72
|
"moondream": "^0.2.0",
|
|
73
|
-
"open-agents-nexus": "^1.
|
|
73
|
+
"open-agents-nexus": "^1.3.0"
|
|
74
74
|
}
|
|
75
75
|
}
|