@ellyco/agentic 0.1.1 → 0.2.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 +98 -136
- package/dist/graphs/graph.d.ts.map +1 -1
- package/dist/graphs/graph.js +72 -47
- package/dist/graphs/graph.js.map +1 -1
- package/dist/graphs/index.d.ts +8 -6
- package/dist/graphs/index.d.ts.map +1 -1
- package/dist/graphs/index.js +22 -12
- package/dist/graphs/index.js.map +1 -1
- package/dist/graphs/iterator.d.ts +25 -21
- package/dist/graphs/iterator.d.ts.map +1 -1
- package/dist/graphs/iterator.js +30 -25
- package/dist/graphs/iterator.js.map +1 -1
- package/dist/graphs/store/index.d.ts +4 -0
- package/dist/graphs/store/index.d.ts.map +1 -0
- package/dist/graphs/store/index.js +20 -0
- package/dist/graphs/store/index.js.map +1 -0
- package/dist/graphs/types.d.ts +2 -3
- package/dist/graphs/types.d.ts.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/models/BaseModel.d.ts +3 -1
- package/dist/models/BaseModel.d.ts.map +1 -1
- package/dist/models/BaseModel.js +5 -0
- package/dist/models/BaseModel.js.map +1 -1
- package/dist/models/index.d.ts +4 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +20 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/react-agent.d.ts +12 -0
- package/dist/models/react-agent.d.ts.map +1 -0
- package/dist/models/react-agent.js +48 -0
- package/dist/models/react-agent.js.map +1 -0
- package/dist/nodes/index.d.ts +4 -3
- package/dist/nodes/index.d.ts.map +1 -1
- package/dist/nodes/index.js +18 -6
- package/dist/nodes/index.js.map +1 -1
- package/dist/tools.d.ts +7 -6
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +3 -2
- package/dist/tools.js.map +1 -1
- package/dist/util/clone-aware.d.ts +2 -0
- package/dist/util/clone-aware.d.ts.map +1 -0
- package/dist/util/clone-aware.js +29 -0
- package/dist/util/clone-aware.js.map +1 -0
- package/dist/util/index.d.ts +4 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +20 -0
- package/dist/util/index.js.map +1 -0
- package/dist/util/merge-state.d.ts.map +1 -0
- package/dist/{graphs → util}/merge-state.js +13 -11
- package/dist/util/merge-state.js.map +1 -0
- package/dist/util/serializer.d.ts +15 -0
- package/dist/util/serializer.d.ts.map +1 -0
- package/dist/util/serializer.js +73 -0
- package/dist/util/serializer.js.map +1 -0
- package/package.json +7 -1
- package/dist/graphs/merge-state.d.ts.map +0 -1
- package/dist/graphs/merge-state.js.map +0 -1
- /package/dist/{graphs → util}/merge-state.d.ts +0 -0
package/dist/graphs/index.js
CHANGED
|
@@ -1,15 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Object.defineProperty(exports, "RuntimeContext", { enumerable: true, get: function () { return runtime_context_1.RuntimeContext; } });
|
|
12
|
-
Object.defineProperty(exports, "ContextLayer", { enumerable: true, get: function () { return runtime_context_1.ContextLayer; } });
|
|
13
|
-
var registry_1 = require("./registry");
|
|
14
|
-
Object.defineProperty(exports, "STATE_MERGE", { enumerable: true, get: function () { return registry_1.STATE_MERGE; } });
|
|
17
|
+
__exportStar(require("./store"), exports);
|
|
18
|
+
__exportStar(require("./graph"), exports);
|
|
19
|
+
__exportStar(require("./iterator"), exports);
|
|
20
|
+
__exportStar(require("./node-sequence"), exports);
|
|
21
|
+
__exportStar(require("./registry"), exports);
|
|
22
|
+
__exportStar(require("./runtime-context"), exports);
|
|
23
|
+
__exportStar(require("./state-machine"), exports);
|
|
24
|
+
__exportStar(require("./types"), exports);
|
|
15
25
|
//# sourceMappingURL=index.js.map
|
package/dist/graphs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graphs/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graphs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,kDAAgC;AAChC,6CAA2B;AAC3B,oDAAkC;AAClC,kDAAgC;AAChC,0CAAwB"}
|
|
@@ -61,37 +61,41 @@ type ArrayKeys<T> = TypedKeys<T, any[]>;
|
|
|
61
61
|
* @template S - The inferred state type from T
|
|
62
62
|
* @template NS - The node state type including index and item
|
|
63
63
|
*
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
*
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* const schema = z.object({
|
|
67
|
+
* items: z.array(z.object({ name: z.string(), value: z.number() }))
|
|
68
|
+
* });
|
|
69
|
+
*
|
|
70
|
+
* // With explicit prefix
|
|
71
|
+
* const iterator = new Iterator(schema, "items", "item");
|
|
72
|
+
* // Or without prefix (uses iteratorKey as prefix)
|
|
73
|
+
* const iterator2 = new Iterator(schema, "items");
|
|
74
|
+
*
|
|
75
|
+
* const looped = new NodeSequence(iterator.getNodeSchema());
|
|
76
|
+
* looped.next(new FunctionNode((state) => ({
|
|
77
|
+
* itemValue: state.itemItem.value * 2
|
|
78
|
+
* })));
|
|
79
|
+
*
|
|
80
|
+
* iterator.setLoopedNode(looped);
|
|
81
|
+
*
|
|
82
|
+
* const result = await iterator.invoke({
|
|
83
|
+
* items: [{ name: "a", value: 1 }, { name: "b", value: 2 }]
|
|
84
|
+
* });
|
|
85
|
+
* ```
|
|
82
86
|
*/
|
|
83
87
|
export declare class Iterator<Item extends any, T extends z.ZodObject, Prefix extends string, S extends Record<string, unknown> = z.infer<T>, NS extends Record<string, unknown> = IteratorNodeState<S, Prefix, Item>> extends Graph<T, S, NS> {
|
|
84
88
|
protected readonly schema: T;
|
|
85
|
-
private readonly prefix;
|
|
86
89
|
private readonly iteratorKey;
|
|
90
|
+
private readonly prefix;
|
|
87
91
|
/**
|
|
88
92
|
* Creates an iterator graph.
|
|
89
93
|
*
|
|
90
94
|
* @param {T} schema - The base state schema
|
|
91
|
-
* @param {Prefix} prefix - Prefix for index and item keys
|
|
92
95
|
* @param {ArrayKeys<z.infer<T>>} iteratorKey - The state key containing the array to iterate
|
|
96
|
+
* @param {Prefix} [prefix] - Optional prefix for index and item keys. If not provided, uses iteratorKey
|
|
93
97
|
*/
|
|
94
|
-
constructor(schema: T,
|
|
98
|
+
constructor(schema: T, iteratorKey: ArrayKeys<z.infer<T>>, prefix?: Prefix);
|
|
95
99
|
/**
|
|
96
100
|
* Sets the node to be executed for each item in the array.
|
|
97
101
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterator.d.ts","sourceRoot":"","sources":["../../src/graphs/iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AACjD,OAAO,EAAgB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"iterator.d.ts","sourceRoot":"","sources":["../../src/graphs/iterator.ts"],"names":[],"mappings":"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"}
|
package/dist/graphs/iterator.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Iterator = void 0;
|
|
4
4
|
const nodes_1 = require("../nodes");
|
|
5
|
+
const util_1 = require("../util");
|
|
5
6
|
const graph_1 = require("./graph");
|
|
6
7
|
const zod_1 = require("zod");
|
|
7
8
|
/**
|
|
@@ -24,44 +25,48 @@ const INCREMENT_INDEX_NODE = "increment-index";
|
|
|
24
25
|
* @template S - The inferred state type from T
|
|
25
26
|
* @template NS - The node state type including index and item
|
|
26
27
|
*
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
*
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* const schema = z.object({
|
|
31
|
+
* items: z.array(z.object({ name: z.string(), value: z.number() }))
|
|
32
|
+
* });
|
|
33
|
+
*
|
|
34
|
+
* // With explicit prefix
|
|
35
|
+
* const iterator = new Iterator(schema, "items", "item");
|
|
36
|
+
* // Or without prefix (uses iteratorKey as prefix)
|
|
37
|
+
* const iterator2 = new Iterator(schema, "items");
|
|
38
|
+
*
|
|
39
|
+
* const looped = new NodeSequence(iterator.getNodeSchema());
|
|
40
|
+
* looped.next(new FunctionNode((state) => ({
|
|
41
|
+
* itemValue: state.itemItem.value * 2
|
|
42
|
+
* })));
|
|
43
|
+
*
|
|
44
|
+
* iterator.setLoopedNode(looped);
|
|
45
|
+
*
|
|
46
|
+
* const result = await iterator.invoke({
|
|
47
|
+
* items: [{ name: "a", value: 1 }, { name: "b", value: 2 }]
|
|
48
|
+
* });
|
|
49
|
+
* ```
|
|
45
50
|
*/
|
|
46
51
|
class Iterator extends graph_1.Graph {
|
|
47
52
|
schema;
|
|
48
|
-
prefix;
|
|
49
53
|
iteratorKey;
|
|
54
|
+
prefix;
|
|
50
55
|
/**
|
|
51
56
|
* Creates an iterator graph.
|
|
52
57
|
*
|
|
53
58
|
* @param {T} schema - The base state schema
|
|
54
|
-
* @param {Prefix} prefix - Prefix for index and item keys
|
|
55
59
|
* @param {ArrayKeys<z.infer<T>>} iteratorKey - The state key containing the array to iterate
|
|
60
|
+
* @param {Prefix} [prefix] - Optional prefix for index and item keys. If not provided, uses iteratorKey
|
|
56
61
|
*/
|
|
57
|
-
constructor(schema,
|
|
62
|
+
constructor(schema,
|
|
58
63
|
// Disabled for now, until I can figure out a better approach for this
|
|
59
64
|
// private readonly iteratorSelector: (state: S | NS) => Item[],
|
|
60
|
-
iteratorKey) {
|
|
65
|
+
iteratorKey, prefix = iteratorKey) {
|
|
61
66
|
super(schema);
|
|
62
67
|
this.schema = schema;
|
|
63
|
-
this.prefix = prefix;
|
|
64
68
|
this.iteratorKey = iteratorKey;
|
|
69
|
+
this.prefix = prefix;
|
|
65
70
|
this.nodes[INCREMENT_INDEX_NODE] = new nodes_1.FunctionNode((_, context) => {
|
|
66
71
|
const indexContext = context.custom.indexCtx;
|
|
67
72
|
indexContext.currentNode = (Number(indexContext.currentNode) + 1).toString();
|
|
@@ -160,7 +165,7 @@ class Iterator extends graph_1.Graph {
|
|
|
160
165
|
* @returns {Promise<Partial<S>>} Final state with updated array
|
|
161
166
|
*/
|
|
162
167
|
async run(input, contextOrRuntime) {
|
|
163
|
-
let state =
|
|
168
|
+
let state = (0, util_1.cloneAware)(input);
|
|
164
169
|
if (this.nodes[ITERATOR_LOOP_NODE] === undefined) {
|
|
165
170
|
throw new Error(`Looped node is not set`);
|
|
166
171
|
}
|
|
@@ -177,7 +182,7 @@ class Iterator extends graph_1.Graph {
|
|
|
177
182
|
const result = await this.runInternal(state, context);
|
|
178
183
|
context.done();
|
|
179
184
|
indexContext.done();
|
|
180
|
-
return { ...result, [this.iteratorKey]:
|
|
185
|
+
return { ...result, [this.iteratorKey]: (0, util_1.cloneAware)(context.custom.arr) };
|
|
181
186
|
}
|
|
182
187
|
}
|
|
183
188
|
exports.Iterator = Iterator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../src/graphs/iterator.ts"],"names":[],"mappings":";;;AACA,oCAAkD;AAElD,mCAA4C;AAC5C,6BAAwB;AAmDxB;;GAEG;AACH,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAE3C;;GAEG;AACH,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAE/C
|
|
1
|
+
{"version":3,"file":"iterator.js","sourceRoot":"","sources":["../../src/graphs/iterator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphs/store/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./base-store"), exports);
|
|
18
|
+
__exportStar(require("./sqlite-store"), exports);
|
|
19
|
+
__exportStar(require("./stored-run"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphs/store/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,iDAA+B;AAC/B,+CAA6B"}
|
package/dist/graphs/types.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
interface EndResult<S> {
|
|
1
|
+
export interface EndResult<S> {
|
|
2
2
|
runId: string;
|
|
3
3
|
state: S;
|
|
4
4
|
exitReason: "end";
|
|
5
5
|
}
|
|
6
|
-
interface InterruptResult<S> {
|
|
6
|
+
export interface InterruptResult<S> {
|
|
7
7
|
runId: string;
|
|
8
8
|
state: S;
|
|
9
9
|
exitReason: "interrupt";
|
|
@@ -11,5 +11,4 @@ interface InterruptResult<S> {
|
|
|
11
11
|
cursor: string;
|
|
12
12
|
}
|
|
13
13
|
export type GraphResult<S> = EndResult<S> | InterruptResult<S>;
|
|
14
|
-
export {};
|
|
15
14
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/graphs/types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/graphs/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,UAAU,EAAE,KAAK,CAAC;CACrB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,UAAU,EAAE,WAAW,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./graphs"), exports);
|
|
18
|
+
__exportStar(require("./messages"), exports);
|
|
19
|
+
__exportStar(require("./models"), exports);
|
|
20
|
+
__exportStar(require("./nodes"), exports);
|
|
21
|
+
__exportStar(require("./tools"), exports);
|
|
22
|
+
__exportStar(require("./util"), exports);
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B;AAC3B,2CAAyB;AACzB,0CAAwB;AACxB,0CAAwB;AACxB,yCAAuB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as z from "zod";
|
|
2
2
|
import { AgentMessage, MessageContent, ModelMessages, SystemMessage, ToolRequest } from "../messages";
|
|
3
|
-
import { ToolDefinition } from "../tools";
|
|
3
|
+
import { ToolDefinition, ToolImplementation } from "../tools";
|
|
4
|
+
import { ReActAgent } from "./react-agent";
|
|
4
5
|
/**
|
|
5
6
|
* Configuration options for model initialization.
|
|
6
7
|
*
|
|
@@ -167,6 +168,7 @@ export declare abstract class BaseModel {
|
|
|
167
168
|
* ```
|
|
168
169
|
*/
|
|
169
170
|
invoke(messages: ModelMessages[], properties?: Record<string, any>): Promise<InvokeResponse>;
|
|
171
|
+
makeReActAgent(tools: ToolImplementation<any, any, any>[]): ReActAgent;
|
|
170
172
|
}
|
|
171
173
|
/**
|
|
172
174
|
* Error thrown when response is not structured output as expected.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseModel.d.ts","sourceRoot":"","sources":["../../src/models/BaseModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EACH,YAAY,EAEZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,WAAW,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseModel.d.ts","sourceRoot":"","sources":["../../src/models/BaseModel.ts"],"names":[],"mappings":"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"}
|
package/dist/models/BaseModel.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StructuredOutputWrapper = exports.ResponseNotStructuredOutputError = exports.BaseModel = exports.InvokeResponseStopReason = void 0;
|
|
4
4
|
const messages_1 = require("../messages");
|
|
5
|
+
const react_agent_1 = require("./react-agent");
|
|
5
6
|
/**
|
|
6
7
|
* Enum representing the reason why model generation stopped.
|
|
7
8
|
*
|
|
@@ -160,6 +161,10 @@ class BaseModel {
|
|
|
160
161
|
return message;
|
|
161
162
|
}));
|
|
162
163
|
}
|
|
164
|
+
makeReActAgent(tools) {
|
|
165
|
+
this.tools = [];
|
|
166
|
+
return new react_agent_1.ReActAgent(this, tools);
|
|
167
|
+
}
|
|
163
168
|
}
|
|
164
169
|
exports.BaseModel = BaseModel;
|
|
165
170
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../../src/models/BaseModel.ts"],"names":[],"mappings":";;;AACA,0CAOqB;
|
|
1
|
+
{"version":3,"file":"BaseModel.js","sourceRoot":"","sources":["../../src/models/BaseModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./BaseModel"), exports);
|
|
18
|
+
__exportStar(require("./BedrockModel"), exports);
|
|
19
|
+
__exportStar(require("./TestModel"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,iDAA+B;AAC/B,8CAA4B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ModelMessages } from "../messages";
|
|
2
|
+
import { ToolImplementation } from "../tools";
|
|
3
|
+
import { BaseModel } from "./BaseModel";
|
|
4
|
+
export declare class ReActAgent {
|
|
5
|
+
private readonly model;
|
|
6
|
+
private readonly tools;
|
|
7
|
+
invokeLoopLimit: number;
|
|
8
|
+
private readonly toolMap;
|
|
9
|
+
constructor(model: BaseModel, tools: ToolImplementation<any, any, any>[]);
|
|
10
|
+
invoke(messages: ModelMessages[], additionalArgs?: Record<string, any>): Promise<import("./BaseModel").InvokeResponse>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=react-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-agent.d.ts","sourceRoot":"","sources":["../../src/models/react-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6B,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,UAAU;IAIP,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAa,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHrE,eAAe,SAAM;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwD;gBAEnD,KAAK,EAAE,SAAS,EAAmB,KAAK,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IAOpG,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CA2B/E"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReActAgent = void 0;
|
|
4
|
+
const messages_1 = require("../messages");
|
|
5
|
+
const util_1 = require("../util");
|
|
6
|
+
class ReActAgent {
|
|
7
|
+
model;
|
|
8
|
+
tools;
|
|
9
|
+
invokeLoopLimit = 10;
|
|
10
|
+
toolMap = new Map();
|
|
11
|
+
constructor(model, tools) {
|
|
12
|
+
this.model = model;
|
|
13
|
+
this.tools = tools;
|
|
14
|
+
for (const tool of tools) {
|
|
15
|
+
this.toolMap.set(tool.name, tool);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
// starts from the provided messages, and keeps running the agent until the response doesn't include tool calls
|
|
19
|
+
async invoke(messages, additionalArgs) {
|
|
20
|
+
let allMessage = (0, util_1.cloneAware)(messages);
|
|
21
|
+
this.model.withTools(this.tools.map(tool => ({
|
|
22
|
+
name: tool.name,
|
|
23
|
+
description: tool.description,
|
|
24
|
+
schema: tool.schema,
|
|
25
|
+
})));
|
|
26
|
+
let loopCount = 0;
|
|
27
|
+
while (loopCount < this.invokeLoopLimit) {
|
|
28
|
+
++loopCount;
|
|
29
|
+
const response = await this.model.invoke(allMessage, additionalArgs);
|
|
30
|
+
const toolRequests = response.messages.filter(message => message instanceof messages_1.ToolRequest);
|
|
31
|
+
if (toolRequests.length === 0) {
|
|
32
|
+
return response;
|
|
33
|
+
}
|
|
34
|
+
allMessage = [...allMessage, ...response.messages];
|
|
35
|
+
for (const toolRequest of toolRequests) {
|
|
36
|
+
const tool = this.toolMap.get(toolRequest.toolName);
|
|
37
|
+
if (!tool) {
|
|
38
|
+
throw new Error(`Tool ${toolRequest.toolName} not found. This should not happen as all tools would be specified`);
|
|
39
|
+
}
|
|
40
|
+
const toolResponse = await tool.func(toolRequest.input, additionalArgs);
|
|
41
|
+
allMessage.push(new messages_1.ToolResponse(toolRequest.toolUseId, toolRequest.toolName, toolResponse));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
throw new Error("ReActAgent loop limit reached without agent resolution.");
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.ReActAgent = ReActAgent;
|
|
48
|
+
//# sourceMappingURL=react-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-agent.js","sourceRoot":"","sources":["../../src/models/react-agent.ts"],"names":[],"mappings":";;;AAAA,0CAAuE;AAEvE,kCAAqC;AAGrC,MAAa,UAAU;IAIU;IAAmC;IAHhE,eAAe,GAAG,EAAE,CAAC;IACJ,OAAO,GAAG,IAAI,GAAG,EAA6C,CAAC;IAEhF,YAA6B,KAAgB,EAAmB,KAA0C;QAA7E,UAAK,GAAL,KAAK,CAAW;QAAmB,UAAK,GAAL,KAAK,CAAqC;QACtG,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED,+GAA+G;IAC/G,KAAK,CAAC,MAAM,CAAC,QAAyB,EAAE,cAAoC;QACxE,IAAI,UAAU,GAAoB,IAAA,iBAAU,EAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAC,CAAC,CAAC;QACL,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,OAAO,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,EAAE,SAAS,CAAC;YACZ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YACrE,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,YAAY,sBAAW,CAAC,CAAC;YACzF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,QAAQ,CAAC;YACpB,CAAC;YACD,UAAU,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAoB,CAAC;YACtE,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACpD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACR,MAAM,IAAI,KAAK,CAAC,QAAQ,WAAW,CAAC,QAAQ,oEAAoE,CAAC,CAAC;gBACtH,CAAC;gBACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;gBACxE,UAAU,CAAC,IAAI,CAAC,IAAI,uBAAY,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YACjG,CAAC;QACL,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC/E,CAAC;CACJ;AAtCD,gCAsCC"}
|
package/dist/nodes/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
1
|
+
export * from "./function-node";
|
|
2
|
+
export * from "./interrupt-node";
|
|
3
|
+
export * from "./model-node";
|
|
4
|
+
export * from "./types";
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nodes/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nodes/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
|
package/dist/nodes/index.js
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var interrupt_node_1 = require("./interrupt-node");
|
|
8
|
-
Object.defineProperty(exports, "InterruptNode", { enumerable: true, get: function () { return interrupt_node_1.InterruptNode; } });
|
|
17
|
+
__exportStar(require("./function-node"), exports);
|
|
18
|
+
__exportStar(require("./interrupt-node"), exports);
|
|
19
|
+
__exportStar(require("./model-node"), exports);
|
|
20
|
+
__exportStar(require("./types"), exports);
|
|
9
21
|
//# sourceMappingURL=index.js.map
|
package/dist/nodes/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nodes/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/nodes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,mDAAiC;AACjC,+CAA6B;AAC7B,0CAAwB"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -37,18 +37,20 @@ export declare function defineTool<T>(name: string, description: string, schema:
|
|
|
37
37
|
*
|
|
38
38
|
* @template T - The input type for the tool
|
|
39
39
|
* @template K - The output type returned by the tool function
|
|
40
|
+
* @template A - The additional arguments type
|
|
40
41
|
*/
|
|
41
|
-
interface ToolImplementation<T, K
|
|
42
|
-
func: (input: T) => K | Promise<K>;
|
|
42
|
+
export interface ToolImplementation<T, K, A extends Record<string, any>> extends ToolDefinition<T> {
|
|
43
|
+
func: (input: T, additionalArgs?: A) => K | Promise<K>;
|
|
43
44
|
}
|
|
44
45
|
/**
|
|
45
46
|
* Creates a complete tool implementation by combining a tool definition with its function.
|
|
46
47
|
*
|
|
47
48
|
* @template T - The input parameter type
|
|
48
49
|
* @template K - The return type of the tool function
|
|
50
|
+
* @template A - The additional arguments type
|
|
49
51
|
* @param {ToolDefinition<T>} toolDefinition - The tool definition created with defineTool()
|
|
50
|
-
* @param {(input: T) => K | Promise<K>} func - The function that implements the tool's behavior
|
|
51
|
-
* @returns {ToolImplementation<T, K>} A complete tool with both definition and implementation
|
|
52
|
+
* @param {(input: T, additionalArgs?: Record<string, any>) => K | Promise<K>} func - The function that implements the tool's behavior
|
|
53
|
+
* @returns {ToolImplementation<T, K, A>} A complete tool with both definition and implementation
|
|
52
54
|
*
|
|
53
55
|
* @example
|
|
54
56
|
* ```typescript
|
|
@@ -60,6 +62,5 @@ interface ToolImplementation<T, K> extends ToolDefinition<T> {
|
|
|
60
62
|
* );
|
|
61
63
|
* ```
|
|
62
64
|
*/
|
|
63
|
-
export declare function tool<T, K
|
|
64
|
-
export {};
|
|
65
|
+
export declare function tool<T, K, A extends Record<string, any>>(toolDefinition: ToolDefinition<T>, func: (input: T, additionalArgs?: A) => K | Promise<K>): ToolImplementation<T, K, A>;
|
|
65
66
|
//# sourceMappingURL=tools.d.ts.map
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,MAAM;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GACvB,cAAc,CAAC,CAAC,CAAC,CAMnB;AAED
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,MAAM;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GACvB,cAAc,CAAC,CAAC,CAAC,CAMnB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAC9F,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC1D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpD,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,EACjC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACvD,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAK7B"}
|