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
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI System Event Formatting Helpers
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Convert runtime `system` event payloads into readable CLI output text.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Supports plain-string and structured-object system payloads.
|
|
9
|
+
* - Preserves important status families such as title updates and queue failures.
|
|
10
|
+
* - Keeps formatting pure so both interactive and pipeline paths share the same logic.
|
|
11
|
+
*
|
|
12
|
+
* Notes on Implementation:
|
|
13
|
+
* - Leaf helper with no terminal side effects.
|
|
14
|
+
* - Unknown payloads return `null` so callers can skip empty/noise events.
|
|
15
|
+
*
|
|
16
|
+
* Summary of Recent Changes:
|
|
17
|
+
* - 2026-03-12: Created for cross-client system-status parity.
|
|
18
|
+
*/
|
|
19
|
+
function asRecord(value) {
|
|
20
|
+
return value && typeof value === 'object' ? value : null;
|
|
21
|
+
}
|
|
22
|
+
function readTrimmedString(value) {
|
|
23
|
+
return typeof value === 'string' ? value.trim() : '';
|
|
24
|
+
}
|
|
25
|
+
export function getSystemEventDisplayText(eventData) {
|
|
26
|
+
if (!eventData) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
const rawContent = Object.prototype.hasOwnProperty.call(eventData, 'content')
|
|
30
|
+
? eventData.content
|
|
31
|
+
: eventData;
|
|
32
|
+
const content = rawContent ?? eventData;
|
|
33
|
+
if (typeof content === 'string') {
|
|
34
|
+
const normalized = content.trim();
|
|
35
|
+
return normalized || null;
|
|
36
|
+
}
|
|
37
|
+
const contentRecord = asRecord(content);
|
|
38
|
+
const eventType = readTrimmedString(contentRecord?.eventType
|
|
39
|
+
?? contentRecord?.type
|
|
40
|
+
?? eventData.eventType
|
|
41
|
+
?? eventData.type);
|
|
42
|
+
const title = readTrimmedString(contentRecord?.title ?? eventData.title);
|
|
43
|
+
const message = readTrimmedString(contentRecord?.message ?? eventData.message);
|
|
44
|
+
if (eventType === 'chat-title-updated') {
|
|
45
|
+
if (title) {
|
|
46
|
+
return `Chat title updated: ${title}`;
|
|
47
|
+
}
|
|
48
|
+
if (message) {
|
|
49
|
+
return message;
|
|
50
|
+
}
|
|
51
|
+
return 'Chat title updated.';
|
|
52
|
+
}
|
|
53
|
+
if (message) {
|
|
54
|
+
return message;
|
|
55
|
+
}
|
|
56
|
+
if (title) {
|
|
57
|
+
return title;
|
|
58
|
+
}
|
|
59
|
+
if (eventType && eventType !== 'system' && eventType !== 'world') {
|
|
60
|
+
return eventType;
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* World Activity Tracker
|
|
3
|
+
*
|
|
4
|
+
* Purpose:
|
|
5
|
+
* - Track world-level processing lifecycle and emit activity events.
|
|
6
|
+
*
|
|
7
|
+
* Key Features:
|
|
8
|
+
* - Emits `response-start`, `response-end`, and `idle` events.
|
|
9
|
+
* - Tracks active sources and active chat IDs for concurrent chat operations.
|
|
10
|
+
* - Maintains `world.isProcessing` based on lifecycle transitions.
|
|
11
|
+
*
|
|
12
|
+
* Implementation Notes:
|
|
13
|
+
* - Activity state is stored on the world instance via a private symbol key.
|
|
14
|
+
* - Events include a chat context (`chatId`) captured from the originating operation.
|
|
15
|
+
*
|
|
16
|
+
* Recent Changes:
|
|
17
|
+
* - 2026-02-27: Added chat-scoped `chatId` metadata to world activity events to prevent cross-chat idle-side effects.
|
|
18
|
+
*/
|
|
1
19
|
import { World } from './types.js';
|
|
2
20
|
import { getLLMQueueStatus } from './llm-manager.js';
|
|
3
21
|
export type WorldActivityEventType = 'response-start' | 'response-end' | 'idle';
|
|
@@ -7,9 +25,27 @@ export interface WorldActivityEventPayload {
|
|
|
7
25
|
activityId: number;
|
|
8
26
|
timestamp: string;
|
|
9
27
|
source?: string;
|
|
28
|
+
chatId?: string | null;
|
|
10
29
|
activeSources: string[];
|
|
30
|
+
activeChatIds: string[];
|
|
31
|
+
queuedChatIds: string[];
|
|
32
|
+
activeAgentNames: string[];
|
|
11
33
|
queue: ReturnType<typeof getLLMQueueStatus>;
|
|
12
34
|
messageId: string;
|
|
13
35
|
}
|
|
14
|
-
export declare function beginWorldActivity(world: World, source?: string): () => void;
|
|
15
|
-
|
|
36
|
+
export declare function beginWorldActivity(world: World, source?: string, chatId?: string): () => void;
|
|
37
|
+
/**
|
|
38
|
+
* Returns the set of chatIds currently being actively processed in this world.
|
|
39
|
+
* Useful for parallel-chat monitoring and targeted mutation guards.
|
|
40
|
+
*/
|
|
41
|
+
export declare function getActiveProcessingChatIds(world: World): ReadonlySet<string>;
|
|
42
|
+
/**
|
|
43
|
+
* Returns the names of agents currently generating responses in this world.
|
|
44
|
+
* Derived from activeSources keys (stored as `agent:<id>`).
|
|
45
|
+
*/
|
|
46
|
+
export declare function getActiveAgentNames(world: World): string[];
|
|
47
|
+
/**
|
|
48
|
+
* Returns true if the given chatId has at least one active processing operation.
|
|
49
|
+
*/
|
|
50
|
+
export declare function isChatProcessing(world: World, chatId: string): boolean;
|
|
51
|
+
export declare function trackWorldActivity<T>(world: World, operation: () => Promise<T>, source?: string, chatId?: string): Promise<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-tracker.d.ts","sourceRoot":"","sources":["../../core/activity-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"activity-tracker.d.ts","sourceRoot":"","sources":["../../core/activity-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAUrD,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,cAAc,GAAG,MAAM,CAAC;AAEhF,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC;CACnB;AAuDD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,IAAI,CAyD7F;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAI5E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,CAM1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAItE;AAED,wBAAsB,kBAAkB,CAAC,CAAC,EACxC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,CAAC,CAAC,CAcZ"}
|
|
@@ -11,19 +11,27 @@ function getActivityState(world) {
|
|
|
11
11
|
const initial = {
|
|
12
12
|
pendingOperations: 0,
|
|
13
13
|
lastActivityId: 0,
|
|
14
|
-
activeSources: new Map()
|
|
14
|
+
activeSources: new Map(),
|
|
15
|
+
activeChatOps: new Map()
|
|
15
16
|
};
|
|
16
17
|
world[stateKey] = initial;
|
|
17
18
|
return initial;
|
|
18
19
|
}
|
|
19
|
-
function emitActivityEvent(world, type, pendingOperations, activityId, source) {
|
|
20
|
+
function emitActivityEvent(world, type, pendingOperations, activityId, source, chatId) {
|
|
21
|
+
const activityState = getActivityState(world);
|
|
20
22
|
const payload = {
|
|
21
23
|
type,
|
|
22
24
|
pendingOperations,
|
|
23
25
|
activityId,
|
|
24
26
|
timestamp: new Date().toISOString(),
|
|
25
27
|
source,
|
|
26
|
-
|
|
28
|
+
chatId: chatId ?? null,
|
|
29
|
+
activeSources: Array.from(activityState.activeSources.keys()),
|
|
30
|
+
activeChatIds: Array.from(activityState.activeChatOps.keys()),
|
|
31
|
+
queuedChatIds: Array.from(world._queuedChatIds ?? []),
|
|
32
|
+
activeAgentNames: Array.from(activityState.activeSources.keys())
|
|
33
|
+
.filter(s => s.startsWith('agent:'))
|
|
34
|
+
.map(s => s.slice('agent:'.length)),
|
|
27
35
|
queue: getLLMQueueStatus(),
|
|
28
36
|
messageId: nanoid(10) // Generate unique ID for event persistence
|
|
29
37
|
};
|
|
@@ -33,18 +41,22 @@ function emitActivityEvent(world, type, pendingOperations, activityId, source) {
|
|
|
33
41
|
world.eventEmitter.emit('world', payload);
|
|
34
42
|
world.eventEmitter.emit(type, payload);
|
|
35
43
|
}
|
|
36
|
-
export function beginWorldActivity(world, source) {
|
|
44
|
+
export function beginWorldActivity(world, source, chatId) {
|
|
37
45
|
const activityState = getActivityState(world);
|
|
38
46
|
activityState.pendingOperations += 1;
|
|
39
47
|
if (source) {
|
|
40
48
|
activityState.activeSources.set(source, (activityState.activeSources.get(source) ?? 0) + 1);
|
|
41
49
|
}
|
|
50
|
+
// Track chat-level operation counts for parallel-chat visibility
|
|
51
|
+
if (chatId) {
|
|
52
|
+
activityState.activeChatOps.set(chatId, (activityState.activeChatOps.get(chatId) ?? 0) + 1);
|
|
53
|
+
}
|
|
42
54
|
// Increment activityId when starting first operation
|
|
43
55
|
if (activityState.pendingOperations === 1) {
|
|
44
56
|
activityState.lastActivityId += 1;
|
|
45
57
|
}
|
|
46
58
|
// Emit response-start for all operation starts
|
|
47
|
-
emitActivityEvent(world, 'response-start', activityState.pendingOperations, activityState.lastActivityId, source);
|
|
59
|
+
emitActivityEvent(world, 'response-start', activityState.pendingOperations, activityState.lastActivityId, source, chatId);
|
|
48
60
|
let finished = false;
|
|
49
61
|
const currentActivityId = activityState.lastActivityId;
|
|
50
62
|
return () => {
|
|
@@ -62,17 +74,58 @@ export function beginWorldActivity(world, source) {
|
|
|
62
74
|
state.activeSources.set(source, currentCount - 1);
|
|
63
75
|
}
|
|
64
76
|
}
|
|
77
|
+
// Decrement chat-level operation count
|
|
78
|
+
if (chatId) {
|
|
79
|
+
const chatCount = state.activeChatOps.get(chatId) ?? 0;
|
|
80
|
+
if (chatCount <= 1) {
|
|
81
|
+
state.activeChatOps.delete(chatId);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
state.activeChatOps.set(chatId, chatCount - 1);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
65
87
|
// Emit idle when all operations complete, otherwise response-end
|
|
66
88
|
if (state.pendingOperations === 0) {
|
|
67
|
-
emitActivityEvent(world, 'idle', 0, currentActivityId, source);
|
|
89
|
+
emitActivityEvent(world, 'idle', 0, currentActivityId, source, chatId);
|
|
68
90
|
}
|
|
69
91
|
else {
|
|
70
|
-
emitActivityEvent(world, 'response-end', state.pendingOperations, state.lastActivityId, source);
|
|
92
|
+
emitActivityEvent(world, 'response-end', state.pendingOperations, state.lastActivityId, source, chatId);
|
|
71
93
|
}
|
|
72
94
|
};
|
|
73
95
|
}
|
|
74
|
-
|
|
75
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Returns the set of chatIds currently being actively processed in this world.
|
|
98
|
+
* Useful for parallel-chat monitoring and targeted mutation guards.
|
|
99
|
+
*/
|
|
100
|
+
export function getActiveProcessingChatIds(world) {
|
|
101
|
+
const state = world[stateKey];
|
|
102
|
+
if (!state)
|
|
103
|
+
return new Set();
|
|
104
|
+
return new Set(state.activeChatOps.keys());
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Returns the names of agents currently generating responses in this world.
|
|
108
|
+
* Derived from activeSources keys (stored as `agent:<id>`).
|
|
109
|
+
*/
|
|
110
|
+
export function getActiveAgentNames(world) {
|
|
111
|
+
const state = world[stateKey];
|
|
112
|
+
if (!state)
|
|
113
|
+
return [];
|
|
114
|
+
return Array.from(state.activeSources.keys())
|
|
115
|
+
.filter(s => s.startsWith('agent:'))
|
|
116
|
+
.map(s => s.slice('agent:'.length));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Returns true if the given chatId has at least one active processing operation.
|
|
120
|
+
*/
|
|
121
|
+
export function isChatProcessing(world, chatId) {
|
|
122
|
+
const state = world[stateKey];
|
|
123
|
+
if (!state)
|
|
124
|
+
return false;
|
|
125
|
+
return (state.activeChatOps.get(chatId) ?? 0) > 0;
|
|
126
|
+
}
|
|
127
|
+
export async function trackWorldActivity(world, operation, source, chatId) {
|
|
128
|
+
const end = beginWorldActivity(world, source, chatId);
|
|
76
129
|
try {
|
|
77
130
|
return await operation();
|
|
78
131
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-tracker.js","sourceRoot":"","sources":["../../core/activity-tracker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"activity-tracker.js","sourceRoot":"","sources":["../../core/activity-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
* - NO event emission, NO storage, NO tool execution
|
|
20
20
|
*
|
|
21
21
|
* Recent Changes:
|
|
22
|
+
* - 2026-03-12: Reclassified streaming abort logs as info-level cancellations to suppress expected stop/edit noise.
|
|
23
|
+
* - 2026-02-28: Added canonical `llm.anthropic` category emission while preserving legacy `anthropic` logs during migration.
|
|
22
24
|
* - 2026-02-13: Added abort-signal support for streaming and non-streaming calls to enable chat stop cancellation.
|
|
23
25
|
* - 2025-11-09: Phase 3 - Removed ALL tool execution logic (~200 lines)
|
|
24
26
|
* - Provider is now a pure client - only API calls and data transformation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-direct.d.ts","sourceRoot":"","sources":["../../core/anthropic-direct.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"anthropic-direct.d.ts","sourceRoot":"","sources":["../../core/anthropic-direct.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAwB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAuCxE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAIxE;AAyED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,WAAW,EAAE,EACvB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EAClC,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,WAAW,CAAC,CA4GtB;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,WAAW,EAAE,EACvB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,KAAK,EAAE,KAAK,EACZ,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,WAAW,CAAC,CAmGtB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAGrE"}
|
|
@@ -19,6 +19,8 @@
|
|
|
19
19
|
* - NO event emission, NO storage, NO tool execution
|
|
20
20
|
*
|
|
21
21
|
* Recent Changes:
|
|
22
|
+
* - 2026-03-12: Reclassified streaming abort logs as info-level cancellations to suppress expected stop/edit noise.
|
|
23
|
+
* - 2026-02-28: Added canonical `llm.anthropic` category emission while preserving legacy `anthropic` logs during migration.
|
|
22
24
|
* - 2026-02-13: Added abort-signal support for streaming and non-streaming calls to enable chat stop cancellation.
|
|
23
25
|
* - 2025-11-09: Phase 3 - Removed ALL tool execution logic (~200 lines)
|
|
24
26
|
* - Provider is now a pure client - only API calls and data transformation
|
|
@@ -31,8 +33,42 @@
|
|
|
31
33
|
import Anthropic from '@anthropic-ai/sdk';
|
|
32
34
|
import { getLLMProviderConfig } from './llm-config.js';
|
|
33
35
|
import { createCategoryLogger } from './logger.js';
|
|
34
|
-
const
|
|
36
|
+
const loggerCanonical = createCategoryLogger('llm.anthropic');
|
|
37
|
+
const loggerLegacy = createCategoryLogger('anthropic');
|
|
38
|
+
const logger = {
|
|
39
|
+
trace: (msg, ...args) => {
|
|
40
|
+
loggerCanonical.trace(msg, ...args);
|
|
41
|
+
loggerLegacy.trace(msg, ...args);
|
|
42
|
+
},
|
|
43
|
+
debug: (msg, ...args) => {
|
|
44
|
+
loggerCanonical.debug(msg, ...args);
|
|
45
|
+
loggerLegacy.debug(msg, ...args);
|
|
46
|
+
},
|
|
47
|
+
info: (msg, ...args) => {
|
|
48
|
+
loggerCanonical.info(msg, ...args);
|
|
49
|
+
loggerLegacy.info(msg, ...args);
|
|
50
|
+
},
|
|
51
|
+
warn: (msg, ...args) => {
|
|
52
|
+
loggerCanonical.warn(msg, ...args);
|
|
53
|
+
loggerLegacy.warn(msg, ...args);
|
|
54
|
+
},
|
|
55
|
+
error: (msg, ...args) => {
|
|
56
|
+
loggerCanonical.error(msg, ...args);
|
|
57
|
+
loggerLegacy.error(msg, ...args);
|
|
58
|
+
},
|
|
59
|
+
};
|
|
35
60
|
const mcpLogger = createCategoryLogger('mcp.execution');
|
|
61
|
+
function isAbortLikeError(error) {
|
|
62
|
+
if (!error)
|
|
63
|
+
return false;
|
|
64
|
+
if (error instanceof DOMException && error.name === 'AbortError')
|
|
65
|
+
return true;
|
|
66
|
+
if (error instanceof Error && error.name === 'AbortError')
|
|
67
|
+
return true;
|
|
68
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
69
|
+
const normalized = message.toLowerCase();
|
|
70
|
+
return normalized.includes('abort') || normalized.includes('canceled') || normalized.includes('cancelled');
|
|
71
|
+
}
|
|
36
72
|
/**
|
|
37
73
|
* Anthropic client factory
|
|
38
74
|
*/
|
|
@@ -195,6 +231,12 @@ export async function streamAnthropicResponse(client, model, messages, agent, mc
|
|
|
195
231
|
};
|
|
196
232
|
}
|
|
197
233
|
catch (error) {
|
|
234
|
+
if (abortSignal?.aborted || isAbortLikeError(error)) {
|
|
235
|
+
logger.info(`Anthropic Direct: Streaming canceled for agent=${agent.id}`, {
|
|
236
|
+
error: error instanceof Error ? error.message : String(error),
|
|
237
|
+
});
|
|
238
|
+
throw error;
|
|
239
|
+
}
|
|
198
240
|
logger.error(`Anthropic Direct: Streaming error for agent=${agent.id}:`, error);
|
|
199
241
|
throw error;
|
|
200
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-direct.js","sourceRoot":"","sources":["../../core/anthropic-direct.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anthropic-direct.js","sourceRoot":"","sources":["../../core/anthropic-direct.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,13 +7,25 @@
|
|
|
7
7
|
* Features:
|
|
8
8
|
* - Central default chat title constant for reusable untitled sessions.
|
|
9
9
|
* - Helper to evaluate whether a chat is still in default-title state.
|
|
10
|
+
* - Explicit title provenance type and constants for auto-title vs. manual-rename tracking.
|
|
10
11
|
*
|
|
11
12
|
* Implementation Notes:
|
|
12
13
|
* - Kept framework-agnostic to avoid importing manager/event modules.
|
|
13
14
|
* - Used by both chat lifecycle management and auto-title update paths.
|
|
14
15
|
*
|
|
15
16
|
* Recent Changes:
|
|
17
|
+
* - 2026-03-13: Added TitleProvenance type and TITLE_PROVENANCE_* constants for explicit provenance tracking (Phase 3).
|
|
16
18
|
* - 2026-02-13: Added shared default-title constant and helper for session title logic.
|
|
17
19
|
*/
|
|
18
20
|
export declare const NEW_CHAT_TITLE = "New Chat";
|
|
19
21
|
export declare function isDefaultChatTitle(name: string | null | undefined): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Title provenance discriminates how the current chat name was assigned:
|
|
24
|
+
* - 'default': The title has never been changed (still 'New Chat') or is a legacy row.
|
|
25
|
+
* - 'auto': The title was set by automatic title generation.
|
|
26
|
+
* - 'manual': The title was explicitly renamed by the user.
|
|
27
|
+
*/
|
|
28
|
+
export type TitleProvenance = 'default' | 'auto' | 'manual';
|
|
29
|
+
export declare const TITLE_PROVENANCE_DEFAULT: TitleProvenance;
|
|
30
|
+
export declare const TITLE_PROVENANCE_AUTO: TitleProvenance;
|
|
31
|
+
export declare const TITLE_PROVENANCE_MANUAL: TitleProvenance;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-constants.d.ts","sourceRoot":"","sources":["../../core/chat-constants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"chat-constants.d.ts","sourceRoot":"","sources":["../../core/chat-constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,eAAO,MAAM,cAAc,aAAa,CAAC;AAEzC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE3E;AAED;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE5D,eAAO,MAAM,wBAAwB,EAAE,eAA2B,CAAC;AACnE,eAAO,MAAM,qBAAqB,EAAE,eAAwB,CAAC;AAC7D,eAAO,MAAM,uBAAuB,EAAE,eAA0B,CAAC"}
|
|
@@ -7,15 +7,20 @@
|
|
|
7
7
|
* Features:
|
|
8
8
|
* - Central default chat title constant for reusable untitled sessions.
|
|
9
9
|
* - Helper to evaluate whether a chat is still in default-title state.
|
|
10
|
+
* - Explicit title provenance type and constants for auto-title vs. manual-rename tracking.
|
|
10
11
|
*
|
|
11
12
|
* Implementation Notes:
|
|
12
13
|
* - Kept framework-agnostic to avoid importing manager/event modules.
|
|
13
14
|
* - Used by both chat lifecycle management and auto-title update paths.
|
|
14
15
|
*
|
|
15
16
|
* Recent Changes:
|
|
17
|
+
* - 2026-03-13: Added TitleProvenance type and TITLE_PROVENANCE_* constants for explicit provenance tracking (Phase 3).
|
|
16
18
|
* - 2026-02-13: Added shared default-title constant and helper for session title logic.
|
|
17
19
|
*/
|
|
18
20
|
export const NEW_CHAT_TITLE = 'New Chat';
|
|
19
21
|
export function isDefaultChatTitle(name) {
|
|
20
22
|
return String(name ?? '').trim() === NEW_CHAT_TITLE;
|
|
21
23
|
}
|
|
24
|
+
export const TITLE_PROVENANCE_DEFAULT = 'default';
|
|
25
|
+
export const TITLE_PROVENANCE_AUTO = 'auto';
|
|
26
|
+
export const TITLE_PROVENANCE_MANUAL = 'manual';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-constants.js","sourceRoot":"","sources":["../../core/chat-constants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"chat-constants.js","sourceRoot":"","sources":["../../core/chat-constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AAEzC,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,OAAO,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,cAAc,CAAC;AACtD,CAAC;AAUD,MAAM,CAAC,MAAM,wBAAwB,GAAoB,SAAS,CAAC;AACnE,MAAM,CAAC,MAAM,qBAAqB,GAAoB,MAAM,CAAC;AAC7D,MAAM,CAAC,MAAM,uBAAuB,GAAoB,QAAQ,CAAC"}
|
|
@@ -1,39 +1,42 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Create Agent Tool Module - Built-in tool for approval-gated agent creation
|
|
2
|
+
* Create Agent Tool Module - Built-in tool for approval-gated agent creation
|
|
3
3
|
*
|
|
4
4
|
* Purpose:
|
|
5
|
-
* -
|
|
5
|
+
* - Expose a built-in `create_agent` tool that creates one new agent after explicit user approval.
|
|
6
6
|
*
|
|
7
7
|
* Key Features:
|
|
8
|
-
* - Requires `name` and supports optional `autoReply`, `role`, and `nextAgent`
|
|
9
|
-
* - Enforces
|
|
10
|
-
* -
|
|
11
|
-
* -
|
|
12
|
-
* - Returns structured JSON payloads for success, denial, and error outcomes.
|
|
8
|
+
* - Requires `name` and supports optional `autoReply`, `role`, and `nextAgent` inputs.
|
|
9
|
+
* - Enforces HITL approval with deterministic deny/timeout handling before persistence.
|
|
10
|
+
* - Generates deterministic system prompt text for multi-agent routing.
|
|
11
|
+
* - Uses world-level chat provider/model settings with deterministic fallbacks.
|
|
13
12
|
*
|
|
14
|
-
* Notes
|
|
15
|
-
* - Uses `
|
|
16
|
-
* -
|
|
17
|
-
* -
|
|
13
|
+
* Implementation Notes:
|
|
14
|
+
* - Uses manager-level `createAgent` as the persistence boundary.
|
|
15
|
+
* - Returns deterministic JSON-string payloads for success, denial, and errors.
|
|
16
|
+
* - Keeps runtime contract canonical (`autoReply`, `nextAgent`) while aliases are handled upstream.
|
|
18
17
|
*
|
|
19
18
|
* Recent Changes:
|
|
20
|
-
* - 2026-
|
|
19
|
+
* - 2026-03-12: Shared tool approval flow now persists durable approval prompt/resolution messages for replay-safe denial history.
|
|
20
|
+
* - 2026-03-12: Added `read` permission level guard — returns a blocked-tool error when world toolPermission is 'read'.
|
|
21
|
+
* - 2026-02-20: Added post-create HITL informational confirmation (`Agent <name> has been created`) with `refreshAfterDismiss` metadata set to true.
|
|
22
|
+
* - 2026-02-20: Pre-claim agent creation slot before approval dialog to prevent parallel-call race where both calls pass approval before either calls createAgent.
|
|
23
|
+
* - 2026-02-20: Updated tool create path to allow manager-level create during the current in-flight world processing turn.
|
|
24
|
+
* - 2026-02-20: Updated `create_agent` default behavior so omitted `autoReply` resolves to `false`.
|
|
25
|
+
* - 2026-02-20: Added initial built-in `create_agent` tool implementation with mandatory approval gate.
|
|
21
26
|
*/
|
|
27
|
+
import { type World } from './types.js';
|
|
28
|
+
type CreateAgentToolArgs = {
|
|
29
|
+
name?: unknown;
|
|
30
|
+
autoReply?: unknown;
|
|
31
|
+
role?: unknown;
|
|
32
|
+
nextAgent?: unknown;
|
|
33
|
+
};
|
|
22
34
|
type CreateAgentToolContext = {
|
|
23
|
-
world?:
|
|
24
|
-
id?: string;
|
|
25
|
-
currentChatId?: string | null;
|
|
26
|
-
chatLLMProvider?: string | null;
|
|
27
|
-
chatLLMModel?: string | null;
|
|
28
|
-
eventEmitter?: unknown;
|
|
29
|
-
} | null;
|
|
35
|
+
world?: World;
|
|
30
36
|
chatId?: string | null;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
autoReply?: boolean;
|
|
35
|
-
role?: string;
|
|
36
|
-
nextAgent?: string;
|
|
37
|
+
messages?: Array<Record<string, any>>;
|
|
38
|
+
toolCallId?: string;
|
|
39
|
+
agentName?: string | null;
|
|
37
40
|
};
|
|
38
41
|
export declare function createCreateAgentToolDefinition(): {
|
|
39
42
|
description: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-agent-tool.d.ts","sourceRoot":"","sources":["../../core/create-agent-tool.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"create-agent-tool.d.ts","sourceRoot":"","sources":["../../core/create-agent-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAMH,OAAO,EAAqE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAU3G,KAAK,mBAAmB,GAAG;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAqKF,wBAAgB,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;oBA2BrB,mBAAmB,gBAAgB,MAAM,oBAAoB,MAAM,YAAY,sBAAsB;EA0K9H"}
|