@framers/agentos 0.1.83 → 0.1.85
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/orchestration/builders/VoiceNodeBuilder.d.ts +116 -0
- package/dist/orchestration/builders/VoiceNodeBuilder.d.ts.map +1 -0
- package/dist/orchestration/builders/VoiceNodeBuilder.js +140 -0
- package/dist/orchestration/builders/VoiceNodeBuilder.js.map +1 -0
- package/dist/orchestration/builders/WorkflowBuilder.d.ts +40 -1
- package/dist/orchestration/builders/WorkflowBuilder.d.ts.map +1 -1
- package/dist/orchestration/builders/WorkflowBuilder.js +47 -0
- package/dist/orchestration/builders/WorkflowBuilder.js.map +1 -1
- package/dist/orchestration/events/GraphEvent.d.ts +39 -0
- package/dist/orchestration/events/GraphEvent.d.ts.map +1 -1
- package/dist/orchestration/events/GraphEvent.js.map +1 -1
- package/dist/orchestration/ir/types.d.ts +34 -1
- package/dist/orchestration/ir/types.d.ts.map +1 -1
- package/dist/orchestration/runtime/NodeExecutor.d.ts +6 -0
- package/dist/orchestration/runtime/NodeExecutor.d.ts.map +1 -1
- package/dist/orchestration/runtime/NodeExecutor.js +5 -0
- package/dist/orchestration/runtime/NodeExecutor.js.map +1 -1
- package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts +105 -0
- package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts.map +1 -0
- package/dist/orchestration/runtime/VoiceNodeExecutor.js +232 -0
- package/dist/orchestration/runtime/VoiceNodeExecutor.js.map +1 -0
- package/dist/orchestration/runtime/VoiceTransportAdapter.d.ts +157 -0
- package/dist/orchestration/runtime/VoiceTransportAdapter.d.ts.map +1 -0
- package/dist/orchestration/runtime/VoiceTransportAdapter.js +193 -0
- package/dist/orchestration/runtime/VoiceTransportAdapter.js.map +1 -0
- package/dist/orchestration/runtime/VoiceTurnCollector.d.ts +95 -0
- package/dist/orchestration/runtime/VoiceTurnCollector.d.ts.map +1 -0
- package/dist/orchestration/runtime/VoiceTurnCollector.js +148 -0
- package/dist/orchestration/runtime/VoiceTurnCollector.js.map +1 -0
- package/dist/voice-pipeline/VoiceInterruptError.d.ts +52 -0
- package/dist/voice-pipeline/VoiceInterruptError.d.ts.map +1 -0
- package/dist/voice-pipeline/VoiceInterruptError.js +43 -0
- package/dist/voice-pipeline/VoiceInterruptError.js.map +1 -0
- package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts +44 -1
- package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts.map +1 -1
- package/dist/voice-pipeline/VoicePipelineOrchestrator.js +63 -0
- package/dist/voice-pipeline/VoicePipelineOrchestrator.js.map +1 -1
- package/dist/voice-pipeline/index.d.ts +1 -0
- package/dist/voice-pipeline/index.d.ts.map +1 -1
- package/dist/voice-pipeline/index.js +1 -0
- package/dist/voice-pipeline/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file VoiceNodeBuilder.ts
|
|
3
|
+
* @description DSL builder for voice pipeline graph nodes.
|
|
4
|
+
*
|
|
5
|
+
* `voiceNode()` is the fluent factory for creating `GraphNode` IR entries of
|
|
6
|
+
* type `'voice'`. It mirrors the ergonomics of `gmiNode()` / `toolNode()` but
|
|
7
|
+
* targets the voice executor path, letting authors configure STT/TTS overrides,
|
|
8
|
+
* turn limits, barge-in behaviour, and exit-reason routing in a single
|
|
9
|
+
* declarative chain.
|
|
10
|
+
*
|
|
11
|
+
* Exit-reason routing is the key concept: voice nodes complete with a reason
|
|
12
|
+
* string (e.g. `'completed'`, `'interrupted'`, `'hangup'`), and `on()` maps
|
|
13
|
+
* each reason to the next node id. These mappings are stored in `edges` on the
|
|
14
|
+
* returned `GraphNode` and are intended to be expanded by the compiler into
|
|
15
|
+
* `GraphEdge` objects during lowering.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* voiceNode('listen', { mode: 'conversation', maxTurns: 5 })
|
|
20
|
+
* .on('completed', 'summarize')
|
|
21
|
+
* .on('interrupted', 'listen')
|
|
22
|
+
* .on('hangup', 'end')
|
|
23
|
+
* .build();
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
import type { GraphNode, VoiceNodeConfig } from '../ir/types.js';
|
|
27
|
+
/**
|
|
28
|
+
* Create a new {@link VoiceNodeBuilder} for a voice pipeline graph node.
|
|
29
|
+
*
|
|
30
|
+
* @param id - Unique node identifier within the parent graph.
|
|
31
|
+
* @param config - Voice pipeline configuration for this node.
|
|
32
|
+
* @returns A fluent builder; call `.on()` to add exit-reason routes and
|
|
33
|
+
* `.build()` to produce the `GraphNode` IR object.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const node = voiceNode('greet', { mode: 'conversation' })
|
|
38
|
+
* .on('completed', 'process')
|
|
39
|
+
* .on('hangup', 'cleanup')
|
|
40
|
+
* .build();
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function voiceNode(id: string, config: VoiceNodeConfig): VoiceNodeBuilder;
|
|
44
|
+
/**
|
|
45
|
+
* Fluent DSL builder for voice graph nodes.
|
|
46
|
+
*
|
|
47
|
+
* Collects exit-reason → target-node mappings via {@link on} and produces a
|
|
48
|
+
* fully-specified `GraphNode` via {@link build}.
|
|
49
|
+
*
|
|
50
|
+
* The builder is designed to be chained:
|
|
51
|
+
* ```typescript
|
|
52
|
+
* voiceNode('listen', { mode: 'conversation', maxTurns: 5 })
|
|
53
|
+
* .on('completed', 'summarize')
|
|
54
|
+
* .on('interrupted', 'listen')
|
|
55
|
+
* .on('hangup', 'end')
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare class VoiceNodeBuilder {
|
|
59
|
+
/** The node id assigned at construction time. */
|
|
60
|
+
readonly id: string;
|
|
61
|
+
private readonly config;
|
|
62
|
+
/**
|
|
63
|
+
* Mapping from exit-reason string to target node id.
|
|
64
|
+
* Populated by successive calls to {@link on}.
|
|
65
|
+
*/
|
|
66
|
+
private edgeMap;
|
|
67
|
+
/**
|
|
68
|
+
* @param id - Node identifier; exposed as a readonly property for introspection.
|
|
69
|
+
* @param config - `VoiceNodeConfig` forwarded to the node's `executorConfig`.
|
|
70
|
+
*/
|
|
71
|
+
constructor(
|
|
72
|
+
/** The node id assigned at construction time. */
|
|
73
|
+
id: string, config: VoiceNodeConfig);
|
|
74
|
+
/**
|
|
75
|
+
* Register an exit-reason → target-node route.
|
|
76
|
+
*
|
|
77
|
+
* When the voice node's session ends with `exitReason`, the graph transitions
|
|
78
|
+
* to `target`. Multiple calls to `on()` accumulate routes; calling `on()` with
|
|
79
|
+
* a reason that was already registered overwrites the previous target.
|
|
80
|
+
*
|
|
81
|
+
* @param exitReason - The reason string returned by the voice executor
|
|
82
|
+
* (e.g. `'completed'`, `'interrupted'`, `'hangup'`,
|
|
83
|
+
* `'turns-exhausted'`, `'silence-timeout'`).
|
|
84
|
+
* @param target - Either the string id of the target node, or an object
|
|
85
|
+
* with an `id` property (compatible with builder instances).
|
|
86
|
+
* @returns `this` for fluent chaining.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* builder
|
|
91
|
+
* .on('completed', 'next-node')
|
|
92
|
+
* .on('hangup', { id: 'cleanup-node' });
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
on(exitReason: string, target: string | {
|
|
96
|
+
id: string;
|
|
97
|
+
}): this;
|
|
98
|
+
/**
|
|
99
|
+
* Produce a `GraphNode` IR object from the accumulated builder state.
|
|
100
|
+
*
|
|
101
|
+
* The returned node has:
|
|
102
|
+
* - `type: 'voice'` in sync with `executorConfig.type`.
|
|
103
|
+
* - `executionMode: 'react_bounded'` — voice nodes run a multi-turn loop.
|
|
104
|
+
* - `effectClass: 'external'` — voice I/O touches the real world.
|
|
105
|
+
* - `checkpoint: 'before'` — snapshot taken before the session starts so the
|
|
106
|
+
* run can be resumed from the start of the voice turn if the process crashes.
|
|
107
|
+
* - `edges` — plain object mapping exit-reason strings to target node ids,
|
|
108
|
+
* populated from all `on()` calls. The compiler is responsible for
|
|
109
|
+
* expanding these into `GraphEdge` instances.
|
|
110
|
+
*
|
|
111
|
+
* @returns A `GraphNode` cast to `any` to accommodate the `edges` extension
|
|
112
|
+
* field not present on the base interface.
|
|
113
|
+
*/
|
|
114
|
+
build(): GraphNode;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=VoiceNodeBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VoiceNodeBuilder.d.ts","sourceRoot":"","sources":["../../../src/orchestration/builders/VoiceNodeBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAMjE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,gBAAgB,CAE/E;AAMD;;;;;;;;;;;;;GAaG;AACH,qBAAa,gBAAgB;IAYzB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbzB;;;OAGG;IACH,OAAO,CAAC,OAAO,CAA6B;IAE5C;;;OAGG;;IAED,iDAAiD;IACxC,EAAE,EAAE,MAAM,EACF,MAAM,EAAE,eAAe;IAO1C;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAY7D;;;;;;;;;;;;;;;OAeG;IACH,KAAK,IAAI,SAAS;CAWnB"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file VoiceNodeBuilder.ts
|
|
3
|
+
* @description DSL builder for voice pipeline graph nodes.
|
|
4
|
+
*
|
|
5
|
+
* `voiceNode()` is the fluent factory for creating `GraphNode` IR entries of
|
|
6
|
+
* type `'voice'`. It mirrors the ergonomics of `gmiNode()` / `toolNode()` but
|
|
7
|
+
* targets the voice executor path, letting authors configure STT/TTS overrides,
|
|
8
|
+
* turn limits, barge-in behaviour, and exit-reason routing in a single
|
|
9
|
+
* declarative chain.
|
|
10
|
+
*
|
|
11
|
+
* Exit-reason routing is the key concept: voice nodes complete with a reason
|
|
12
|
+
* string (e.g. `'completed'`, `'interrupted'`, `'hangup'`), and `on()` maps
|
|
13
|
+
* each reason to the next node id. These mappings are stored in `edges` on the
|
|
14
|
+
* returned `GraphNode` and are intended to be expanded by the compiler into
|
|
15
|
+
* `GraphEdge` objects during lowering.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* voiceNode('listen', { mode: 'conversation', maxTurns: 5 })
|
|
20
|
+
* .on('completed', 'summarize')
|
|
21
|
+
* .on('interrupted', 'listen')
|
|
22
|
+
* .on('hangup', 'end')
|
|
23
|
+
* .build();
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
// ---------------------------------------------------------------------------
|
|
27
|
+
// Factory
|
|
28
|
+
// ---------------------------------------------------------------------------
|
|
29
|
+
/**
|
|
30
|
+
* Create a new {@link VoiceNodeBuilder} for a voice pipeline graph node.
|
|
31
|
+
*
|
|
32
|
+
* @param id - Unique node identifier within the parent graph.
|
|
33
|
+
* @param config - Voice pipeline configuration for this node.
|
|
34
|
+
* @returns A fluent builder; call `.on()` to add exit-reason routes and
|
|
35
|
+
* `.build()` to produce the `GraphNode` IR object.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* const node = voiceNode('greet', { mode: 'conversation' })
|
|
40
|
+
* .on('completed', 'process')
|
|
41
|
+
* .on('hangup', 'cleanup')
|
|
42
|
+
* .build();
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export function voiceNode(id, config) {
|
|
46
|
+
return new VoiceNodeBuilder(id, config);
|
|
47
|
+
}
|
|
48
|
+
// ---------------------------------------------------------------------------
|
|
49
|
+
// VoiceNodeBuilder
|
|
50
|
+
// ---------------------------------------------------------------------------
|
|
51
|
+
/**
|
|
52
|
+
* Fluent DSL builder for voice graph nodes.
|
|
53
|
+
*
|
|
54
|
+
* Collects exit-reason → target-node mappings via {@link on} and produces a
|
|
55
|
+
* fully-specified `GraphNode` via {@link build}.
|
|
56
|
+
*
|
|
57
|
+
* The builder is designed to be chained:
|
|
58
|
+
* ```typescript
|
|
59
|
+
* voiceNode('listen', { mode: 'conversation', maxTurns: 5 })
|
|
60
|
+
* .on('completed', 'summarize')
|
|
61
|
+
* .on('interrupted', 'listen')
|
|
62
|
+
* .on('hangup', 'end')
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export class VoiceNodeBuilder {
|
|
66
|
+
/**
|
|
67
|
+
* @param id - Node identifier; exposed as a readonly property for introspection.
|
|
68
|
+
* @param config - `VoiceNodeConfig` forwarded to the node's `executorConfig`.
|
|
69
|
+
*/
|
|
70
|
+
constructor(
|
|
71
|
+
/** The node id assigned at construction time. */
|
|
72
|
+
id, config) {
|
|
73
|
+
this.id = id;
|
|
74
|
+
this.config = config;
|
|
75
|
+
/**
|
|
76
|
+
* Mapping from exit-reason string to target node id.
|
|
77
|
+
* Populated by successive calls to {@link on}.
|
|
78
|
+
*/
|
|
79
|
+
this.edgeMap = new Map();
|
|
80
|
+
}
|
|
81
|
+
// -------------------------------------------------------------------------
|
|
82
|
+
// Fluent API
|
|
83
|
+
// -------------------------------------------------------------------------
|
|
84
|
+
/**
|
|
85
|
+
* Register an exit-reason → target-node route.
|
|
86
|
+
*
|
|
87
|
+
* When the voice node's session ends with `exitReason`, the graph transitions
|
|
88
|
+
* to `target`. Multiple calls to `on()` accumulate routes; calling `on()` with
|
|
89
|
+
* a reason that was already registered overwrites the previous target.
|
|
90
|
+
*
|
|
91
|
+
* @param exitReason - The reason string returned by the voice executor
|
|
92
|
+
* (e.g. `'completed'`, `'interrupted'`, `'hangup'`,
|
|
93
|
+
* `'turns-exhausted'`, `'silence-timeout'`).
|
|
94
|
+
* @param target - Either the string id of the target node, or an object
|
|
95
|
+
* with an `id` property (compatible with builder instances).
|
|
96
|
+
* @returns `this` for fluent chaining.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```typescript
|
|
100
|
+
* builder
|
|
101
|
+
* .on('completed', 'next-node')
|
|
102
|
+
* .on('hangup', { id: 'cleanup-node' });
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
on(exitReason, target) {
|
|
106
|
+
this.edgeMap.set(exitReason, typeof target === 'string' ? target : target.id);
|
|
107
|
+
return this;
|
|
108
|
+
}
|
|
109
|
+
// -------------------------------------------------------------------------
|
|
110
|
+
// Compilation
|
|
111
|
+
// -------------------------------------------------------------------------
|
|
112
|
+
/**
|
|
113
|
+
* Produce a `GraphNode` IR object from the accumulated builder state.
|
|
114
|
+
*
|
|
115
|
+
* The returned node has:
|
|
116
|
+
* - `type: 'voice'` in sync with `executorConfig.type`.
|
|
117
|
+
* - `executionMode: 'react_bounded'` — voice nodes run a multi-turn loop.
|
|
118
|
+
* - `effectClass: 'external'` — voice I/O touches the real world.
|
|
119
|
+
* - `checkpoint: 'before'` — snapshot taken before the session starts so the
|
|
120
|
+
* run can be resumed from the start of the voice turn if the process crashes.
|
|
121
|
+
* - `edges` — plain object mapping exit-reason strings to target node ids,
|
|
122
|
+
* populated from all `on()` calls. The compiler is responsible for
|
|
123
|
+
* expanding these into `GraphEdge` instances.
|
|
124
|
+
*
|
|
125
|
+
* @returns A `GraphNode` cast to `any` to accommodate the `edges` extension
|
|
126
|
+
* field not present on the base interface.
|
|
127
|
+
*/
|
|
128
|
+
build() {
|
|
129
|
+
return {
|
|
130
|
+
id: this.id,
|
|
131
|
+
type: 'voice',
|
|
132
|
+
executorConfig: { type: 'voice', voiceConfig: this.config },
|
|
133
|
+
executionMode: 'react_bounded',
|
|
134
|
+
effectClass: 'external',
|
|
135
|
+
checkpoint: 'before',
|
|
136
|
+
edges: Object.fromEntries(this.edgeMap),
|
|
137
|
+
}; // GraphNode has more required fields; cast for builder convenience
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=VoiceNodeBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VoiceNodeBuilder.js","sourceRoot":"","sources":["../../../src/orchestration/builders/VoiceNodeBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,SAAS,CAAC,EAAU,EAAE,MAAuB;IAC3D,OAAO,IAAI,gBAAgB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,gBAAgB;IAO3B;;;OAGG;IACH;IACE,iDAAiD;IACxC,EAAU,EACF,MAAuB;QAD/B,OAAE,GAAF,EAAE,CAAQ;QACF,WAAM,GAAN,MAAM,CAAiB;QAb1C;;;WAGG;QACK,YAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAUzC,CAAC;IAEJ,4EAA4E;IAC5E,aAAa;IACb,4EAA4E;IAE5E;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,EAAE,CAAC,UAAkB,EAAE,MAA+B;QACpD,IAAI,CAAC,OAAO,CAAC,GAAG,CACd,UAAU,EACV,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAChD,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E;;;;;;;;;;;;;;;OAeG;IACH,KAAK;QACH,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,OAAO;YACb,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE;YAC3D,aAAa,EAAE,eAAe;YAC9B,WAAW,EAAE,UAAU;YACvB,UAAU,EAAE,QAAQ;YACpB,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SACjC,CAAC,CAAC,mEAAmE;IAC/E,CAAC;CACF"}
|
|
@@ -27,7 +27,8 @@
|
|
|
27
27
|
* const result = await wf.invoke({ text: 'hello world' });
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
|
-
import type { CompiledExecutionGraph, MemoryPolicy, DiscoveryPolicy, GuardrailPolicy, BuiltinReducer, ReducerFn } from '../ir/types.js';
|
|
30
|
+
import type { CompiledExecutionGraph, MemoryPolicy, DiscoveryPolicy, GuardrailPolicy, VoiceNodeConfig, BuiltinReducer, ReducerFn } from '../ir/types.js';
|
|
31
|
+
import type { VoiceTransportConfig } from '../runtime/VoiceTransportAdapter.js';
|
|
31
32
|
import type { ICheckpointStore } from '../checkpoint/ICheckpointStore.js';
|
|
32
33
|
import type { GraphEvent } from '../events/GraphEvent.js';
|
|
33
34
|
/**
|
|
@@ -81,6 +82,13 @@ export interface StepConfig {
|
|
|
81
82
|
timeout?: number;
|
|
82
83
|
/** Side-effect classification used by the runtime for scheduling decisions. */
|
|
83
84
|
effectClass?: 'pure' | 'read' | 'write' | 'external' | 'human';
|
|
85
|
+
/**
|
|
86
|
+
* Voice pipeline node configuration.
|
|
87
|
+
* When provided alongside `executorConfig.type: 'voice'`, these settings are
|
|
88
|
+
* forwarded to the VoiceNodeExecutor. Typically set via the `voiceNode()`
|
|
89
|
+
* builder rather than directly through `StepConfig`.
|
|
90
|
+
*/
|
|
91
|
+
voice?: VoiceNodeConfig;
|
|
84
92
|
}
|
|
85
93
|
/**
|
|
86
94
|
* Create a new `WorkflowBuilder` with the given human-readable name.
|
|
@@ -117,6 +125,12 @@ export declare class WorkflowBuilder {
|
|
|
117
125
|
private steps;
|
|
118
126
|
/** Human-readable name forwarded to the compiled graph. */
|
|
119
127
|
private readonly name;
|
|
128
|
+
/**
|
|
129
|
+
* Optional transport configuration set via {@link transport}.
|
|
130
|
+
* When present, the compiled workflow is associated with a transport backend
|
|
131
|
+
* (e.g. a voice pipeline) that intercepts graph I/O at runtime.
|
|
132
|
+
*/
|
|
133
|
+
private _transportConfig;
|
|
120
134
|
/**
|
|
121
135
|
* @param name - Human-readable workflow name.
|
|
122
136
|
*/
|
|
@@ -136,6 +150,31 @@ export declare class WorkflowBuilder {
|
|
|
136
150
|
* @param schema - Output schema (Zod instance or plain JSON Schema object).
|
|
137
151
|
*/
|
|
138
152
|
returns(schema: any): this;
|
|
153
|
+
/**
|
|
154
|
+
* Attach a transport backend to this workflow.
|
|
155
|
+
*
|
|
156
|
+
* When `type` is `'voice'`, the compiled workflow will route graph I/O
|
|
157
|
+
* through a {@link VoiceTransportAdapter} at runtime. The `config` values
|
|
158
|
+
* override per-field defaults from `agent.config.json`.
|
|
159
|
+
*
|
|
160
|
+
* The transport config is stored as `_transportConfig` on the builder
|
|
161
|
+
* instance and is available for inspection or forwarding to the runtime.
|
|
162
|
+
*
|
|
163
|
+
* @param type - Transport kind; currently only `'voice'` is supported.
|
|
164
|
+
* @param config - Optional voice pipeline overrides (STT, TTS, voice, etc.).
|
|
165
|
+
* @returns `this` for fluent chaining.
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* ```typescript
|
|
169
|
+
* const wf = workflow('voice-flow')
|
|
170
|
+
* .input(inputSchema)
|
|
171
|
+
* .returns(outputSchema)
|
|
172
|
+
* .transport('voice', { stt: 'deepgram', tts: 'openai', voice: 'alloy' })
|
|
173
|
+
* .step('listen', { tool: 'listen_tool' })
|
|
174
|
+
* .compile();
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
transport(type: 'voice', config?: Omit<VoiceTransportConfig, 'type'>): this;
|
|
139
178
|
/**
|
|
140
179
|
* Append a single named step to the workflow.
|
|
141
180
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowBuilder.d.ts","sourceRoot":"","sources":["../../../src/orchestration/builders/WorkflowBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAAK,EAGV,sBAAsB,EAEtB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,cAAc,EACd,SAAS,EACV,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"WorkflowBuilder.d.ts","sourceRoot":"","sources":["../../../src/orchestration/builders/WorkflowBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -101,6 +101,34 @@ export class WorkflowBuilder {
|
|
|
101
101
|
this.returnsSchema = schema;
|
|
102
102
|
return this;
|
|
103
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Attach a transport backend to this workflow.
|
|
106
|
+
*
|
|
107
|
+
* When `type` is `'voice'`, the compiled workflow will route graph I/O
|
|
108
|
+
* through a {@link VoiceTransportAdapter} at runtime. The `config` values
|
|
109
|
+
* override per-field defaults from `agent.config.json`.
|
|
110
|
+
*
|
|
111
|
+
* The transport config is stored as `_transportConfig` on the builder
|
|
112
|
+
* instance and is available for inspection or forwarding to the runtime.
|
|
113
|
+
*
|
|
114
|
+
* @param type - Transport kind; currently only `'voice'` is supported.
|
|
115
|
+
* @param config - Optional voice pipeline overrides (STT, TTS, voice, etc.).
|
|
116
|
+
* @returns `this` for fluent chaining.
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```typescript
|
|
120
|
+
* const wf = workflow('voice-flow')
|
|
121
|
+
* .input(inputSchema)
|
|
122
|
+
* .returns(outputSchema)
|
|
123
|
+
* .transport('voice', { stt: 'deepgram', tts: 'openai', voice: 'alloy' })
|
|
124
|
+
* .step('listen', { tool: 'listen_tool' })
|
|
125
|
+
* .compile();
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
transport(type, config) {
|
|
129
|
+
this._transportConfig = { type, ...config };
|
|
130
|
+
return this;
|
|
131
|
+
}
|
|
104
132
|
// -------------------------------------------------------------------------
|
|
105
133
|
// Step primitives
|
|
106
134
|
// -------------------------------------------------------------------------
|
|
@@ -401,6 +429,25 @@ export class WorkflowBuilder {
|
|
|
401
429
|
checkpoint: 'none',
|
|
402
430
|
};
|
|
403
431
|
}
|
|
432
|
+
if (config.voice) {
|
|
433
|
+
// Voice pipeline node: runs a bidirectional STT/TTS session with configurable
|
|
434
|
+
// turn limits and exit conditions. Uses `react_bounded` execution mode to
|
|
435
|
+
// model the multi-turn interaction loop within a single graph node.
|
|
436
|
+
return {
|
|
437
|
+
id,
|
|
438
|
+
type: 'voice',
|
|
439
|
+
executorConfig: {
|
|
440
|
+
type: 'voice',
|
|
441
|
+
voiceConfig: config.voice,
|
|
442
|
+
},
|
|
443
|
+
executionMode: 'react_bounded',
|
|
444
|
+
effectClass: config.effectClass ?? 'external',
|
|
445
|
+
timeout: config.timeout,
|
|
446
|
+
checkpoint: 'before',
|
|
447
|
+
memoryPolicy: config.memory,
|
|
448
|
+
guardrailPolicy: config.guardrails,
|
|
449
|
+
};
|
|
450
|
+
}
|
|
404
451
|
// Fallback: treat as a no-op tool node.
|
|
405
452
|
return {
|
|
406
453
|
...toolNode('unknown', { timeout: config.timeout }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowBuilder.js","sourceRoot":"","sources":["../../../src/orchestration/builders/WorkflowBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;
|
|
1
|
+
{"version":3,"file":"WorkflowBuilder.js","sourceRoot":"","sources":["../../../src/orchestration/builders/WorkflowBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -139,6 +139,45 @@ export type GraphEvent =
|
|
|
139
139
|
message: string;
|
|
140
140
|
code: string;
|
|
141
141
|
};
|
|
142
|
+
}
|
|
143
|
+
/** Live STT transcription — interim and final results. */
|
|
144
|
+
| {
|
|
145
|
+
type: 'voice_transcript';
|
|
146
|
+
nodeId: string;
|
|
147
|
+
text: string;
|
|
148
|
+
isFinal: boolean;
|
|
149
|
+
speaker?: string;
|
|
150
|
+
confidence: number;
|
|
151
|
+
}
|
|
152
|
+
/** Audio chunk metadata (actual audio flows via IStreamTransport, not events). */
|
|
153
|
+
| {
|
|
154
|
+
type: 'voice_audio';
|
|
155
|
+
nodeId: string;
|
|
156
|
+
direction: 'inbound' | 'outbound';
|
|
157
|
+
format: string;
|
|
158
|
+
durationMs: number;
|
|
159
|
+
}
|
|
160
|
+
/** User barge-in — interrupted the agent mid-speech. */
|
|
161
|
+
| {
|
|
162
|
+
type: 'voice_barge_in';
|
|
163
|
+
nodeId: string;
|
|
164
|
+
interruptedText: string;
|
|
165
|
+
userSpeech: string;
|
|
166
|
+
}
|
|
167
|
+
/** User turn complete — endpoint detection fired. */
|
|
168
|
+
| {
|
|
169
|
+
type: 'voice_turn_complete';
|
|
170
|
+
nodeId: string;
|
|
171
|
+
transcript: string;
|
|
172
|
+
turnIndex: number;
|
|
173
|
+
endpointReason: string;
|
|
174
|
+
}
|
|
175
|
+
/** Voice session lifecycle — started or ended. */
|
|
176
|
+
| {
|
|
177
|
+
type: 'voice_session';
|
|
178
|
+
nodeId: string;
|
|
179
|
+
action: 'started' | 'ended';
|
|
180
|
+
exitReason?: string;
|
|
142
181
|
};
|
|
143
182
|
/**
|
|
144
183
|
* Lightweight event emitter for `GraphEvent` values.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphEvent.d.ts","sourceRoot":"","sources":["../../../src/orchestration/events/GraphEvent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMjD;;;;;GAKG;AACH,MAAM,MAAM,UAAU;AACpB,gEAAgE;AAC9D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AAEvD,8DAA8D;GAC5D;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;CAAE;AAEpE;;;GAGG;GACD;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAE3E,yFAAyF;GACvF;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE;AAEnF;;;GAGG;GACD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AAEzD,oEAAoE;GAClE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE;AAExE,8EAA8E;GAC5E;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE;AAE5E;;;GAGG;GACD;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAEpG,6EAA6E;GAC3E;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAEpE;;;;;GAKG;GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,GAAG,qBAAqB,CAAA;CAAE;AAEnG,kFAAkF;GAChF;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAE7D,sEAAsE;GACpE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AAE7D,gFAAgF;GAC9E;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE;AAEpE;;;GAGG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE;AAEnF,mFAAmF;GACjF;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AAE7D;;;GAGG;GACD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"GraphEvent.d.ts","sourceRoot":"","sources":["../../../src/orchestration/events/GraphEvent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphEvent.js","sourceRoot":"","sources":["../../../src/orchestration/events/GraphEvent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"GraphEvent.js","sourceRoot":"","sources":["../../../src/orchestration/events/GraphEvent.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,34 @@ export type GraphCondition = {
|
|
|
85
85
|
type: 'expression';
|
|
86
86
|
expr: GraphConditionExpr;
|
|
87
87
|
};
|
|
88
|
+
/**
|
|
89
|
+
* Configuration for a voice pipeline node.
|
|
90
|
+
* All fields except `mode` are optional and default from agent.config.json voice section.
|
|
91
|
+
*/
|
|
92
|
+
export interface VoiceNodeConfig {
|
|
93
|
+
/** Voice session mode */
|
|
94
|
+
mode: 'conversation' | 'listen-only' | 'speak-only';
|
|
95
|
+
/** STT provider override */
|
|
96
|
+
stt?: string;
|
|
97
|
+
/** TTS provider override */
|
|
98
|
+
tts?: string;
|
|
99
|
+
/** TTS voice override */
|
|
100
|
+
voice?: string;
|
|
101
|
+
/** Endpointing mode */
|
|
102
|
+
endpointing?: 'acoustic' | 'heuristic' | 'semantic';
|
|
103
|
+
/** Barge-in mode */
|
|
104
|
+
bargeIn?: 'hard-cut' | 'soft-fade' | 'disabled';
|
|
105
|
+
/** Enable diarization */
|
|
106
|
+
diarization?: boolean;
|
|
107
|
+
/** Language (BCP-47) */
|
|
108
|
+
language?: string;
|
|
109
|
+
/** Max turns before node completes (0 = unlimited) */
|
|
110
|
+
maxTurns?: number;
|
|
111
|
+
/** Exit condition */
|
|
112
|
+
exitOn?: 'hangup' | 'silence-timeout' | 'keyword' | 'turns-exhausted' | 'manual';
|
|
113
|
+
/** Keywords that trigger completion (when exitOn: 'keyword') */
|
|
114
|
+
exitKeywords?: string[];
|
|
115
|
+
}
|
|
88
116
|
/**
|
|
89
117
|
* Describes how the runtime should execute a `GraphNode`. Each variant maps to a
|
|
90
118
|
* distinct execution strategy.
|
|
@@ -96,6 +124,7 @@ export type GraphCondition = {
|
|
|
96
124
|
* - `guardrail` — Run one or more guardrail checks; route or block on violation.
|
|
97
125
|
* - `router` — Pure routing node; evaluates a `GraphCondition` and emits no output.
|
|
98
126
|
* - `subgraph` — Delegate to another `CompiledExecutionGraph` with optional field mapping.
|
|
127
|
+
* - `voice` — Run a voice pipeline session with configurable STT/TTS and turn management.
|
|
99
128
|
*/
|
|
100
129
|
export type NodeExecutorConfig = {
|
|
101
130
|
type: 'gmi';
|
|
@@ -145,6 +174,10 @@ export type NodeExecutorConfig = {
|
|
|
145
174
|
inputMapping?: Record<string, string>;
|
|
146
175
|
/** Maps child `artifacts` field paths → parent `scratch` field paths. */
|
|
147
176
|
outputMapping?: Record<string, string>;
|
|
177
|
+
} | {
|
|
178
|
+
type: 'voice';
|
|
179
|
+
/** Voice pipeline session configuration. */
|
|
180
|
+
voiceConfig: VoiceNodeConfig;
|
|
148
181
|
};
|
|
149
182
|
/**
|
|
150
183
|
* Governs automatic retry behaviour for transient node failures.
|
|
@@ -306,7 +339,7 @@ export interface GraphNode {
|
|
|
306
339
|
/** Unique identifier within the parent `CompiledExecutionGraph`. Must not equal `START` or `END`. */
|
|
307
340
|
id: string;
|
|
308
341
|
/** Coarse type label kept in sync with `executorConfig.type` for fast switching. */
|
|
309
|
-
type: 'gmi' | 'tool' | 'extension' | 'human' | 'guardrail' | 'router' | 'subgraph';
|
|
342
|
+
type: 'gmi' | 'tool' | 'extension' | 'human' | 'guardrail' | 'router' | 'subgraph' | 'voice';
|
|
310
343
|
/** Full executor configuration; discriminated union determines runtime strategy. */
|
|
311
344
|
executorConfig: NodeExecutorConfig;
|
|
312
345
|
/** Controls the LLM turn budget for this node. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ir/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,6EAA6E;AAC7E,eAAO,MAAM,KAAK,EAAG,WAAoB,CAAC;AAE1C,4EAA4E;AAC5E,eAAO,MAAM,GAAG,EAAG,SAAkB,CAAC;AAMtC;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,eAAe,GAAG,oBAAoB,CAAC;AAEvF;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;AAM3E;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;AAErF;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAMtE;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,MAAM,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAExC;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,gBAAgB,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAChE;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAMrD
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/orchestration/ir/types.ts"],"names":[],"mappings":"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"}
|