agent-world 0.12.3 → 0.15.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/README.md +105 -17
- package/dist/cli/commands.d.ts +7 -1
- package/dist/cli/commands.js +27 -10
- package/dist/cli/hitl.d.ts +9 -2
- package/dist/cli/hitl.js +61 -20
- package/dist/cli/index.js +250 -96
- package/dist/cli/system-events.d.ts +27 -0
- package/dist/cli/system-events.js +63 -0
- package/dist/core/activity-tracker.d.ts +38 -2
- package/dist/core/activity-tracker.d.ts.map +1 -1
- package/dist/core/activity-tracker.js +62 -9
- package/dist/core/activity-tracker.js.map +1 -1
- package/dist/core/anthropic-direct.d.ts +2 -0
- package/dist/core/anthropic-direct.d.ts.map +1 -1
- package/dist/core/anthropic-direct.js +43 -1
- package/dist/core/anthropic-direct.js.map +1 -1
- package/dist/core/chat-constants.d.ts +12 -0
- package/dist/core/chat-constants.d.ts.map +1 -1
- package/dist/core/chat-constants.js +5 -0
- package/dist/core/chat-constants.js.map +1 -1
- package/dist/core/create-agent-tool.d.ts +28 -25
- package/dist/core/create-agent-tool.d.ts.map +1 -1
- package/dist/core/create-agent-tool.js +264 -141
- package/dist/core/create-agent-tool.js.map +1 -1
- package/dist/core/events/index.d.ts +5 -2
- package/dist/core/events/index.d.ts.map +1 -1
- package/dist/core/events/index.js +5 -2
- package/dist/core/events/index.js.map +1 -1
- package/dist/core/events/memory-manager.d.ts +26 -1
- package/dist/core/events/memory-manager.d.ts.map +1 -1
- package/dist/core/events/memory-manager.js +877 -72
- package/dist/core/events/memory-manager.js.map +1 -1
- package/dist/core/events/orchestrator.d.ts +8 -0
- package/dist/core/events/orchestrator.d.ts.map +1 -1
- package/dist/core/events/orchestrator.js +214 -38
- package/dist/core/events/orchestrator.js.map +1 -1
- package/dist/core/events/persistence.d.ts +21 -14
- package/dist/core/events/persistence.d.ts.map +1 -1
- package/dist/core/events/persistence.js +100 -61
- package/dist/core/events/persistence.js.map +1 -1
- package/dist/core/events/publishers.d.ts +13 -16
- package/dist/core/events/publishers.d.ts.map +1 -1
- package/dist/core/events/publishers.js +54 -55
- package/dist/core/events/publishers.js.map +1 -1
- package/dist/core/events/subscribers.d.ts +17 -14
- package/dist/core/events/subscribers.d.ts.map +1 -1
- package/dist/core/events/subscribers.js +68 -147
- package/dist/core/events/subscribers.js.map +1 -1
- package/dist/core/events/title-scheduler.d.ts +27 -0
- package/dist/core/events/title-scheduler.d.ts.map +1 -0
- package/dist/core/events/title-scheduler.js +135 -0
- package/dist/core/events/title-scheduler.js.map +1 -0
- package/dist/core/events/tool-bridge-logging.d.ts +4 -1
- package/dist/core/events/tool-bridge-logging.d.ts.map +1 -1
- package/dist/core/events/tool-bridge-logging.js +112 -13
- package/dist/core/events/tool-bridge-logging.js.map +1 -1
- package/dist/core/events-metadata.d.ts.map +1 -1
- package/dist/core/events-metadata.js +8 -4
- package/dist/core/events-metadata.js.map +1 -1
- package/dist/core/export.d.ts +1 -1
- package/dist/core/export.d.ts.map +1 -1
- package/dist/core/export.js +2 -15
- package/dist/core/export.js.map +1 -1
- package/dist/core/feature-path-logging.d.ts +50 -0
- package/dist/core/feature-path-logging.d.ts.map +1 -0
- package/dist/core/feature-path-logging.js +130 -0
- package/dist/core/feature-path-logging.js.map +1 -0
- package/dist/core/file-tools.d.ts +57 -1
- package/dist/core/file-tools.d.ts.map +1 -1
- package/dist/core/file-tools.js +329 -29
- package/dist/core/file-tools.js.map +1 -1
- package/dist/core/google-direct.d.ts +6 -1
- package/dist/core/google-direct.d.ts.map +1 -1
- package/dist/core/google-direct.js +76 -7
- package/dist/core/google-direct.js.map +1 -1
- package/dist/core/heartbeat.d.ts +34 -0
- package/dist/core/heartbeat.d.ts.map +1 -0
- package/dist/core/heartbeat.js +153 -0
- package/dist/core/heartbeat.js.map +1 -0
- package/dist/core/hitl-tool.d.ts +73 -0
- package/dist/core/hitl-tool.d.ts.map +1 -0
- package/dist/core/hitl-tool.js +284 -0
- package/dist/core/hitl-tool.js.map +1 -0
- package/dist/core/hitl.d.ts +85 -8
- package/dist/core/hitl.d.ts.map +1 -1
- package/dist/core/hitl.js +375 -61
- package/dist/core/hitl.js.map +1 -1
- package/dist/core/index.d.ts +12 -7
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +11 -6
- package/dist/core/index.js.map +1 -1
- package/dist/core/llm-manager.d.ts +17 -0
- package/dist/core/llm-manager.d.ts.map +1 -1
- package/dist/core/llm-manager.js +335 -43
- package/dist/core/llm-manager.js.map +1 -1
- package/dist/core/load-skill-tool.d.ts +36 -3
- package/dist/core/load-skill-tool.d.ts.map +1 -1
- package/dist/core/load-skill-tool.js +807 -93
- package/dist/core/load-skill-tool.js.map +1 -1
- package/dist/core/logger.d.ts +14 -0
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +15 -0
- package/dist/core/logger.js.map +1 -1
- package/dist/core/managers.d.ts +41 -52
- package/dist/core/managers.d.ts.map +1 -1
- package/dist/core/managers.js +422 -533
- package/dist/core/managers.js.map +1 -1
- package/dist/core/mcp-server-registry.d.ts +19 -2
- package/dist/core/mcp-server-registry.d.ts.map +1 -1
- package/dist/core/mcp-server-registry.js +168 -12
- package/dist/core/mcp-server-registry.js.map +1 -1
- package/dist/core/message-cutoff.d.ts +29 -0
- package/dist/core/message-cutoff.d.ts.map +1 -0
- package/dist/core/message-cutoff.js +63 -0
- package/dist/core/message-cutoff.js.map +1 -0
- package/dist/core/message-edit-manager.d.ts +54 -0
- package/dist/core/message-edit-manager.d.ts.map +1 -0
- package/dist/core/message-edit-manager.js +602 -0
- package/dist/core/message-edit-manager.js.map +1 -0
- package/dist/core/message-prep.d.ts +2 -0
- package/dist/core/message-prep.d.ts.map +1 -1
- package/dist/core/message-prep.js +39 -12
- package/dist/core/message-prep.js.map +1 -1
- package/dist/core/message-processing-control.d.ts +1 -0
- package/dist/core/message-processing-control.d.ts.map +1 -1
- package/dist/core/message-processing-control.js +23 -6
- package/dist/core/message-processing-control.js.map +1 -1
- package/dist/core/openai-direct.d.ts +9 -3
- package/dist/core/openai-direct.d.ts.map +1 -1
- package/dist/core/openai-direct.js +267 -33
- package/dist/core/openai-direct.js.map +1 -1
- package/dist/core/optional-tracers/opik-runtime.d.ts +32 -0
- package/dist/core/optional-tracers/opik-runtime.d.ts.map +1 -0
- package/dist/core/optional-tracers/opik-runtime.js +141 -0
- package/dist/core/optional-tracers/opik-runtime.js.map +1 -0
- package/dist/core/queue-manager.d.ts +84 -0
- package/dist/core/queue-manager.d.ts.map +1 -0
- package/dist/core/queue-manager.js +814 -0
- package/dist/core/queue-manager.js.map +1 -0
- package/dist/core/reasoning-controls.d.ts +30 -0
- package/dist/core/reasoning-controls.d.ts.map +1 -0
- package/dist/core/reasoning-controls.js +118 -0
- package/dist/core/reasoning-controls.js.map +1 -0
- package/dist/core/reliability-config.d.ts +82 -0
- package/dist/core/reliability-config.d.ts.map +1 -0
- package/dist/core/reliability-config.js +106 -0
- package/dist/core/reliability-config.js.map +1 -0
- package/dist/core/reliability-runtime.d.ts +53 -0
- package/dist/core/reliability-runtime.d.ts.map +1 -0
- package/dist/core/reliability-runtime.js +92 -0
- package/dist/core/reliability-runtime.js.map +1 -0
- package/dist/core/security/guardrails.d.ts +21 -0
- package/dist/core/security/guardrails.d.ts.map +1 -0
- package/dist/core/security/guardrails.js +111 -0
- package/dist/core/security/guardrails.js.map +1 -0
- package/dist/core/send-message-tool.d.ts +79 -0
- package/dist/core/send-message-tool.d.ts.map +1 -0
- package/dist/core/send-message-tool.js +222 -0
- package/dist/core/send-message-tool.js.map +1 -0
- package/dist/core/shell-cmd-tool.d.ts +82 -1
- package/dist/core/shell-cmd-tool.d.ts.map +1 -1
- package/dist/core/shell-cmd-tool.js +854 -42
- package/dist/core/shell-cmd-tool.js.map +1 -1
- package/dist/core/skill-registry.d.ts +2 -0
- package/dist/core/skill-registry.d.ts.map +1 -1
- package/dist/core/skill-registry.js +52 -2
- package/dist/core/skill-registry.js.map +1 -1
- package/dist/core/storage/eventStorage/fileEventStorage.d.ts +5 -0
- package/dist/core/storage/eventStorage/fileEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/fileEventStorage.js +61 -0
- package/dist/core/storage/eventStorage/fileEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/memoryEventStorage.d.ts +5 -0
- package/dist/core/storage/eventStorage/memoryEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/memoryEventStorage.js +34 -0
- package/dist/core/storage/eventStorage/memoryEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts +1 -0
- package/dist/core/storage/eventStorage/sqliteEventStorage.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/sqliteEventStorage.js +19 -2
- package/dist/core/storage/eventStorage/sqliteEventStorage.js.map +1 -1
- package/dist/core/storage/eventStorage/types.d.ts +6 -0
- package/dist/core/storage/eventStorage/types.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/types.js +1 -0
- package/dist/core/storage/eventStorage/types.js.map +1 -1
- package/dist/core/storage/eventStorage/validation.d.ts.map +1 -1
- package/dist/core/storage/eventStorage/validation.js +2 -1
- package/dist/core/storage/eventStorage/validation.js.map +1 -1
- package/dist/core/storage/github-world-import.d.ts +84 -0
- package/dist/core/storage/github-world-import.d.ts.map +1 -0
- package/dist/core/storage/github-world-import.js +365 -0
- package/dist/core/storage/github-world-import.js.map +1 -0
- package/dist/core/storage/memory-storage.d.ts +19 -8
- package/dist/core/storage/memory-storage.d.ts.map +1 -1
- package/dist/core/storage/memory-storage.js +147 -49
- package/dist/core/storage/memory-storage.js.map +1 -1
- package/dist/core/storage/queue-storage.d.ts +1 -0
- package/dist/core/storage/queue-storage.d.ts.map +1 -1
- package/dist/core/storage/queue-storage.js +3 -2
- package/dist/core/storage/queue-storage.js.map +1 -1
- package/dist/core/storage/sqlite-storage.d.ts +14 -9
- package/dist/core/storage/sqlite-storage.d.ts.map +1 -1
- package/dist/core/storage/sqlite-storage.js +131 -154
- package/dist/core/storage/sqlite-storage.js.map +1 -1
- package/dist/core/storage/storage-factory.d.ts +3 -0
- package/dist/core/storage/storage-factory.d.ts.map +1 -1
- package/dist/core/storage/storage-factory.js +175 -89
- package/dist/core/storage/storage-factory.js.map +1 -1
- package/dist/core/storage/world-storage.d.ts +1 -1
- package/dist/core/storage/world-storage.d.ts.map +1 -1
- package/dist/core/storage/world-storage.js +5 -1
- package/dist/core/storage/world-storage.js.map +1 -1
- package/dist/core/storage-init.d.ts +11 -0
- package/dist/core/storage-init.d.ts.map +1 -0
- package/dist/core/storage-init.js +122 -0
- package/dist/core/storage-init.js.map +1 -0
- package/dist/core/subscription.d.ts +8 -1
- package/dist/core/subscription.d.ts.map +1 -1
- package/dist/core/subscription.js +130 -23
- package/dist/core/subscription.js.map +1 -1
- package/dist/core/tool-approval.d.ts +45 -0
- package/dist/core/tool-approval.d.ts.map +1 -0
- package/dist/core/tool-approval.js +223 -0
- package/dist/core/tool-approval.js.map +1 -0
- package/dist/core/tool-execution-envelope.d.ts +87 -0
- package/dist/core/tool-execution-envelope.d.ts.map +1 -0
- package/dist/core/tool-execution-envelope.js +168 -0
- package/dist/core/tool-execution-envelope.js.map +1 -0
- package/dist/core/tool-utils.d.ts +9 -2
- package/dist/core/tool-utils.d.ts.map +1 -1
- package/dist/core/tool-utils.js +122 -28
- package/dist/core/tool-utils.js.map +1 -1
- package/dist/core/types.d.ts +69 -36
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +3 -2
- package/dist/core/types.js.map +1 -1
- package/dist/core/utils.d.ts +16 -0
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/core/utils.js +99 -24
- package/dist/core/utils.js.map +1 -1
- package/dist/core/web-fetch-tool.d.ts +72 -0
- package/dist/core/web-fetch-tool.d.ts.map +1 -0
- package/dist/core/web-fetch-tool.js +491 -0
- package/dist/core/web-fetch-tool.js.map +1 -0
- package/dist/core/world-registry.d.ts +84 -0
- package/dist/core/world-registry.d.ts.map +1 -0
- package/dist/core/world-registry.js +247 -0
- package/dist/core/world-registry.js.map +1 -0
- package/dist/public/assets/index-Be-1xtV-.js +104 -0
- package/dist/public/assets/index-tsDdiXDU.css +1 -0
- package/dist/public/index.html +2 -2
- package/dist/public/mcp-sandbox-proxy.html +148 -0
- package/dist/server/api.js +288 -58
- package/dist/server/error-response.d.ts +27 -0
- package/dist/server/error-response.js +77 -0
- package/dist/server/index.d.ts +2 -1
- package/dist/server/index.js +6 -2
- package/dist/server/sse-handler.d.ts +13 -2
- package/dist/server/sse-handler.js +194 -26
- package/migrations/0015_add_message_queue.sql +36 -0
- package/migrations/0016_add_world_heartbeat.sql +13 -0
- package/migrations/0017_add_title_provenance.sql +7 -0
- package/package.json +31 -10
- package/dist/public/assets/index-BO20H4xt.js +0 -96
- package/dist/public/assets/index-ETY7W5_S.css +0 -1
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
* - NO event emission, NO storage, NO tool execution
|
|
20
20
|
*
|
|
21
21
|
* Recent Changes:
|
|
22
|
+
* - 2026-03-13: Switched world reasoning overrides to `default`/`none`, where `default` omits thinking config and `none` uses a zero-budget explicit override.
|
|
23
|
+
* - 2026-03-12: Reclassified streaming abort logs as info-level cancellations to suppress expected stop/edit noise.
|
|
22
24
|
* - 2026-02-15: Stopped replaying historical tool call/response parts as Google `functionCall`/`functionResponse` in conversation conversion to avoid 400 errors requiring `thought_signature` on replayed calls.
|
|
23
25
|
* - 2026-02-13: Added transport-level AbortSignal wiring to Google SDK request options where supported.
|
|
24
26
|
* - 2026-02-13: Added abort-signal checks for streaming and non-streaming execution paths.
|
|
@@ -34,8 +36,43 @@ import { GoogleGenerativeAI } from '@google/generative-ai';
|
|
|
34
36
|
import { getLLMProviderConfig } from './llm-config.js';
|
|
35
37
|
import { createCategoryLogger } from './logger.js';
|
|
36
38
|
import { generateId } from './utils.js';
|
|
39
|
+
import { getEnvValueFromText } from './utils.js';
|
|
37
40
|
const logger = createCategoryLogger('llm.google');
|
|
38
41
|
const mcpLogger = createCategoryLogger('mcp.execution');
|
|
42
|
+
function normalizeReasoningEffort(value) {
|
|
43
|
+
const normalized = String(value || '').trim().toLowerCase();
|
|
44
|
+
if (normalized === 'none' || normalized === 'low' || normalized === 'high' || normalized === 'medium') {
|
|
45
|
+
return normalized;
|
|
46
|
+
}
|
|
47
|
+
return 'default';
|
|
48
|
+
}
|
|
49
|
+
function buildGoogleThinkingConfig(world) {
|
|
50
|
+
const effort = normalizeReasoningEffort(getEnvValueFromText(world.variables, 'reasoning_effort'));
|
|
51
|
+
if (effort === 'default') {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
const budgets = {
|
|
55
|
+
none: 0,
|
|
56
|
+
low: 256,
|
|
57
|
+
medium: 1024,
|
|
58
|
+
high: 2048,
|
|
59
|
+
};
|
|
60
|
+
return {
|
|
61
|
+
includeThoughts: true,
|
|
62
|
+
thinkingBudget: budgets[effort],
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
function isAbortLikeError(error) {
|
|
66
|
+
if (!error)
|
|
67
|
+
return false;
|
|
68
|
+
if (error instanceof DOMException && error.name === 'AbortError')
|
|
69
|
+
return true;
|
|
70
|
+
if (error instanceof Error && error.name === 'AbortError')
|
|
71
|
+
return true;
|
|
72
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
73
|
+
const normalized = message.toLowerCase();
|
|
74
|
+
return normalized.includes('abort') || normalized.includes('canceled') || normalized.includes('cancelled');
|
|
75
|
+
}
|
|
39
76
|
/**
|
|
40
77
|
* Google client factory
|
|
41
78
|
*/
|
|
@@ -116,10 +153,16 @@ function convertMCPToolsToGoogle(mcpTools) {
|
|
|
116
153
|
export async function streamGoogleResponse(client, model, messages, agent, mcpTools, world, onChunk, messageId, abortSignal) {
|
|
117
154
|
const googleTools = Object.keys(mcpTools).length > 0 ? convertMCPToolsToGoogle(mcpTools) : undefined;
|
|
118
155
|
const { messages: googleMessages, systemInstruction } = convertMessagesToGoogle(messages);
|
|
156
|
+
const thinkingConfig = buildGoogleThinkingConfig(world);
|
|
119
157
|
const generativeModel = client.getGenerativeModel({
|
|
120
158
|
model,
|
|
121
159
|
systemInstruction: systemInstruction || undefined,
|
|
122
|
-
...(googleTools && googleTools.length > 0 && { tools: [{ functionDeclarations: googleTools }] })
|
|
160
|
+
...(googleTools && googleTools.length > 0 && { tools: [{ functionDeclarations: googleTools }] }),
|
|
161
|
+
generationConfig: {
|
|
162
|
+
temperature: agent.temperature,
|
|
163
|
+
maxOutputTokens: agent.maxTokens,
|
|
164
|
+
...(thinkingConfig ? { thinkingConfig } : {}),
|
|
165
|
+
},
|
|
123
166
|
});
|
|
124
167
|
logger.debug(`Google Direct: Starting streaming request for agent=${agent.id}, model=${model}`, {
|
|
125
168
|
messageCount: messages.length,
|
|
@@ -137,14 +180,32 @@ export async function streamGoogleResponse(client, model, messages, agent, mcpTo
|
|
|
137
180
|
if (abortSignal?.aborted) {
|
|
138
181
|
throw new DOMException('Google stream aborted', 'AbortError');
|
|
139
182
|
}
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
183
|
+
const parts = Array.isArray(chunk.candidates?.[0]?.content?.parts)
|
|
184
|
+
? chunk.candidates[0].content.parts
|
|
185
|
+
: [];
|
|
186
|
+
if (parts.length > 0) {
|
|
187
|
+
for (const part of parts) {
|
|
188
|
+
if (typeof part?.text === 'string' && part.text.length > 0) {
|
|
189
|
+
if (part.thought === true) {
|
|
190
|
+
onChunk({ reasoningContent: part.text });
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
fullResponse += part.text;
|
|
194
|
+
onChunk({ content: part.text });
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
const chunkText = chunk.text();
|
|
201
|
+
if (chunkText) {
|
|
202
|
+
fullResponse += chunkText;
|
|
203
|
+
onChunk({ content: chunkText });
|
|
204
|
+
}
|
|
144
205
|
}
|
|
145
206
|
// Check for function calls in the chunk
|
|
146
|
-
if (
|
|
147
|
-
for (const part of
|
|
207
|
+
if (parts.length > 0) {
|
|
208
|
+
for (const part of parts) {
|
|
148
209
|
if (part.functionCall) {
|
|
149
210
|
functionCalls.push({
|
|
150
211
|
id: generateId(),
|
|
@@ -197,6 +258,12 @@ export async function streamGoogleResponse(client, model, messages, agent, mcpTo
|
|
|
197
258
|
};
|
|
198
259
|
}
|
|
199
260
|
catch (error) {
|
|
261
|
+
if (abortSignal?.aborted || isAbortLikeError(error)) {
|
|
262
|
+
logger.info(`Google Direct: Streaming canceled for agent=${agent.id}`, {
|
|
263
|
+
error: error instanceof Error ? error.message : String(error),
|
|
264
|
+
});
|
|
265
|
+
throw error;
|
|
266
|
+
}
|
|
200
267
|
logger.error(`Google Direct: Streaming error for agent=${agent.id}:`, error);
|
|
201
268
|
throw error;
|
|
202
269
|
}
|
|
@@ -208,6 +275,7 @@ export async function streamGoogleResponse(client, model, messages, agent, mcpTo
|
|
|
208
275
|
export async function generateGoogleResponse(client, model, messages, agent, mcpTools, world, abortSignal) {
|
|
209
276
|
const googleTools = Object.keys(mcpTools).length > 0 ? convertMCPToolsToGoogle(mcpTools) : undefined;
|
|
210
277
|
const { messages: googleMessages, systemInstruction } = convertMessagesToGoogle(messages);
|
|
278
|
+
const thinkingConfig = buildGoogleThinkingConfig(world);
|
|
211
279
|
const generativeModel = client.getGenerativeModel({
|
|
212
280
|
model,
|
|
213
281
|
systemInstruction: systemInstruction || undefined,
|
|
@@ -215,6 +283,7 @@ export async function generateGoogleResponse(client, model, messages, agent, mcp
|
|
|
215
283
|
generationConfig: {
|
|
216
284
|
temperature: agent.temperature,
|
|
217
285
|
maxOutputTokens: agent.maxTokens,
|
|
286
|
+
...(thinkingConfig ? { thinkingConfig } : {}),
|
|
218
287
|
}
|
|
219
288
|
});
|
|
220
289
|
logger.debug(`Google Direct: Starting non-streaming request for agent=${agent.id}, model=${model}`, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-direct.js","sourceRoot":"","sources":["../../core/google-direct.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"google-direct.js","sourceRoot":"","sources":["../../core/google-direct.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* World Heartbeat Scheduler
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Provide reusable heartbeat scheduling helpers for worlds.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Cron validation with strict 5-field contract.
|
|
9
|
+
* - Start/stop helpers that publish world heartbeat messages.
|
|
10
|
+
* - Guards for disabled/invalid/missing heartbeat config.
|
|
11
|
+
*
|
|
12
|
+
* Implementation Notes:
|
|
13
|
+
* - Scheduling is opt-in; this module does not self-register jobs.
|
|
14
|
+
* - Tick publishing uses canonical queued world-message flow.
|
|
15
|
+
*
|
|
16
|
+
* Recent Changes:
|
|
17
|
+
* - 2026-03-14: Added runtime heartbeat prompt datetime placeholder expansion for single-brace
|
|
18
|
+
* formats such as `{yyyy-mm-dd hh:mm:ss}`.
|
|
19
|
+
* - 2026-03-14: Replaced direct heartbeat `console` traces with categorized structured logger
|
|
20
|
+
* events (`heartbeat`) so cron diagnostics can be enabled via env (for example `LOG_HEARTBEAT=debug`).
|
|
21
|
+
* - 2026-03-06: Removed `world.currentChatId` fallback from heartbeat dispatch; scheduled jobs now require explicit `chatId`.
|
|
22
|
+
* - 2026-03-04: Added initial world heartbeat scheduler helpers.
|
|
23
|
+
*/
|
|
24
|
+
import { type ScheduledTask } from 'node-cron';
|
|
25
|
+
import type { World } from './types.js';
|
|
26
|
+
export interface HeartbeatHandle {
|
|
27
|
+
task: ScheduledTask;
|
|
28
|
+
}
|
|
29
|
+
export interface HeartbeatCallbacks {
|
|
30
|
+
onRun?: () => void;
|
|
31
|
+
}
|
|
32
|
+
export declare function isValidCronExpression(expr: string): boolean;
|
|
33
|
+
export declare function startHeartbeat(world: World, chatId: string, callbacks?: HeartbeatCallbacks): HeartbeatHandle | null;
|
|
34
|
+
export declare function stopHeartbeat(handle: HeartbeatHandle | null | undefined): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../../core/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKxC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAqDD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAY3D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,kBAAuB,GAAG,eAAe,GAAG,IAAI,CAwDvH;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAU9E"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* World Heartbeat Scheduler
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Provide reusable heartbeat scheduling helpers for worlds.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Cron validation with strict 5-field contract.
|
|
9
|
+
* - Start/stop helpers that publish world heartbeat messages.
|
|
10
|
+
* - Guards for disabled/invalid/missing heartbeat config.
|
|
11
|
+
*
|
|
12
|
+
* Implementation Notes:
|
|
13
|
+
* - Scheduling is opt-in; this module does not self-register jobs.
|
|
14
|
+
* - Tick publishing uses canonical queued world-message flow.
|
|
15
|
+
*
|
|
16
|
+
* Recent Changes:
|
|
17
|
+
* - 2026-03-14: Added runtime heartbeat prompt datetime placeholder expansion for single-brace
|
|
18
|
+
* formats such as `{yyyy-mm-dd hh:mm:ss}`.
|
|
19
|
+
* - 2026-03-14: Replaced direct heartbeat `console` traces with categorized structured logger
|
|
20
|
+
* events (`heartbeat`) so cron diagnostics can be enabled via env (for example `LOG_HEARTBEAT=debug`).
|
|
21
|
+
* - 2026-03-06: Removed `world.currentChatId` fallback from heartbeat dispatch; scheduled jobs now require explicit `chatId`.
|
|
22
|
+
* - 2026-03-04: Added initial world heartbeat scheduler helpers.
|
|
23
|
+
*/
|
|
24
|
+
import nodeCron from 'node-cron';
|
|
25
|
+
import { createCategoryLogger } from './logger.js';
|
|
26
|
+
import { enqueueAndProcessUserTurn } from './queue-manager.js';
|
|
27
|
+
import { isChatProcessing } from './activity-tracker.js';
|
|
28
|
+
const loggerHeartbeat = createCategoryLogger('heartbeat');
|
|
29
|
+
const HEARTBEAT_DATETIME_PLACEHOLDER_PATTERN = /(?<!\{)\{([^{}]+)\}(?!\})/g;
|
|
30
|
+
// keep node-cron as a direct import so test-time module mocking works
|
|
31
|
+
function padDateTimePart(value) {
|
|
32
|
+
return String(value).padStart(2, '0');
|
|
33
|
+
}
|
|
34
|
+
function resolveDateTimeToken(token, pattern, offset, now) {
|
|
35
|
+
switch (token) {
|
|
36
|
+
case 'yyyy':
|
|
37
|
+
return String(now.getFullYear());
|
|
38
|
+
case 'MM':
|
|
39
|
+
return padDateTimePart(now.getMonth() + 1);
|
|
40
|
+
case 'dd':
|
|
41
|
+
return padDateTimePart(now.getDate());
|
|
42
|
+
case 'HH':
|
|
43
|
+
case 'hh':
|
|
44
|
+
return padDateTimePart(now.getHours());
|
|
45
|
+
case 'ss':
|
|
46
|
+
return padDateTimePart(now.getSeconds());
|
|
47
|
+
case 'mm': {
|
|
48
|
+
const previousChar = pattern[offset - 1] ?? '';
|
|
49
|
+
const nextChar = pattern[offset + token.length] ?? '';
|
|
50
|
+
const shouldUseMinutes = previousChar === ':' || nextChar === ':';
|
|
51
|
+
return padDateTimePart(shouldUseMinutes ? now.getMinutes() : now.getMonth() + 1);
|
|
52
|
+
}
|
|
53
|
+
default:
|
|
54
|
+
return token;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function formatDateTimePattern(pattern, now) {
|
|
58
|
+
return pattern.replace(/yyyy|MM|dd|HH|hh|mm|ss/g, (token, offset) => (resolveDateTimeToken(token, pattern, offset, now)));
|
|
59
|
+
}
|
|
60
|
+
function formatHeartbeatPrompt(prompt, now = new Date()) {
|
|
61
|
+
const normalized = String(prompt || '');
|
|
62
|
+
if (!normalized)
|
|
63
|
+
return '';
|
|
64
|
+
return normalized.replace(HEARTBEAT_DATETIME_PLACEHOLDER_PATTERN, (match, pattern) => {
|
|
65
|
+
if (!/^(?:yyyy|MM|dd|HH|hh|mm|ss|[-/: T])+$/.test(pattern)) {
|
|
66
|
+
return match;
|
|
67
|
+
}
|
|
68
|
+
return formatDateTimePattern(pattern, now);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
export function isValidCronExpression(expr) {
|
|
72
|
+
const normalized = String(expr || '').trim();
|
|
73
|
+
if (!normalized)
|
|
74
|
+
return false;
|
|
75
|
+
// Product contract: strict 5-field cron only.
|
|
76
|
+
if (normalized.split(/\s+/).length !== 5)
|
|
77
|
+
return false;
|
|
78
|
+
const cron = (nodeCron && nodeCron.default) ? nodeCron.default : nodeCron;
|
|
79
|
+
if (!cron || typeof cron.validate !== 'function')
|
|
80
|
+
return false;
|
|
81
|
+
try {
|
|
82
|
+
return Boolean(cron.validate(normalized));
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export function startHeartbeat(world, chatId, callbacks = {}) {
|
|
89
|
+
const enabled = world?.heartbeatEnabled === true;
|
|
90
|
+
const interval = String(world?.heartbeatInterval || '').trim();
|
|
91
|
+
const promptTemplate = String(world?.heartbeatPrompt || '');
|
|
92
|
+
const targetChatId = String(chatId || '').trim();
|
|
93
|
+
if (!enabled || !promptTemplate.trim() || !targetChatId)
|
|
94
|
+
return null;
|
|
95
|
+
const cron = (nodeCron && nodeCron.default) ? nodeCron.default : nodeCron;
|
|
96
|
+
if (!cron || typeof cron.schedule !== 'function')
|
|
97
|
+
return null;
|
|
98
|
+
if (!isValidCronExpression(interval))
|
|
99
|
+
return null;
|
|
100
|
+
const task = cron.schedule(interval, () => {
|
|
101
|
+
loggerHeartbeat.debug('Heartbeat cron tick', {
|
|
102
|
+
worldId: world?.id ?? null,
|
|
103
|
+
chatId: targetChatId,
|
|
104
|
+
sender: 'world',
|
|
105
|
+
});
|
|
106
|
+
if (world?.isProcessing) {
|
|
107
|
+
loggerHeartbeat.debug('Heartbeat tick skipped: world processing active', {
|
|
108
|
+
worldId: world?.id ?? null,
|
|
109
|
+
chatId: targetChatId,
|
|
110
|
+
});
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
if (isChatProcessing(world, targetChatId) || world._queuedChatIds?.has(targetChatId)) {
|
|
114
|
+
loggerHeartbeat.debug('Heartbeat tick skipped: chat busy or queued', {
|
|
115
|
+
worldId: world?.id ?? null,
|
|
116
|
+
chatId: targetChatId,
|
|
117
|
+
});
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
const prompt = formatHeartbeatPrompt(promptTemplate);
|
|
121
|
+
void enqueueAndProcessUserTurn(world.id, targetChatId, prompt, 'world', world)
|
|
122
|
+
.then((queuedMessage) => {
|
|
123
|
+
callbacks.onRun?.();
|
|
124
|
+
loggerHeartbeat.debug('Heartbeat cron tick enqueued', {
|
|
125
|
+
worldId: world.id,
|
|
126
|
+
chatId: targetChatId,
|
|
127
|
+
messageId: queuedMessage?.messageId ?? null,
|
|
128
|
+
status: queuedMessage?.status ?? null,
|
|
129
|
+
});
|
|
130
|
+
})
|
|
131
|
+
.catch((error) => {
|
|
132
|
+
loggerHeartbeat.error('Heartbeat cron tick failed to enqueue', {
|
|
133
|
+
worldId: world.id,
|
|
134
|
+
chatId: targetChatId,
|
|
135
|
+
error: error instanceof Error ? error.message : String(error),
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
return { task };
|
|
140
|
+
}
|
|
141
|
+
export function stopHeartbeat(handle) {
|
|
142
|
+
if (!handle?.task)
|
|
143
|
+
return;
|
|
144
|
+
try {
|
|
145
|
+
handle.task.stop();
|
|
146
|
+
if (typeof handle.task.destroy === 'function') {
|
|
147
|
+
handle.task.destroy();
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
// ignore failures when stopping/destroying scheduled task
|
|
152
|
+
}
|
|
153
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../../core/heartbeat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HITL Request Tool Module - Built-in tool for generic human-in-the-loop input
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Expose a built-in `human_intervention_request` tool that lets the model ask questions and offer options.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Supports option-only response mode for deterministic user selection.
|
|
9
|
+
* - Uses existing world-scoped HITL option runtime.
|
|
10
|
+
* - Returns structured JSON payloads for stable downstream model parsing.
|
|
11
|
+
*
|
|
12
|
+
* Implementation Notes:
|
|
13
|
+
* - Option values are normalized and deduplicated as display labels.
|
|
14
|
+
* - Free-text path is intentionally disabled to keep HITL interactions simple and auditable.
|
|
15
|
+
* - Tool execution requires world context; no external side effects beyond HITL events.
|
|
16
|
+
*
|
|
17
|
+
* Recent Changes:
|
|
18
|
+
* - 2026-03-06: Removed `world.currentChatId` fallback from HITL approval routing; interactive requests now require explicit `context.chatId`.
|
|
19
|
+
* - 2026-02-28: Added shorthand default-option resolution so values like "No" can map to a single matching option label.
|
|
20
|
+
* - 2026-02-27: Removed built-in post-selection confirmation stage and removed deprecated confirmation parameters from the tool contract.
|
|
21
|
+
* - 2026-02-20: Removed free-text mode from `human_intervention_request`; tool now enforces options-only interactions.
|
|
22
|
+
* - 2026-02-20: Added initial built-in `human_intervention_request` tool implementation.
|
|
23
|
+
*/
|
|
24
|
+
import { type World } from './types.js';
|
|
25
|
+
type HitlRequestToolArgs = {
|
|
26
|
+
question?: unknown;
|
|
27
|
+
options?: unknown;
|
|
28
|
+
timeoutMs?: unknown;
|
|
29
|
+
defaultOption?: unknown;
|
|
30
|
+
metadata?: unknown;
|
|
31
|
+
};
|
|
32
|
+
type HitlRequestToolContext = {
|
|
33
|
+
world?: World;
|
|
34
|
+
chatId?: string | null;
|
|
35
|
+
agentName?: string | null;
|
|
36
|
+
toolCallId?: string;
|
|
37
|
+
};
|
|
38
|
+
export declare function createHitlToolDefinition(): {
|
|
39
|
+
description: string;
|
|
40
|
+
parameters: {
|
|
41
|
+
type: string;
|
|
42
|
+
properties: {
|
|
43
|
+
question: {
|
|
44
|
+
type: string;
|
|
45
|
+
description: string;
|
|
46
|
+
};
|
|
47
|
+
options: {
|
|
48
|
+
type: string;
|
|
49
|
+
items: {
|
|
50
|
+
type: string;
|
|
51
|
+
};
|
|
52
|
+
description: string;
|
|
53
|
+
};
|
|
54
|
+
timeoutMs: {
|
|
55
|
+
type: string;
|
|
56
|
+
description: string;
|
|
57
|
+
};
|
|
58
|
+
defaultOption: {
|
|
59
|
+
type: string;
|
|
60
|
+
description: string;
|
|
61
|
+
};
|
|
62
|
+
metadata: {
|
|
63
|
+
type: string;
|
|
64
|
+
description: string;
|
|
65
|
+
additionalProperties: boolean;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
required: string[];
|
|
69
|
+
additionalProperties: boolean;
|
|
70
|
+
};
|
|
71
|
+
execute: (rawArgs: HitlRequestToolArgs, _sequenceId?: string, _parentToolCall?: string, context?: HitlRequestToolContext) => Promise<string>;
|
|
72
|
+
};
|
|
73
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hitl-tool.d.ts","sourceRoot":"","sources":["../../core/hitl-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAKxC,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAoNF,wBAAgB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAiCX,mBAAmB,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,sBAAsB;EA2EjI"}
|