@@ -14,6 +14,10 @@ import { lastValueFrom } from "rxjs";
14
14
import { transformChunks } from "@/chunks" ;
15
15
import { AgentStateMutation , RunAgentSubscriber , runSubscribersWithMutation } from "./subscriber" ;
16
16
17
+ export interface RunAgentResult {
18
+ result : any ;
19
+ }
20
+
17
21
export abstract class AbstractAgent {
18
22
public agentId ?: string ;
19
23
public description : string ;
@@ -53,7 +57,7 @@ export abstract class AbstractAgent {
53
57
public async runAgent (
54
58
parameters ?: RunAgentParameters ,
55
59
subscriber ?: RunAgentSubscriber ,
56
- ) : Promise < any > {
60
+ ) : Promise < RunAgentResult > {
57
61
this . agentId = this . agentId ?? uuidv4 ( ) ;
58
62
const input = this . prepareRunAgentInput ( parameters ) ;
59
63
let result : any = undefined ;
@@ -83,7 +87,7 @@ export abstract class AbstractAgent {
83
87
} ) ,
84
88
) ;
85
89
86
- return lastValueFrom ( pipeline ( of ( null ) ) ) . then ( ( ) => result ) ;
90
+ return lastValueFrom ( pipeline ( of ( null ) ) ) . then ( ( ) => ( { result } ) ) ;
87
91
}
88
92
89
93
public abortRun ( ) { }
@@ -108,6 +112,7 @@ export abstract class AbstractAgent {
108
112
subscribers . forEach ( ( subscriber ) => {
109
113
subscriber . onMessagesChanged ?.( {
110
114
messages : this . messages ,
115
+ state : this . state ,
111
116
agent : this ,
112
117
input,
113
118
} ) ;
@@ -118,6 +123,7 @@ export abstract class AbstractAgent {
118
123
subscribers . forEach ( ( subscriber ) => {
119
124
subscriber . onStateChanged ?.( {
120
125
state : this . state ,
126
+ messages : this . messages ,
121
127
agent : this ,
122
128
input,
123
129
} ) ;
@@ -157,6 +163,7 @@ export abstract class AbstractAgent {
157
163
subscribers . forEach ( ( subscriber ) => {
158
164
subscriber . onMessagesChanged ?.( {
159
165
messages : this . messages ,
166
+ state : this . state ,
160
167
agent : this ,
161
168
input,
162
169
} ) ;
@@ -168,6 +175,7 @@ export abstract class AbstractAgent {
168
175
subscribers . forEach ( ( subscriber ) => {
169
176
subscriber . onStateChanged ?.( {
170
177
state : this . state ,
178
+ messages : this . messages ,
171
179
agent : this ,
172
180
input,
173
181
} ) ;
@@ -194,6 +202,7 @@ export abstract class AbstractAgent {
194
202
subscribers . forEach ( ( subscriber ) => {
195
203
subscriber . onMessagesChanged ?.( {
196
204
messages : this . messages ,
205
+ state : this . state ,
197
206
agent : this ,
198
207
input,
199
208
} ) ;
@@ -204,6 +213,7 @@ export abstract class AbstractAgent {
204
213
subscribers . forEach ( ( subscriber ) => {
205
214
subscriber . onStateChanged ?.( {
206
215
state : this . state ,
216
+ messages : this . messages ,
207
217
agent : this ,
208
218
input,
209
219
} ) ;
@@ -240,6 +250,7 @@ export abstract class AbstractAgent {
240
250
subscribers . forEach ( ( subscriber ) => {
241
251
subscriber . onMessagesChanged ?.( {
242
252
messages : this . messages ,
253
+ state : this . state ,
243
254
agent : this ,
244
255
input,
245
256
} ) ;
@@ -250,6 +261,7 @@ export abstract class AbstractAgent {
250
261
subscribers . forEach ( ( subscriber ) => {
251
262
subscriber . onStateChanged ?.( {
252
263
state : this . state ,
264
+ messages : this . messages ,
253
265
agent : this ,
254
266
input,
255
267
} ) ;
0 commit comments