mojentic 1.0.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/LICENSE +21 -0
- package/README.md +459 -0
- package/dist/agents/async-aggregator-agent.d.ts +101 -0
- package/dist/agents/async-aggregator-agent.d.ts.map +1 -0
- package/dist/agents/async-aggregator-agent.js +160 -0
- package/dist/agents/async-aggregator-agent.js.map +1 -0
- package/dist/agents/async-dispatcher.d.ts +98 -0
- package/dist/agents/async-dispatcher.d.ts.map +1 -0
- package/dist/agents/async-dispatcher.js +173 -0
- package/dist/agents/async-dispatcher.js.map +1 -0
- package/dist/agents/async-llm-agent-with-memory.d.ts +95 -0
- package/dist/agents/async-llm-agent-with-memory.d.ts.map +1 -0
- package/dist/agents/async-llm-agent-with-memory.js +136 -0
- package/dist/agents/async-llm-agent-with-memory.js.map +1 -0
- package/dist/agents/async-llm-agent.d.ts +85 -0
- package/dist/agents/async-llm-agent.d.ts.map +1 -0
- package/dist/agents/async-llm-agent.js +87 -0
- package/dist/agents/async-llm-agent.js.map +1 -0
- package/dist/agents/base-agent.d.ts +59 -0
- package/dist/agents/base-agent.d.ts.map +1 -0
- package/dist/agents/base-agent.js +24 -0
- package/dist/agents/base-agent.js.map +1 -0
- package/dist/agents/base-async-agent.d.ts +42 -0
- package/dist/agents/base-async-agent.d.ts.map +1 -0
- package/dist/agents/base-async-agent.js +6 -0
- package/dist/agents/base-async-agent.js.map +1 -0
- package/dist/agents/event.d.ts +26 -0
- package/dist/agents/event.d.ts.map +1 -0
- package/dist/agents/event.js +13 -0
- package/dist/agents/event.js.map +1 -0
- package/dist/agents/index.d.ts +14 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +30 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/iterative-problem-solver.d.ts +83 -0
- package/dist/agents/iterative-problem-solver.d.ts.map +1 -0
- package/dist/agents/iterative-problem-solver.js +120 -0
- package/dist/agents/iterative-problem-solver.js.map +1 -0
- package/dist/agents/router.d.ts +44 -0
- package/dist/agents/router.d.ts.map +1 -0
- package/dist/agents/router.js +53 -0
- package/dist/agents/router.js.map +1 -0
- package/dist/agents/simple-recursive-agent.d.ts +182 -0
- package/dist/agents/simple-recursive-agent.d.ts.map +1 -0
- package/dist/agents/simple-recursive-agent.js +272 -0
- package/dist/agents/simple-recursive-agent.js.map +1 -0
- package/dist/context/index.d.ts +5 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +21 -0
- package/dist/context/index.js.map +1 -0
- package/dist/context/shared-working-memory.d.ts +76 -0
- package/dist/context/shared-working-memory.d.ts.map +1 -0
- package/dist/context/shared-working-memory.js +121 -0
- package/dist/context/shared-working-memory.js.map +1 -0
- package/dist/error.d.ts +93 -0
- package/dist/error.d.ts.map +1 -0
- package/dist/error.js +149 -0
- package/dist/error.js.map +1 -0
- package/dist/examples/react/decisioning-agent.d.ts +48 -0
- package/dist/examples/react/decisioning-agent.d.ts.map +1 -0
- package/dist/examples/react/decisioning-agent.js +204 -0
- package/dist/examples/react/decisioning-agent.js.map +1 -0
- package/dist/examples/react/events.d.ts +77 -0
- package/dist/examples/react/events.d.ts.map +1 -0
- package/dist/examples/react/events.js +9 -0
- package/dist/examples/react/events.js.map +1 -0
- package/dist/examples/react/formatters.d.ts +23 -0
- package/dist/examples/react/formatters.d.ts.map +1 -0
- package/dist/examples/react/formatters.js +68 -0
- package/dist/examples/react/formatters.js.map +1 -0
- package/dist/examples/react/index.d.ts +12 -0
- package/dist/examples/react/index.d.ts.map +1 -0
- package/dist/examples/react/index.js +28 -0
- package/dist/examples/react/index.js.map +1 -0
- package/dist/examples/react/models.d.ts +57 -0
- package/dist/examples/react/models.d.ts.map +1 -0
- package/dist/examples/react/models.js +19 -0
- package/dist/examples/react/models.js.map +1 -0
- package/dist/examples/react/output-agent.d.ts +23 -0
- package/dist/examples/react/output-agent.d.ts.map +1 -0
- package/dist/examples/react/output-agent.js +28 -0
- package/dist/examples/react/output-agent.js.map +1 -0
- package/dist/examples/react/summarization-agent.d.ts +46 -0
- package/dist/examples/react/summarization-agent.d.ts.map +1 -0
- package/dist/examples/react/summarization-agent.js +102 -0
- package/dist/examples/react/summarization-agent.js.map +1 -0
- package/dist/examples/react/thinking-agent.d.ts +47 -0
- package/dist/examples/react/thinking-agent.d.ts.map +1 -0
- package/dist/examples/react/thinking-agent.js +127 -0
- package/dist/examples/react/thinking-agent.js.map +1 -0
- package/dist/examples/react/tool-call-agent.d.ts +25 -0
- package/dist/examples/react/tool-call-agent.d.ts.map +1 -0
- package/dist/examples/react/tool-call-agent.js +83 -0
- package/dist/examples/react/tool-call-agent.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +28 -0
- package/dist/index.js.map +1 -0
- package/dist/llm/agent.d.ts +68 -0
- package/dist/llm/agent.d.ts.map +1 -0
- package/dist/llm/agent.js +85 -0
- package/dist/llm/agent.js.map +1 -0
- package/dist/llm/broker.d.ts +150 -0
- package/dist/llm/broker.d.ts.map +1 -0
- package/dist/llm/broker.js +355 -0
- package/dist/llm/broker.js.map +1 -0
- package/dist/llm/chat-session.d.ts +98 -0
- package/dist/llm/chat-session.d.ts.map +1 -0
- package/dist/llm/chat-session.js +156 -0
- package/dist/llm/chat-session.js.map +1 -0
- package/dist/llm/gateway.d.ts +28 -0
- package/dist/llm/gateway.d.ts.map +1 -0
- package/dist/llm/gateway.js +6 -0
- package/dist/llm/gateway.js.map +1 -0
- package/dist/llm/gateways/index.d.ts +9 -0
- package/dist/llm/gateways/index.d.ts.map +1 -0
- package/dist/llm/gateways/index.js +25 -0
- package/dist/llm/gateways/index.js.map +1 -0
- package/dist/llm/gateways/ollama.d.ts +30 -0
- package/dist/llm/gateways/ollama.d.ts.map +1 -0
- package/dist/llm/gateways/ollama.js +322 -0
- package/dist/llm/gateways/ollama.js.map +1 -0
- package/dist/llm/gateways/openai-messages-adapter.d.ts +29 -0
- package/dist/llm/gateways/openai-messages-adapter.d.ts.map +1 -0
- package/dist/llm/gateways/openai-messages-adapter.js +188 -0
- package/dist/llm/gateways/openai-messages-adapter.js.map +1 -0
- package/dist/llm/gateways/openai-model-registry.d.ts +82 -0
- package/dist/llm/gateways/openai-model-registry.d.ts.map +1 -0
- package/dist/llm/gateways/openai-model-registry.js +352 -0
- package/dist/llm/gateways/openai-model-registry.js.map +1 -0
- package/dist/llm/gateways/openai.d.ts +40 -0
- package/dist/llm/gateways/openai.d.ts.map +1 -0
- package/dist/llm/gateways/openai.js +469 -0
- package/dist/llm/gateways/openai.js.map +1 -0
- package/dist/llm/gateways/tokenizerGateway.d.ts +61 -0
- package/dist/llm/gateways/tokenizerGateway.d.ts.map +1 -0
- package/dist/llm/gateways/tokenizerGateway.js +75 -0
- package/dist/llm/gateways/tokenizerGateway.js.map +1 -0
- package/dist/llm/index.d.ts +11 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +27 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/models.d.ts +95 -0
- package/dist/llm/models.d.ts.map +1 -0
- package/dist/llm/models.js +50 -0
- package/dist/llm/models.js.map +1 -0
- package/dist/llm/tools/ask-user.d.ts +39 -0
- package/dist/llm/tools/ask-user.d.ts.map +1 -0
- package/dist/llm/tools/ask-user.js +111 -0
- package/dist/llm/tools/ask-user.js.map +1 -0
- package/dist/llm/tools/current-datetime.d.ts +17 -0
- package/dist/llm/tools/current-datetime.d.ts.map +1 -0
- package/dist/llm/tools/current-datetime.js +76 -0
- package/dist/llm/tools/current-datetime.js.map +1 -0
- package/dist/llm/tools/date-resolver.d.ts +17 -0
- package/dist/llm/tools/date-resolver.d.ts.map +1 -0
- package/dist/llm/tools/date-resolver.js +135 -0
- package/dist/llm/tools/date-resolver.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/append-task.d.ts +13 -0
- package/dist/llm/tools/ephemeral-task-manager/append-task.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/append-task.js +54 -0
- package/dist/llm/tools/ephemeral-task-manager/append-task.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/clear-tasks.d.ts +13 -0
- package/dist/llm/tools/ephemeral-task-manager/clear-tasks.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/clear-tasks.js +37 -0
- package/dist/llm/tools/ephemeral-task-manager/clear-tasks.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/complete-task.d.ts +15 -0
- package/dist/llm/tools/ephemeral-task-manager/complete-task.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/complete-task.js +56 -0
- package/dist/llm/tools/ephemeral-task-manager/complete-task.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/index.d.ts +44 -0
- package/dist/llm/tools/ephemeral-task-manager/index.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/index.js +73 -0
- package/dist/llm/tools/ephemeral-task-manager/index.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/insert-task-after.d.ts +13 -0
- package/dist/llm/tools/ephemeral-task-manager/insert-task-after.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/insert-task-after.js +59 -0
- package/dist/llm/tools/ephemeral-task-manager/insert-task-after.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/list-tasks.d.ts +14 -0
- package/dist/llm/tools/ephemeral-task-manager/list-tasks.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/list-tasks.js +45 -0
- package/dist/llm/tools/ephemeral-task-manager/list-tasks.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/prepend-task.d.ts +13 -0
- package/dist/llm/tools/ephemeral-task-manager/prepend-task.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/prepend-task.js +54 -0
- package/dist/llm/tools/ephemeral-task-manager/prepend-task.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/start-task.d.ts +15 -0
- package/dist/llm/tools/ephemeral-task-manager/start-task.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/start-task.js +56 -0
- package/dist/llm/tools/ephemeral-task-manager/start-task.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/task-list.d.ts +68 -0
- package/dist/llm/tools/ephemeral-task-manager/task-list.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/task-list.js +120 -0
- package/dist/llm/tools/ephemeral-task-manager/task-list.js.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/task.d.ts +21 -0
- package/dist/llm/tools/ephemeral-task-manager/task.d.ts.map +1 -0
- package/dist/llm/tools/ephemeral-task-manager/task.js +24 -0
- package/dist/llm/tools/ephemeral-task-manager/task.js.map +1 -0
- package/dist/llm/tools/file-manager.d.ts +127 -0
- package/dist/llm/tools/file-manager.d.ts.map +1 -0
- package/dist/llm/tools/file-manager.js +598 -0
- package/dist/llm/tools/file-manager.js.map +1 -0
- package/dist/llm/tools/index.d.ts +11 -0
- package/dist/llm/tools/index.d.ts.map +1 -0
- package/dist/llm/tools/index.js +27 -0
- package/dist/llm/tools/index.js.map +1 -0
- package/dist/llm/tools/tell-user.d.ts +31 -0
- package/dist/llm/tools/tell-user.d.ts.map +1 -0
- package/dist/llm/tools/tell-user.js +57 -0
- package/dist/llm/tools/tell-user.js.map +1 -0
- package/dist/llm/tools/tool-wrapper.d.ts +54 -0
- package/dist/llm/tools/tool-wrapper.d.ts.map +1 -0
- package/dist/llm/tools/tool-wrapper.js +91 -0
- package/dist/llm/tools/tool-wrapper.js.map +1 -0
- package/dist/llm/tools/tool.d.ts +70 -0
- package/dist/llm/tools/tool.d.ts.map +1 -0
- package/dist/llm/tools/tool.js +19 -0
- package/dist/llm/tools/tool.js.map +1 -0
- package/dist/llm/tools/web-search-tool.d.ts +35 -0
- package/dist/llm/tools/web-search-tool.d.ts.map +1 -0
- package/dist/llm/tools/web-search-tool.js +105 -0
- package/dist/llm/tools/web-search-tool.js.map +1 -0
- package/dist/llm/utils/image.d.ts +30 -0
- package/dist/llm/utils/image.d.ts.map +1 -0
- package/dist/llm/utils/image.js +65 -0
- package/dist/llm/utils/image.js.map +1 -0
- package/dist/tracer/eventStore.d.ts +101 -0
- package/dist/tracer/eventStore.d.ts.map +1 -0
- package/dist/tracer/eventStore.js +120 -0
- package/dist/tracer/eventStore.js.map +1 -0
- package/dist/tracer/index.d.ts +8 -0
- package/dist/tracer/index.d.ts.map +1 -0
- package/dist/tracer/index.js +24 -0
- package/dist/tracer/index.js.map +1 -0
- package/dist/tracer/nullTracer.d.ts +127 -0
- package/dist/tracer/nullTracer.d.ts.map +1 -0
- package/dist/tracer/nullTracer.js +148 -0
- package/dist/tracer/nullTracer.js.map +1 -0
- package/dist/tracer/tracerEvents.d.ts +209 -0
- package/dist/tracer/tracerEvents.d.ts.map +1 -0
- package/dist/tracer/tracerEvents.js +312 -0
- package/dist/tracer/tracerEvents.js.map +1 -0
- package/dist/tracer/tracerSystem.d.ts +149 -0
- package/dist/tracer/tracerSystem.d.ts.map +1 -0
- package/dist/tracer/tracerSystem.js +196 -0
- package/dist/tracer/tracerSystem.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TracerSystem module for coordinating tracer events.
|
|
4
|
+
*
|
|
5
|
+
* This provides a central system for recording, filtering, and querying tracer events.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.TracerSystem = void 0;
|
|
9
|
+
const eventStore_1 = require("./eventStore");
|
|
10
|
+
const tracerEvents_1 = require("./tracerEvents");
|
|
11
|
+
/**
|
|
12
|
+
* Central system for capturing and querying tracer events.
|
|
13
|
+
*
|
|
14
|
+
* The TracerSystem is responsible for recording events related to LLM calls,
|
|
15
|
+
* tool usage, and agent interactions, providing a way to trace through the
|
|
16
|
+
* major events of the system.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* const tracer = new TracerSystem();
|
|
21
|
+
*
|
|
22
|
+
* tracer.recordLlmCall('gpt-4', [Message.user('Hello')], 0.7, undefined, 'corr-123');
|
|
23
|
+
* tracer.recordLlmResponse('gpt-4', 'Hi there!', undefined, 150, 'corr-123');
|
|
24
|
+
*
|
|
25
|
+
* const events = tracer.getEvents();
|
|
26
|
+
* console.log(`Recorded ${events.length} events`);
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
class TracerSystem {
|
|
30
|
+
eventStore;
|
|
31
|
+
_enabled;
|
|
32
|
+
/**
|
|
33
|
+
* Initialize the tracer system.
|
|
34
|
+
*
|
|
35
|
+
* @param eventStore - The event store to use for storing events. If not provided, a new EventStore will be created.
|
|
36
|
+
* @param enabled - Whether the tracer system is enabled. If false, no events will be recorded.
|
|
37
|
+
*/
|
|
38
|
+
constructor(eventStore, enabled = true) {
|
|
39
|
+
this.eventStore = eventStore || new eventStore_1.EventStore();
|
|
40
|
+
this._enabled = enabled;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Get whether the tracer system is enabled.
|
|
44
|
+
*/
|
|
45
|
+
get enabled() {
|
|
46
|
+
return this._enabled;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Record a tracer event in the event store.
|
|
50
|
+
*
|
|
51
|
+
* @param event - The tracer event to record
|
|
52
|
+
*/
|
|
53
|
+
recordEvent(event) {
|
|
54
|
+
if (!this._enabled) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
this.eventStore.store(event);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Record an LLM call event.
|
|
61
|
+
*
|
|
62
|
+
* @param model - The name of the LLM model being called
|
|
63
|
+
* @param messages - The messages sent to the LLM
|
|
64
|
+
* @param temperature - The temperature setting for the LLM call
|
|
65
|
+
* @param tools - The tools available to the LLM, if any
|
|
66
|
+
* @param correlationId - UUID string that is copied from cause-to-effect for tracing events
|
|
67
|
+
* @param source - The source of the event
|
|
68
|
+
*/
|
|
69
|
+
recordLlmCall(model, messages, temperature = 1.0, tools, correlationId, source) {
|
|
70
|
+
if (!this._enabled) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const event = new tracerEvents_1.LLMCallTracerEvent(model, messages, temperature, tools, correlationId, source);
|
|
74
|
+
this.eventStore.store(event);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Record an LLM response event.
|
|
78
|
+
*
|
|
79
|
+
* @param model - The name of the LLM model that responded
|
|
80
|
+
* @param content - The content of the LLM response
|
|
81
|
+
* @param toolCalls - Any tool calls made by the LLM in its response
|
|
82
|
+
* @param callDurationMs - The duration of the LLM call in milliseconds
|
|
83
|
+
* @param correlationId - UUID string that is copied from cause-to-effect for tracing events
|
|
84
|
+
* @param source - The source of the event
|
|
85
|
+
*/
|
|
86
|
+
recordLlmResponse(model, content, toolCalls, callDurationMs, correlationId, source) {
|
|
87
|
+
if (!this._enabled) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
const event = new tracerEvents_1.LLMResponseTracerEvent(model, content, toolCalls, callDurationMs, correlationId, source);
|
|
91
|
+
this.eventStore.store(event);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Record a tool call event.
|
|
95
|
+
*
|
|
96
|
+
* @param toolName - The name of the tool being called
|
|
97
|
+
* @param args - The arguments provided to the tool
|
|
98
|
+
* @param result - The result returned by the tool
|
|
99
|
+
* @param caller - The name of the agent or component calling the tool
|
|
100
|
+
* @param callDurationMs - The duration of the tool call in milliseconds
|
|
101
|
+
* @param correlationId - UUID string that is copied from cause-to-effect for tracing events
|
|
102
|
+
* @param source - The source of the event
|
|
103
|
+
*/
|
|
104
|
+
recordToolCall(toolName, args, result, caller, callDurationMs, correlationId, source) {
|
|
105
|
+
if (!this._enabled) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
const event = new tracerEvents_1.ToolCallTracerEvent(toolName, args, result, caller, callDurationMs, correlationId, source);
|
|
109
|
+
this.eventStore.store(event);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Record an agent interaction event.
|
|
113
|
+
*
|
|
114
|
+
* @param fromAgent - The name of the agent sending the event
|
|
115
|
+
* @param toAgent - The name of the agent receiving the event
|
|
116
|
+
* @param eventType - The type of event being processed
|
|
117
|
+
* @param eventId - A unique identifier for the event
|
|
118
|
+
* @param correlationId - UUID string that is copied from cause-to-effect for tracing events
|
|
119
|
+
* @param source - The source of the event
|
|
120
|
+
*/
|
|
121
|
+
recordAgentInteraction(fromAgent, toAgent, eventType, eventId, correlationId, source) {
|
|
122
|
+
if (!this._enabled) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
const event = new tracerEvents_1.AgentInteractionTracerEvent(fromAgent, toAgent, eventType, eventId, correlationId, source);
|
|
126
|
+
this.eventStore.store(event);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get tracer events from the store, optionally filtered.
|
|
130
|
+
*
|
|
131
|
+
* This is a convenience wrapper around the EventStore's getEvents method,
|
|
132
|
+
* specifically for tracer events.
|
|
133
|
+
*
|
|
134
|
+
* @param options - Filter options for querying events
|
|
135
|
+
* @returns Events that match the filter criteria
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* // Get all LLM call events
|
|
140
|
+
* const llmCalls = tracer.getEvents({ eventType: LLMCallTracerEvent });
|
|
141
|
+
*
|
|
142
|
+
* // Get events in a time range
|
|
143
|
+
* const recent = tracer.getEvents({
|
|
144
|
+
* startTime: Date.now() - 60000,
|
|
145
|
+
* endTime: Date.now()
|
|
146
|
+
* });
|
|
147
|
+
*
|
|
148
|
+
* // Get events with custom filter
|
|
149
|
+
* const filtered = tracer.getEvents({
|
|
150
|
+
* filterFunc: (e) => e.correlationId === 'my-id'
|
|
151
|
+
* });
|
|
152
|
+
* ```
|
|
153
|
+
*/
|
|
154
|
+
getEvents(options = {}) {
|
|
155
|
+
return this.eventStore.getEvents(options);
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get the last N tracer events, optionally filtered by type.
|
|
159
|
+
*
|
|
160
|
+
* @param n - Number of events to return
|
|
161
|
+
* @param eventType - Optional event type to filter by
|
|
162
|
+
* @returns The last N tracer events that match the filter criteria
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* ```typescript
|
|
166
|
+
* // Get last 10 events
|
|
167
|
+
* const last10 = tracer.getLastNTracerEvents(10);
|
|
168
|
+
*
|
|
169
|
+
* // Get last 5 LLM response events
|
|
170
|
+
* const last5 = tracer.getLastNTracerEvents(5, LLMResponseTracerEvent);
|
|
171
|
+
* ```
|
|
172
|
+
*/
|
|
173
|
+
getLastNTracerEvents(n, eventType) {
|
|
174
|
+
return this.eventStore.getLastNEvents(n, eventType);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Clear all events from the event store.
|
|
178
|
+
*/
|
|
179
|
+
clear() {
|
|
180
|
+
this.eventStore.clear();
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Enable the tracer system.
|
|
184
|
+
*/
|
|
185
|
+
enable() {
|
|
186
|
+
this._enabled = true;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Disable the tracer system.
|
|
190
|
+
*/
|
|
191
|
+
disable() {
|
|
192
|
+
this._enabled = false;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
exports.TracerSystem = TracerSystem;
|
|
196
|
+
//# sourceMappingURL=tracerSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracerSystem.js","sourceRoot":"","sources":["../../src/tracer/tracerSystem.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mojentic",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Modern LLM integration framework for TypeScript with tool support and structured output generation",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"test": "jest",
|
|
10
|
+
"test:watch": "jest --watch",
|
|
11
|
+
"test:coverage": "jest --coverage",
|
|
12
|
+
"lint": "eslint 'src/**/*.ts' 'examples/**/*.ts' --max-warnings 0",
|
|
13
|
+
"lint:fix": "eslint 'src/**/*.ts' 'examples/**/*.ts' --fix",
|
|
14
|
+
"format": "prettier --write 'src/**/*.ts' 'examples/**/*.ts'",
|
|
15
|
+
"format:check": "prettier --check 'src/**/*.ts' 'examples/**/*.ts'",
|
|
16
|
+
"audit": "npm audit --omit=dev --audit-level=moderate",
|
|
17
|
+
"audit:fix": "npm audit fix",
|
|
18
|
+
"quality": "npm run lint && npm run format:check && npm run test:coverage && npm run audit",
|
|
19
|
+
"example:simple": "ts-node examples/simple_llm.ts",
|
|
20
|
+
"example:structured": "ts-node examples/structured_output.ts",
|
|
21
|
+
"example:tool": "ts-node examples/tool_usage.ts",
|
|
22
|
+
"example:streaming": "ts-node examples/streaming.ts",
|
|
23
|
+
"example:image": "ts-node examples/image_analysis.ts",
|
|
24
|
+
"example:broker": "ts-node examples/broker_examples.ts",
|
|
25
|
+
"example:broker-as-tool": "ts-node examples/broker_as_tool.ts",
|
|
26
|
+
"example:tracer": "ts-node examples/tracer-demo.ts",
|
|
27
|
+
"example:async-llm": "ts-node examples/async-llm.ts",
|
|
28
|
+
"example:iterative-solver": "ts-node examples/iterative-solver.ts",
|
|
29
|
+
"example:recursive-agent": "ts-node examples/recursive-agent.ts",
|
|
30
|
+
"example:pull-model": "ts-node examples/pull_model.ts",
|
|
31
|
+
"docs:dev": "vitepress dev docs",
|
|
32
|
+
"docs:build": "vitepress build docs",
|
|
33
|
+
"docs:preview": "vitepress preview docs"
|
|
34
|
+
},
|
|
35
|
+
"keywords": [
|
|
36
|
+
"llm",
|
|
37
|
+
"ai",
|
|
38
|
+
"openai",
|
|
39
|
+
"ollama",
|
|
40
|
+
"anthropic",
|
|
41
|
+
"typescript",
|
|
42
|
+
"agents"
|
|
43
|
+
],
|
|
44
|
+
"author": "Stacey Vetzal <stacey@mojility.com>",
|
|
45
|
+
"license": "MIT",
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@types/jest": "^29.5.11",
|
|
48
|
+
"@types/node": "^20.10.6",
|
|
49
|
+
"@typescript-eslint/eslint-plugin": "^6.17.0",
|
|
50
|
+
"@typescript-eslint/parser": "^6.17.0",
|
|
51
|
+
"eslint": "^8.56.0",
|
|
52
|
+
"eslint-plugin-security": "^3.0.1",
|
|
53
|
+
"jest": "^29.7.0",
|
|
54
|
+
"prettier": "^3.1.1",
|
|
55
|
+
"ts-jest": "^29.1.1",
|
|
56
|
+
"ts-node": "^10.9.2",
|
|
57
|
+
"typescript": "^5.3.3",
|
|
58
|
+
"vitepress": "^1.0.0-rc.31"
|
|
59
|
+
},
|
|
60
|
+
"dependencies": {
|
|
61
|
+
"tiktoken": "^1.0.22",
|
|
62
|
+
"zod": "^3.22.4"
|
|
63
|
+
},
|
|
64
|
+
"overrides": {
|
|
65
|
+
"js-yaml": "3.14.2",
|
|
66
|
+
"esbuild": "0.27.0"
|
|
67
|
+
},
|
|
68
|
+
"engines": {
|
|
69
|
+
"node": ">=18.0.0"
|
|
70
|
+
},
|
|
71
|
+
"repository": {
|
|
72
|
+
"type": "git",
|
|
73
|
+
"url": "https://github.com/svetzal/mojentic-ts.git"
|
|
74
|
+
},
|
|
75
|
+
"homepage": "https://github.com/svetzal/mojentic-ts#readme",
|
|
76
|
+
"bugs": {
|
|
77
|
+
"url": "https://github.com/svetzal/mojentic-ts/issues"
|
|
78
|
+
},
|
|
79
|
+
"files": [
|
|
80
|
+
"dist",
|
|
81
|
+
"README.md",
|
|
82
|
+
"LICENSE"
|
|
83
|
+
],
|
|
84
|
+
"publishConfig": {
|
|
85
|
+
"access": "public"
|
|
86
|
+
}
|
|
87
|
+
}
|