@jterrazz/intelligence 1.3.0 → 1.4.1

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.
@@ -1,303 +0,0 @@
1
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
14
- }
15
- function _async_to_generator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
29
- }
30
- function _class_call_check(instance, Constructor) {
31
- if (!(instance instanceof Constructor)) {
32
- throw new TypeError("Cannot call a class as a function");
33
- }
34
- }
35
- function _defineProperties(target, props) {
36
- for(var i = 0; i < props.length; i++){
37
- var descriptor = props[i];
38
- descriptor.enumerable = descriptor.enumerable || false;
39
- descriptor.configurable = true;
40
- if ("value" in descriptor) descriptor.writable = true;
41
- Object.defineProperty(target, descriptor.key, descriptor);
42
- }
43
- }
44
- function _create_class(Constructor, protoProps, staticProps) {
45
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
46
- if (staticProps) _defineProperties(Constructor, staticProps);
47
- return Constructor;
48
- }
49
- function _define_property(obj, key, value) {
50
- if (key in obj) {
51
- Object.defineProperty(obj, key, {
52
- value: value,
53
- enumerable: true,
54
- configurable: true,
55
- writable: true
56
- });
57
- } else {
58
- obj[key] = value;
59
- }
60
- return obj;
61
- }
62
- function _instanceof(left, right) {
63
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
64
- return !!right[Symbol.hasInstance](left);
65
- } else {
66
- return left instanceof right;
67
- }
68
- }
69
- function _ts_generator(thisArg, body) {
70
- var f, y, t, _ = {
71
- label: 0,
72
- sent: function() {
73
- if (t[0] & 1) throw t[1];
74
- return t[1];
75
- },
76
- trys: [],
77
- ops: []
78
- }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
79
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
80
- return this;
81
- }), g;
82
- function verb(n) {
83
- return function(v) {
84
- return step([
85
- n,
86
- v
87
- ]);
88
- };
89
- }
90
- function step(op) {
91
- if (f) throw new TypeError("Generator is already executing.");
92
- while(g && (g = 0, op[0] && (_ = 0)), _)try {
93
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
94
- if (y = 0, t) op = [
95
- op[0] & 2,
96
- t.value
97
- ];
98
- switch(op[0]){
99
- case 0:
100
- case 1:
101
- t = op;
102
- break;
103
- case 4:
104
- _.label++;
105
- return {
106
- value: op[1],
107
- done: false
108
- };
109
- case 5:
110
- _.label++;
111
- y = op[1];
112
- op = [
113
- 0
114
- ];
115
- continue;
116
- case 7:
117
- op = _.ops.pop();
118
- _.trys.pop();
119
- continue;
120
- default:
121
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
122
- _ = 0;
123
- continue;
124
- }
125
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
126
- _.label = op[1];
127
- break;
128
- }
129
- if (op[0] === 6 && _.label < t[1]) {
130
- _.label = t[1];
131
- t = op;
132
- break;
133
- }
134
- if (t && _.label < t[2]) {
135
- _.label = t[2];
136
- _.ops.push(op);
137
- break;
138
- }
139
- if (t[2]) _.ops.pop();
140
- _.trys.pop();
141
- continue;
142
- }
143
- op = body.call(thisArg, _);
144
- } catch (e) {
145
- op = [
146
- 6,
147
- e
148
- ];
149
- y = 0;
150
- } finally{
151
- f = t = 0;
152
- }
153
- if (op[0] & 5) throw op[1];
154
- return {
155
- value: op[0] ? op[1] : void 0,
156
- done: true
157
- };
158
- }
159
- }
160
- import { AIResponseParser } from '../utils/ai-response-parser.js';
161
- /**
162
- * A basic agent for direct, one-shot interactions with a model.
163
- * It supports optional response parsing against a Zod schema but does not use tools.
164
- */ export var BasicAgentAdapter = /*#__PURE__*/ function() {
165
- "use strict";
166
- function BasicAgentAdapter(name, options) {
167
- _class_call_check(this, BasicAgentAdapter);
168
- _define_property(this, "name", void 0);
169
- _define_property(this, "options", void 0);
170
- this.name = name;
171
- this.options = options;
172
- }
173
- _create_class(BasicAgentAdapter, [
174
- {
175
- key: "run",
176
- value: function run(userPrompt) {
177
- return _async_to_generator(function() {
178
- var _this_options_logger, content, _this_options_logger1, _this_options_logger2, error, _this_options_logger3;
179
- return _ts_generator(this, function(_state) {
180
- switch(_state.label){
181
- case 0:
182
- (_this_options_logger = this.options.logger) === null || _this_options_logger === void 0 ? void 0 : _this_options_logger.debug("[".concat(this.name, "] Starting query execution."));
183
- _state.label = 1;
184
- case 1:
185
- _state.trys.push([
186
- 1,
187
- 3,
188
- ,
189
- 4
190
- ]);
191
- return [
192
- 4,
193
- this.invokeModel(userPrompt)
194
- ];
195
- case 2:
196
- content = _state.sent();
197
- if (this.options.schema) {
198
- ;
199
- this.parseResponse(content, this.options.schema);
200
- (_this_options_logger1 = this.options.logger) === null || _this_options_logger1 === void 0 ? void 0 : _this_options_logger1.info("[".concat(this.name, "] Execution finished and response parsed."));
201
- } else {
202
- ;
203
- (_this_options_logger2 = this.options.logger) === null || _this_options_logger2 === void 0 ? void 0 : _this_options_logger2.info("[".concat(this.name, "] Execution finished."));
204
- }
205
- return [
206
- 2,
207
- content
208
- ];
209
- case 3:
210
- error = _state.sent();
211
- (_this_options_logger3 = this.options.logger) === null || _this_options_logger3 === void 0 ? void 0 : _this_options_logger3.error("[".concat(this.name, "] Execution failed."), {
212
- error: _instanceof(error, Error) ? error.message : 'Unknown error'
213
- });
214
- return [
215
- 2,
216
- null
217
- ];
218
- case 4:
219
- return [
220
- 2
221
- ];
222
- }
223
- });
224
- }).call(this);
225
- }
226
- },
227
- {
228
- key: "invokeModel",
229
- value: function invokeModel(userPrompt) {
230
- return _async_to_generator(function() {
231
- var _this_options_logger, userInput, systemMessage, messages, _this_options_logger1, response, content;
232
- return _ts_generator(this, function(_state) {
233
- switch(_state.label){
234
- case 0:
235
- userInput = this.resolveUserInput(userPrompt);
236
- systemMessage = this.options.systemPrompt.generate();
237
- messages = [
238
- {
239
- content: systemMessage,
240
- role: 'system'
241
- },
242
- {
243
- content: userInput,
244
- role: 'user'
245
- }
246
- ];
247
- (_this_options_logger = this.options.logger) === null || _this_options_logger === void 0 ? void 0 : _this_options_logger.debug("[".concat(this.name, "] Invoking model..."), {
248
- hasSchema: !!this.options.schema
249
- });
250
- if (this.options.verbose) {
251
- ;
252
- (_this_options_logger1 = this.options.logger) === null || _this_options_logger1 === void 0 ? void 0 : _this_options_logger1.info("[".concat(this.name, "] Sending messages to model..."), {
253
- messages: messages
254
- });
255
- }
256
- return [
257
- 4,
258
- this.options.model.getModel().invoke(messages)
259
- ];
260
- case 1:
261
- response = _state.sent();
262
- content = response.content;
263
- if (typeof content !== 'string') {
264
- throw new Error('Model returned a non-string content type.');
265
- }
266
- return [
267
- 2,
268
- content
269
- ];
270
- }
271
- });
272
- }).call(this);
273
- }
274
- },
275
- {
276
- key: "parseResponse",
277
- value: function parseResponse(content, schema) {
278
- try {
279
- new AIResponseParser(schema).parse(content);
280
- } catch (error) {
281
- var _this_options_logger;
282
- (_this_options_logger = this.options.logger) === null || _this_options_logger === void 0 ? void 0 : _this_options_logger.error("[".concat(this.name, "] Failed to parse model response."), {
283
- error: _instanceof(error, Error) ? error.message : 'Unknown error',
284
- rawContent: content
285
- });
286
- throw new Error('Invalid response format from model.');
287
- }
288
- }
289
- },
290
- {
291
- key: "resolveUserInput",
292
- value: function resolveUserInput(userPrompt) {
293
- if (userPrompt) {
294
- return userPrompt.generate();
295
- }
296
- return 'Proceed with your instructions.';
297
- }
298
- }
299
- ]);
300
- return BasicAgentAdapter;
301
- }();
302
-
303
- //# sourceMappingURL=query-agent.adapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/adapters/agents/query-agent.adapter.ts"],"sourcesContent":["import { type LoggerPort } from '@jterrazz/logger';\nimport { type z } from 'zod/v4';\n\nimport { type AgentPort } from '../../ports/agent.port.js';\nimport type { ModelPort } from '../../ports/model.port.js';\nimport type { PromptPort } from '../../ports/prompt.port.js';\n\nimport { AIResponseParser } from '../utils/ai-response-parser.js';\n\nimport type { SystemPromptAdapter } from '../prompts/system-prompt.adapter.js';\n\nexport interface BasicAgentOptions<T = string> {\n logger?: LoggerPort;\n model: ModelPort;\n schema?: z.ZodSchema<T>;\n systemPrompt: SystemPromptAdapter;\n verbose?: boolean;\n}\n\n/**\n * A basic agent for direct, one-shot interactions with a model.\n * It supports optional response parsing against a Zod schema but does not use tools.\n */\nexport class BasicAgentAdapter<T = string> implements AgentPort {\n constructor(\n public readonly name: string,\n private readonly options: BasicAgentOptions<T>,\n ) {}\n\n async run(userPrompt?: PromptPort): Promise<null | string> {\n this.options.logger?.debug(`[${this.name}] Starting query execution.`);\n\n try {\n const content = await this.invokeModel(userPrompt);\n\n if (this.options.schema) {\n this.parseResponse(content, this.options.schema);\n this.options.logger?.info(`[${this.name}] Execution finished and response parsed.`);\n } else {\n this.options.logger?.info(`[${this.name}] Execution finished.`);\n }\n\n return content;\n } catch (error) {\n this.options.logger?.error(`[${this.name}] Execution failed.`, {\n error: error instanceof Error ? error.message : 'Unknown error',\n });\n return null;\n }\n }\n\n private async invokeModel(userPrompt?: PromptPort): Promise<string> {\n const userInput = this.resolveUserInput(userPrompt);\n const systemMessage = this.options.systemPrompt.generate();\n\n const messages = [\n { content: systemMessage, role: 'system' as const },\n { content: userInput, role: 'user' as const },\n ];\n\n this.options.logger?.debug(`[${this.name}] Invoking model...`, {\n hasSchema: !!this.options.schema,\n });\n\n if (this.options.verbose) {\n this.options.logger?.info(`[${this.name}] Sending messages to model...`, {\n messages,\n });\n }\n\n const response = await this.options.model.getModel().invoke(messages);\n const { content } = response;\n\n if (typeof content !== 'string') {\n throw new Error('Model returned a non-string content type.');\n }\n\n return content;\n }\n\n private parseResponse<TResponse>(content: string, schema: z.ZodSchema<TResponse>): void {\n try {\n new AIResponseParser(schema).parse(content);\n } catch (error) {\n this.options.logger?.error(`[${this.name}] Failed to parse model response.`, {\n error: error instanceof Error ? error.message : 'Unknown error',\n rawContent: content,\n });\n throw new Error('Invalid response format from model.');\n }\n }\n\n private resolveUserInput(userPrompt?: PromptPort): string {\n if (userPrompt) {\n return userPrompt.generate();\n }\n return 'Proceed with your instructions.';\n }\n}\n"],"names":["AIResponseParser","BasicAgentAdapter","name","options","run","userPrompt","content","error","logger","debug","invokeModel","schema","parseResponse","info","Error","message","userInput","systemMessage","messages","response","resolveUserInput","systemPrompt","generate","role","hasSchema","verbose","model","getModel","invoke","parse","rawContent"],"mappings":"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"}