@falai/agent 0.1.2 → 0.1.3
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/dist/core/Agent.d.ts +2 -2
- package/dist/core/Agent.d.ts.map +1 -1
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/Observation.d.ts +1 -1
- package/dist/core/Observation.d.ts.map +1 -1
- package/dist/core/Observation.js +1 -0
- package/dist/core/Observation.js.map +1 -1
- package/dist/core/Route.d.ts +4 -4
- package/dist/core/Route.d.ts.map +1 -1
- package/dist/core/Route.js.map +1 -1
- package/dist/core/State.d.ts +3 -3
- package/dist/core/State.d.ts.map +1 -1
- package/dist/core/State.js.map +1 -1
- package/dist/core/Transition.d.ts +5 -5
- package/dist/core/Transition.d.ts.map +1 -1
- package/dist/core/Transition.js.map +1 -1
- package/dist/types/route.d.ts +4 -4
- package/dist/types/route.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/Agent.ts +5 -5
- package/src/core/Observation.ts +2 -1
- package/src/core/Route.ts +7 -7
- package/src/core/State.ts +21 -14
- package/src/core/Transition.ts +5 -5
- package/src/types/route.ts +6 -5
package/dist/core/Agent.d.ts
CHANGED
|
@@ -38,7 +38,7 @@ export declare class Agent<TContext = unknown> {
|
|
|
38
38
|
/**
|
|
39
39
|
* Create a new route (journey)
|
|
40
40
|
*/
|
|
41
|
-
createRoute(options: RouteOptions): Route
|
|
41
|
+
createRoute(options: RouteOptions): Route<TContext>;
|
|
42
42
|
/**
|
|
43
43
|
* Create a domain term for the glossary
|
|
44
44
|
*/
|
|
@@ -85,7 +85,7 @@ export declare class Agent<TContext = unknown> {
|
|
|
85
85
|
/**
|
|
86
86
|
* Get all routes
|
|
87
87
|
*/
|
|
88
|
-
getRoutes(): Route[];
|
|
88
|
+
getRoutes(): Route<TContext>[];
|
|
89
89
|
/**
|
|
90
90
|
* Get all terms
|
|
91
91
|
*/
|
package/dist/core/Agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EAET,UAAU,EACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,qBAAa,KAAK,CAAC,QAAQ,GAAG,OAAO;IAavB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZpC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,MAAM,OAAO,KAAK;IAaa;IAZrB,KAAK,GAAW,EAAE,CAAC;IACnB,UAAU,GAAgB,EAAE,CAAC;IAC7B,YAAY,GAAiB,EAAE,CAAC;IAChC,MAAM,
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ export declare class Observation implements IObservation {
|
|
|
15
15
|
/**
|
|
16
16
|
* Set routes that this observation can disambiguate between
|
|
17
17
|
*/
|
|
18
|
-
disambiguate(routes: (Route | RouteRef)[]): this;
|
|
18
|
+
disambiguate(routes: (Route<any> | RouteRef)[]): this;
|
|
19
19
|
/**
|
|
20
20
|
* Get the routes this observation disambiguates
|
|
21
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Observation.d.ts","sourceRoot":"","sources":["../../src/core/Observation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,WAAW,IAAI,YAAY,EAC3B,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,WAAW,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,QAAQ,EAAE,CAAM;gBAEnB,OAAO,EAAE,kBAAkB;IAKvC;;OAEG;
|
|
1
|
+
{"version":3,"file":"Observation.d.ts","sourceRoot":"","sources":["../../src/core/Observation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,WAAW,IAAI,YAAY,EAC3B,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC9C,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,WAAW,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,QAAQ,EAAE,CAAM;gBAEnB,OAAO,EAAE,kBAAkB;IAKvC;;OAEG;IAEH,YAAY,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,EAAE,GAAG,IAAI;IAUrD;;OAEG;IACH,SAAS,IAAI,QAAQ,EAAE;CAGxB"}
|
package/dist/core/Observation.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Observation.js","sourceRoot":"","sources":["../../src/core/Observation.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAE7B;;GAEG;AACH,MAAM,OAAO,WAAW;IACN,EAAE,CAAS;IACX,WAAW,CAAS;IAC7B,MAAM,GAAe,EAAE,CAAC;IAE/B,YAAY,OAA2B;QACrC,IAAI,CAAC,EAAE,GAAG,eAAe,EAAE,oBAAoB,EAAE,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"Observation.js","sourceRoot":"","sources":["../../src/core/Observation.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAE7B;;GAEG;AACH,MAAM,OAAO,WAAW;IACN,EAAE,CAAS;IACX,WAAW,CAAS;IAC7B,MAAM,GAAe,EAAE,CAAC;IAE/B,YAAY,OAA2B;QACrC,IAAI,CAAC,EAAE,GAAG,eAAe,EAAE,oBAAoB,EAAE,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,8DAA8D;IAC9D,YAAY,CAAC,MAAiC;QAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;gBAClB,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;YACpB,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;CACF"}
|
package/dist/core/Route.d.ts
CHANGED
|
@@ -7,12 +7,12 @@ import { State } from "./State";
|
|
|
7
7
|
/**
|
|
8
8
|
* Represents a conversational route/journey
|
|
9
9
|
*/
|
|
10
|
-
export declare class Route {
|
|
10
|
+
export declare class Route<TContext = unknown> {
|
|
11
11
|
readonly id: string;
|
|
12
12
|
readonly title: string;
|
|
13
13
|
readonly description?: string;
|
|
14
14
|
readonly conditions: string[];
|
|
15
|
-
readonly initialState: State
|
|
15
|
+
readonly initialState: State<TContext>;
|
|
16
16
|
private guidelines;
|
|
17
17
|
constructor(options: RouteOptions);
|
|
18
18
|
/**
|
|
@@ -32,12 +32,12 @@ export declare class Route {
|
|
|
32
32
|
* Useful for disambiguation
|
|
33
33
|
*/
|
|
34
34
|
toRef(): RouteRef & {
|
|
35
|
-
route: Route
|
|
35
|
+
route: Route<TContext>;
|
|
36
36
|
};
|
|
37
37
|
/**
|
|
38
38
|
* Get all states in this route (via traversal from initial state)
|
|
39
39
|
*/
|
|
40
|
-
getAllStates(): State[];
|
|
40
|
+
getAllStates(): State<TContext>[];
|
|
41
41
|
/**
|
|
42
42
|
* Get a description of the route structure for debugging
|
|
43
43
|
*/
|
package/dist/core/Route.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/core/Route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIhC;;GAEG;AACH,qBAAa,KAAK;
|
|
1
|
+
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/core/Route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIhC;;GAEG;AACH,qBAAa,KAAK,CAAC,QAAQ,GAAG,OAAO;IACnC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,SAAgB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrC,SAAgB,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9C,OAAO,CAAC,UAAU,CAAmB;gBAEzB,OAAO,EAAE,YAAY;IAiBjC;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAS3C;;OAEG;IACH,aAAa,IAAI,SAAS,EAAE;IAI5B;;OAEG;IACH,MAAM,IAAI,QAAQ;IAMlB;;;OAGG;IACH,KAAK,IAAI,QAAQ,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;KAAE;IAO9C;;OAEG;IACH,YAAY,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;IA2BjC;;OAEG;IACH,QAAQ,IAAI,MAAM;CAwBnB"}
|
package/dist/core/Route.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Route.js","sourceRoot":"","sources":["../../src/core/Route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB;;GAEG;AACH,MAAM,OAAO,KAAK;IACA,EAAE,CAAS;IACX,KAAK,CAAS;IACd,WAAW,CAAU;IACrB,UAAU,CAAW;IACrB,YAAY,
|
|
1
|
+
{"version":3,"file":"Route.js","sourceRoot":"","sources":["../../src/core/Route.ts"],"names":[],"mappings":"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"}
|
package/dist/core/State.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { Transition } from "./Transition";
|
|
|
7
7
|
/**
|
|
8
8
|
* Represents a state within a route
|
|
9
9
|
*/
|
|
10
|
-
export declare class State {
|
|
10
|
+
export declare class State<TContext = unknown> {
|
|
11
11
|
readonly routeId: string;
|
|
12
12
|
readonly description?: string | undefined;
|
|
13
13
|
readonly id: string;
|
|
@@ -21,7 +21,7 @@ export declare class State {
|
|
|
21
21
|
* @param condition - Optional condition for this transition
|
|
22
22
|
* @returns Object with target state that supports chaining
|
|
23
23
|
*/
|
|
24
|
-
transitionTo(spec: TransitionSpec
|
|
24
|
+
transitionTo(spec: TransitionSpec<TContext>, condition?: string): TransitionResult<TContext>;
|
|
25
25
|
/**
|
|
26
26
|
* Add a guideline specific to this state
|
|
27
27
|
*/
|
|
@@ -33,7 +33,7 @@ export declare class State {
|
|
|
33
33
|
/**
|
|
34
34
|
* Get all transitions from this state
|
|
35
35
|
*/
|
|
36
|
-
getTransitions(): Transition[];
|
|
36
|
+
getTransitions(): Transition<TContext>[];
|
|
37
37
|
/**
|
|
38
38
|
* Get state reference
|
|
39
39
|
*/
|
package/dist/core/State.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../src/core/State.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C;;GAEG;AACH,qBAAa,KAAK;
|
|
1
|
+
{"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../src/core/State.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C;;GAEG;AACH,qBAAa,KAAK,CAAC,QAAQ,GAAG,OAAO;aAMjB,OAAO,EAAE,MAAM;aACf,WAAW,CAAC,EAAE,MAAM;IANtC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,UAAU,CAAmB;gBAGnB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,YAAA;IAKtC;;;;;;OAMG;IACH,YAAY,CACV,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC9B,SAAS,CAAC,EAAE,MAAM,GACjB,gBAAgB,CAAC,QAAQ,CAAC;IAiD7B;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC;;OAEG;IACH,aAAa,IAAI,SAAS,EAAE;IAI5B;;OAEG;IACH,cAAc,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;IAIxC;;OAEG;IACH,MAAM,IAAI,QAAQ;IAOlB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAkBpC;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAkB1B"}
|
package/dist/core/State.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"State.js","sourceRoot":"","sources":["../../src/core/State.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB;;GAEG;AACH,MAAM,OAAO,KAAK;IAME;IACA;IANF,EAAE,CAAS;IACnB,WAAW,
|
|
1
|
+
{"version":3,"file":"State.js","sourceRoot":"","sources":["../../src/core/State.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,20 +6,20 @@ import type { State } from "./State";
|
|
|
6
6
|
/**
|
|
7
7
|
* Represents a transition from one state to another
|
|
8
8
|
*/
|
|
9
|
-
export declare class Transition {
|
|
9
|
+
export declare class Transition<TContext = unknown> {
|
|
10
10
|
readonly source: StateRef;
|
|
11
|
-
readonly spec: TransitionSpec
|
|
11
|
+
readonly spec: TransitionSpec<TContext>;
|
|
12
12
|
readonly condition?: string | undefined;
|
|
13
13
|
private target?;
|
|
14
|
-
constructor(source: StateRef, spec: TransitionSpec
|
|
14
|
+
constructor(source: StateRef, spec: TransitionSpec<TContext>, condition?: string | undefined);
|
|
15
15
|
/**
|
|
16
16
|
* Set the target state for this transition
|
|
17
17
|
*/
|
|
18
|
-
setTarget(state: State): void;
|
|
18
|
+
setTarget(state: State<TContext>): void;
|
|
19
19
|
/**
|
|
20
20
|
* Get the target state
|
|
21
21
|
*/
|
|
22
|
-
getTarget(): State | undefined;
|
|
22
|
+
getTarget(): State<TContext> | undefined;
|
|
23
23
|
/**
|
|
24
24
|
* Check if this transition has a condition
|
|
25
25
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transition.d.ts","sourceRoot":"","sources":["../../src/core/Transition.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,qBAAa,UAAU;
|
|
1
|
+
{"version":3,"file":"Transition.d.ts","sourceRoot":"","sources":["../../src/core/Transition.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,qBAAa,UAAU,CAAC,QAAQ,GAAG,OAAO;aAItB,MAAM,EAAE,QAAQ;aAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC;aAC9B,SAAS,CAAC,EAAE,MAAM;IALpC,OAAO,CAAC,MAAM,CAAC,CAAkB;gBAGf,MAAM,EAAE,QAAQ,EAChB,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC9B,SAAS,CAAC,EAAE,MAAM,YAAA;IAGpC;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI;IAIvC;;OAEG;IACH,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,SAAS;IAIxC;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,QAAQ,IAAI,MAAM;CAsBnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transition.js","sourceRoot":"","sources":["../../src/core/Transition.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,MAAM,OAAO,UAAU;IAIH;IACA;IACA;IALV,MAAM,
|
|
1
|
+
{"version":3,"file":"Transition.js","sourceRoot":"","sources":["../../src/core/Transition.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,MAAM,OAAO,UAAU;IAIH;IACA;IACA;IALV,MAAM,CAAmB;IAEjC,YACkB,MAAgB,EAChB,IAA8B,EAC9B,SAAkB;QAFlB,WAAM,GAAN,MAAM,CAAU;QAChB,SAAI,GAAJ,IAAI,CAA0B;QAC9B,cAAS,GAAT,SAAS,CAAS;IACjC,CAAC;IAEJ;;OAEG;IACH,SAAS,CAAC,KAAsB;QAC9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACpB,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACxC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAEzE,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,UAAU,IAAI,aAAa,EAAE,CAAC;IAChE,CAAC;CACF"}
|
package/dist/types/route.d.ts
CHANGED
|
@@ -38,22 +38,22 @@ export interface RouteOptions {
|
|
|
38
38
|
/**
|
|
39
39
|
* Specification for a state transition
|
|
40
40
|
*/
|
|
41
|
-
export interface TransitionSpec {
|
|
41
|
+
export interface TransitionSpec<TContext = unknown> {
|
|
42
42
|
/** Transition to a chat state with this description */
|
|
43
43
|
chatState?: string;
|
|
44
44
|
/** Transition to execute a tool */
|
|
45
|
-
toolState?: ToolRef<
|
|
45
|
+
toolState?: ToolRef<TContext, any[], any>;
|
|
46
46
|
/** Transition to a specific state or end marker */
|
|
47
47
|
state?: StateRef | symbol;
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* Result of a transition operation
|
|
51
51
|
*/
|
|
52
|
-
export interface TransitionResult {
|
|
52
|
+
export interface TransitionResult<TContext = unknown> {
|
|
53
53
|
/** The target state after transition */
|
|
54
54
|
target: StateRef & {
|
|
55
55
|
/** Allow chaining transitions */
|
|
56
|
-
transitionTo: (spec: TransitionSpec
|
|
56
|
+
transitionTo: (spec: TransitionSpec<TContext>, condition?: string) => TransitionResult<TContext>;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
//# sourceMappingURL=route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/types/route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,wCAAwC;IACxC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../src/types/route.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,wCAAwC;IACxC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,QAAQ,GAAG,OAAO;IAChD,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mCAAmC;IAEnC,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1C,mDAAmD;IACnD,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,QAAQ,GAAG,OAAO;IAClD,wCAAwC;IACxC,MAAM,EAAE,QAAQ,GAAG;QACjB,iCAAiC;QACjC,YAAY,EAAE,CACZ,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC9B,SAAS,CAAC,EAAE,MAAM,KACf,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KACjC,CAAC;CACH"}
|
package/package.json
CHANGED
package/src/core/Agent.ts
CHANGED
|
@@ -24,7 +24,7 @@ export class Agent<TContext = unknown> {
|
|
|
24
24
|
private terms: Term[] = [];
|
|
25
25
|
private guidelines: Guideline[] = [];
|
|
26
26
|
private capabilities: Capability[] = [];
|
|
27
|
-
private routes: Route[] = [];
|
|
27
|
+
private routes: Route<TContext>[] = [];
|
|
28
28
|
private observations: Observation[] = [];
|
|
29
29
|
private domainRegistry = new DomainRegistry();
|
|
30
30
|
|
|
@@ -73,7 +73,7 @@ export class Agent<TContext = unknown> {
|
|
|
73
73
|
// Try to find route by ID or title
|
|
74
74
|
return this.routes.find((r) => r.id === ref || r.title === ref);
|
|
75
75
|
})
|
|
76
|
-
.filter((r): r is Route => r !== undefined);
|
|
76
|
+
.filter((r): r is Route<TContext> => r !== undefined);
|
|
77
77
|
|
|
78
78
|
if (resolvedRoutes.length > 0) {
|
|
79
79
|
obs.disambiguate(resolvedRoutes);
|
|
@@ -107,8 +107,8 @@ export class Agent<TContext = unknown> {
|
|
|
107
107
|
/**
|
|
108
108
|
* Create a new route (journey)
|
|
109
109
|
*/
|
|
110
|
-
createRoute(options: RouteOptions): Route {
|
|
111
|
-
const route = new Route(options);
|
|
110
|
+
createRoute(options: RouteOptions): Route<TContext> {
|
|
111
|
+
const route = new Route<TContext>(options);
|
|
112
112
|
this.routes.push(route);
|
|
113
113
|
return route;
|
|
114
114
|
}
|
|
@@ -322,7 +322,7 @@ export class Agent<TContext = unknown> {
|
|
|
322
322
|
/**
|
|
323
323
|
* Get all routes
|
|
324
324
|
*/
|
|
325
|
-
getRoutes(): Route[] {
|
|
325
|
+
getRoutes(): Route<TContext>[] {
|
|
326
326
|
return [...this.routes];
|
|
327
327
|
}
|
|
328
328
|
|
package/src/core/Observation.ts
CHANGED
|
@@ -27,7 +27,8 @@ export class Observation implements IObservation {
|
|
|
27
27
|
/**
|
|
28
28
|
* Set routes that this observation can disambiguate between
|
|
29
29
|
*/
|
|
30
|
-
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
+
disambiguate(routes: (Route<any> | RouteRef)[]): this {
|
|
31
32
|
this.routes = routes.map((r) => {
|
|
32
33
|
if ("getRef" in r) {
|
|
33
34
|
return r.getRef();
|
package/src/core/Route.ts
CHANGED
|
@@ -12,12 +12,12 @@ let routeIdCounter = 0;
|
|
|
12
12
|
/**
|
|
13
13
|
* Represents a conversational route/journey
|
|
14
14
|
*/
|
|
15
|
-
export class Route {
|
|
15
|
+
export class Route<TContext = unknown> {
|
|
16
16
|
public readonly id: string;
|
|
17
17
|
public readonly title: string;
|
|
18
18
|
public readonly description?: string;
|
|
19
19
|
public readonly conditions: string[];
|
|
20
|
-
public readonly initialState: State
|
|
20
|
+
public readonly initialState: State<TContext>;
|
|
21
21
|
private guidelines: Guideline[] = [];
|
|
22
22
|
|
|
23
23
|
constructor(options: RouteOptions) {
|
|
@@ -27,7 +27,7 @@ export class Route {
|
|
|
27
27
|
this.title = options.title;
|
|
28
28
|
this.description = options.description;
|
|
29
29
|
this.conditions = options.conditions || [];
|
|
30
|
-
this.initialState = new State(this.id, "Initial state");
|
|
30
|
+
this.initialState = new State<TContext>(this.id, "Initial state");
|
|
31
31
|
|
|
32
32
|
// Initialize guidelines from options
|
|
33
33
|
if (options.guidelines) {
|
|
@@ -69,7 +69,7 @@ export class Route {
|
|
|
69
69
|
* Create a route reference that includes this route instance
|
|
70
70
|
* Useful for disambiguation
|
|
71
71
|
*/
|
|
72
|
-
toRef(): RouteRef & { route: Route } {
|
|
72
|
+
toRef(): RouteRef & { route: Route<TContext> } {
|
|
73
73
|
return {
|
|
74
74
|
id: this.id,
|
|
75
75
|
route: this,
|
|
@@ -79,10 +79,10 @@ export class Route {
|
|
|
79
79
|
/**
|
|
80
80
|
* Get all states in this route (via traversal from initial state)
|
|
81
81
|
*/
|
|
82
|
-
getAllStates(): State[] {
|
|
82
|
+
getAllStates(): State<TContext>[] {
|
|
83
83
|
const visited = new Set<string>();
|
|
84
|
-
const states: State[] = [];
|
|
85
|
-
const queue: State[] = [this.initialState];
|
|
84
|
+
const states: State<TContext>[] = [];
|
|
85
|
+
const queue: State<TContext>[] = [this.initialState];
|
|
86
86
|
|
|
87
87
|
while (queue.length > 0) {
|
|
88
88
|
const current = queue.shift()!;
|
package/src/core/State.ts
CHANGED
|
@@ -17,9 +17,9 @@ let stateIdCounter = 0;
|
|
|
17
17
|
/**
|
|
18
18
|
* Represents a state within a route
|
|
19
19
|
*/
|
|
20
|
-
export class State {
|
|
20
|
+
export class State<TContext = unknown> {
|
|
21
21
|
public readonly id: string;
|
|
22
|
-
private transitions: Transition[] = [];
|
|
22
|
+
private transitions: Transition<TContext>[] = [];
|
|
23
23
|
private guidelines: Guideline[] = [];
|
|
24
24
|
|
|
25
25
|
constructor(
|
|
@@ -36,14 +36,17 @@ export class State {
|
|
|
36
36
|
* @param condition - Optional condition for this transition
|
|
37
37
|
* @returns Object with target state that supports chaining
|
|
38
38
|
*/
|
|
39
|
-
transitionTo(
|
|
39
|
+
transitionTo(
|
|
40
|
+
spec: TransitionSpec<TContext>,
|
|
41
|
+
condition?: string
|
|
42
|
+
): TransitionResult<TContext> {
|
|
40
43
|
// Handle END_ROUTE
|
|
41
44
|
if (
|
|
42
45
|
spec.state &&
|
|
43
46
|
typeof spec.state === "symbol" &&
|
|
44
47
|
spec.state === END_ROUTE
|
|
45
48
|
) {
|
|
46
|
-
const endTransition = new Transition(
|
|
49
|
+
const endTransition = new Transition<TContext>(
|
|
47
50
|
this.getRef(),
|
|
48
51
|
{ state: END_ROUTE },
|
|
49
52
|
condition
|
|
@@ -58,7 +61,11 @@ export class State {
|
|
|
58
61
|
|
|
59
62
|
// Handle direct state reference
|
|
60
63
|
if (spec.state && typeof spec.state !== "symbol") {
|
|
61
|
-
const transition = new Transition(
|
|
64
|
+
const transition = new Transition<TContext>(
|
|
65
|
+
this.getRef(),
|
|
66
|
+
spec,
|
|
67
|
+
condition
|
|
68
|
+
);
|
|
62
69
|
this.transitions.push(transition);
|
|
63
70
|
|
|
64
71
|
return {
|
|
@@ -67,8 +74,8 @@ export class State {
|
|
|
67
74
|
}
|
|
68
75
|
|
|
69
76
|
// Create new target state for chatState or toolState
|
|
70
|
-
const targetState = new State(this.routeId, spec.chatState);
|
|
71
|
-
const transition = new Transition(this.getRef(), spec, condition);
|
|
77
|
+
const targetState = new State<TContext>(this.routeId, spec.chatState);
|
|
78
|
+
const transition = new Transition<TContext>(this.getRef(), spec, condition);
|
|
72
79
|
transition.setTarget(targetState);
|
|
73
80
|
|
|
74
81
|
this.transitions.push(transition);
|
|
@@ -98,7 +105,7 @@ export class State {
|
|
|
98
105
|
/**
|
|
99
106
|
* Get all transitions from this state
|
|
100
107
|
*/
|
|
101
|
-
getTransitions(): Transition[] {
|
|
108
|
+
getTransitions(): Transition<TContext>[] {
|
|
102
109
|
return [...this.transitions];
|
|
103
110
|
}
|
|
104
111
|
|
|
@@ -117,18 +124,18 @@ export class State {
|
|
|
117
124
|
*/
|
|
118
125
|
private createStateRefWithTransition(
|
|
119
126
|
ref: StateRef,
|
|
120
|
-
state?: State
|
|
127
|
+
state?: State<TContext>
|
|
121
128
|
): StateRef & {
|
|
122
129
|
transitionTo: (
|
|
123
|
-
spec: TransitionSpec
|
|
130
|
+
spec: TransitionSpec<TContext>,
|
|
124
131
|
condition?: string
|
|
125
|
-
) => TransitionResult
|
|
132
|
+
) => TransitionResult<TContext>;
|
|
126
133
|
} {
|
|
127
134
|
const stateInstance = state || this;
|
|
128
135
|
|
|
129
136
|
return {
|
|
130
137
|
...ref,
|
|
131
|
-
transitionTo: (spec: TransitionSpec
|
|
138
|
+
transitionTo: (spec: TransitionSpec<TContext>, condition?: string) =>
|
|
132
139
|
stateInstance.transitionTo(spec, condition),
|
|
133
140
|
};
|
|
134
141
|
}
|
|
@@ -138,9 +145,9 @@ export class State {
|
|
|
138
145
|
*/
|
|
139
146
|
private createTerminalRef(): StateRef & {
|
|
140
147
|
transitionTo: (
|
|
141
|
-
spec: TransitionSpec
|
|
148
|
+
spec: TransitionSpec<TContext>,
|
|
142
149
|
condition?: string
|
|
143
|
-
) => TransitionResult
|
|
150
|
+
) => TransitionResult<TContext>;
|
|
144
151
|
} {
|
|
145
152
|
const terminalRef: StateRef = {
|
|
146
153
|
id: "END",
|
package/src/core/Transition.ts
CHANGED
|
@@ -8,26 +8,26 @@ import type { State } from "./State";
|
|
|
8
8
|
/**
|
|
9
9
|
* Represents a transition from one state to another
|
|
10
10
|
*/
|
|
11
|
-
export class Transition {
|
|
12
|
-
private target?: State
|
|
11
|
+
export class Transition<TContext = unknown> {
|
|
12
|
+
private target?: State<TContext>;
|
|
13
13
|
|
|
14
14
|
constructor(
|
|
15
15
|
public readonly source: StateRef,
|
|
16
|
-
public readonly spec: TransitionSpec
|
|
16
|
+
public readonly spec: TransitionSpec<TContext>,
|
|
17
17
|
public readonly condition?: string
|
|
18
18
|
) {}
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Set the target state for this transition
|
|
22
22
|
*/
|
|
23
|
-
setTarget(state: State): void {
|
|
23
|
+
setTarget(state: State<TContext>): void {
|
|
24
24
|
this.target = state;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* Get the target state
|
|
29
29
|
*/
|
|
30
|
-
getTarget(): State | undefined {
|
|
30
|
+
getTarget(): State<TContext> | undefined {
|
|
31
31
|
return this.target;
|
|
32
32
|
}
|
|
33
33
|
|
package/src/types/route.ts
CHANGED
|
@@ -44,11 +44,12 @@ export interface RouteOptions {
|
|
|
44
44
|
/**
|
|
45
45
|
* Specification for a state transition
|
|
46
46
|
*/
|
|
47
|
-
export interface TransitionSpec {
|
|
47
|
+
export interface TransitionSpec<TContext = unknown> {
|
|
48
48
|
/** Transition to a chat state with this description */
|
|
49
49
|
chatState?: string;
|
|
50
50
|
/** Transition to execute a tool */
|
|
51
|
-
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
52
|
+
toolState?: ToolRef<TContext, any[], any>;
|
|
52
53
|
/** Transition to a specific state or end marker */
|
|
53
54
|
state?: StateRef | symbol;
|
|
54
55
|
}
|
|
@@ -56,13 +57,13 @@ export interface TransitionSpec {
|
|
|
56
57
|
/**
|
|
57
58
|
* Result of a transition operation
|
|
58
59
|
*/
|
|
59
|
-
export interface TransitionResult {
|
|
60
|
+
export interface TransitionResult<TContext = unknown> {
|
|
60
61
|
/** The target state after transition */
|
|
61
62
|
target: StateRef & {
|
|
62
63
|
/** Allow chaining transitions */
|
|
63
64
|
transitionTo: (
|
|
64
|
-
spec: TransitionSpec
|
|
65
|
+
spec: TransitionSpec<TContext>,
|
|
65
66
|
condition?: string
|
|
66
|
-
) => TransitionResult
|
|
67
|
+
) => TransitionResult<TContext>;
|
|
67
68
|
};
|
|
68
69
|
}
|