@taico/taico 0.2.11 → 0.2.12

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.
Files changed (53) hide show
  1. package/dist/app-init/app-init.runner.js +12 -6
  2. package/dist/app-init/app-init.runner.js.map +1 -1
  3. package/dist/app.controller.js.map +1 -1
  4. package/dist/chat-providers/chat-providers.service.js +6 -2
  5. package/dist/chat-providers/chat-providers.service.js.map +1 -1
  6. package/dist/chat-providers/dto/service/chat-providers.service.types.d.ts +1 -1
  7. package/dist/chat-providers/enums/chat-provider-type.enum.d.ts +2 -1
  8. package/dist/chat-providers/enums/chat-provider-type.enum.js +1 -0
  9. package/dist/chat-providers/enums/chat-provider-type.enum.js.map +1 -1
  10. package/dist/config/env.config.d.ts +1 -0
  11. package/dist/config/env.config.js +17 -0
  12. package/dist/config/env.config.js.map +1 -1
  13. package/dist/context/context.mcp.gateway.js +2 -1
  14. package/dist/context/context.mcp.gateway.js.map +1 -1
  15. package/dist/discovery/discovery.controller.js.map +1 -1
  16. package/dist/llm/openai-responses.service.js +3 -0
  17. package/dist/llm/openai-responses.service.js.map +1 -1
  18. package/dist/main.js +33 -22
  19. package/dist/main.js.map +1 -1
  20. package/dist/public/assets/{index-D558s7Ot.js → index-6WngSDfP.js} +3 -3
  21. package/dist/public/beta/assets/{index-rfhzPvbf.js → index-g8TuopEh.js} +1 -1
  22. package/dist/public/beta/index.html +1 -1
  23. package/dist/public/index.html +1 -1
  24. package/dist/tasks/tasks.mcp.gateway.js +2 -1
  25. package/dist/tasks/tasks.mcp.gateway.js.map +1 -1
  26. package/dist/threads/backends/adk.backend.d.ts +19 -0
  27. package/dist/threads/backends/adk.backend.js +275 -0
  28. package/dist/threads/backends/adk.backend.js.map +1 -0
  29. package/dist/threads/backends/chat-backend.interface.d.ts +39 -0
  30. package/dist/threads/backends/chat-backend.interface.js +3 -0
  31. package/dist/threads/backends/chat-backend.interface.js.map +1 -0
  32. package/dist/threads/backends/chat-backend.utils.d.ts +5 -0
  33. package/dist/threads/backends/chat-backend.utils.js +27 -0
  34. package/dist/threads/backends/chat-backend.utils.js.map +1 -0
  35. package/dist/threads/backends/openai.backend.d.ts +19 -0
  36. package/dist/threads/backends/openai.backend.js +155 -0
  37. package/dist/threads/backends/openai.backend.js.map +1 -0
  38. package/dist/threads/chat.service.d.ts +23 -29
  39. package/dist/threads/chat.service.js +94 -401
  40. package/dist/threads/chat.service.js.map +1 -1
  41. package/dist/threads/thread-state-reconciler.service.d.ts +5 -9
  42. package/dist/threads/thread-state-reconciler.service.js +17 -59
  43. package/dist/threads/thread-state-reconciler.service.js.map +1 -1
  44. package/dist/threads/thread-title.service.d.ts +3 -3
  45. package/dist/threads/thread-title.service.js +6 -9
  46. package/dist/threads/thread-title.service.js.map +1 -1
  47. package/dist/threads/threads.module.js +4 -2
  48. package/dist/threads/threads.module.js.map +1 -1
  49. package/dist/threads/threads.service.d.ts +4 -15
  50. package/dist/threads/threads.service.js +97 -24
  51. package/dist/threads/threads.service.js.map +1 -1
  52. package/dist/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +5 -5
@@ -8,120 +8,62 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
11
  var ChatService_1;
15
12
  Object.defineProperty(exports, "__esModule", { value: true });
16
13
  exports.ChatService = void 0;
17
14
  const common_1 = require("@nestjs/common");
18
15
  const issued_access_token_service_1 = require("../authorization-server/issued-access-token.service");
19
- const threads_service_1 = require("./threads.service");
20
16
  const agents_service_1 = require("../agents/agents.service");
21
- const agents_1 = require("@openai/agents");
22
- const openai_1 = require("openai");
23
- const crypto_1 = require("crypto");
24
- const env_config_1 = require("../config/env.config");
25
17
  const enums_1 = require("../identity-provider/enums");
26
18
  const mcp_scopes_1 = require("../auth/core/scopes/mcp.scopes");
27
19
  const tasks_scopes_1 = require("../tasks/tasks.scopes");
28
20
  const context_scopes_1 = require("../context/context.scopes");
29
- const openai_mcp_server_factory_service_1 = require("./openai-mcp-server-factory.service");
30
- const enums_2 = require("../agents/enums");
31
- const adk_1 = require("@google/adk");
32
- const adk_session_store_1 = require("@taico/adk-session-store");
33
- const node_path_1 = require("node:path");
34
21
  const chat_providers_service_1 = require("../chat-providers/chat-providers.service");
22
+ const chat_providers_errors_1 = require("../chat-providers/errors/chat-providers.errors");
23
+ const enums_2 = require("../chat-providers/enums");
24
+ const adk_backend_1 = require("./backends/adk.backend");
25
+ const openai_backend_1 = require("./backends/openai.backend");
35
26
  let ChatService = ChatService_1 = class ChatService {
36
27
  agentsService;
37
- threadsService;
38
28
  issuedAccessTokenService;
39
- openAiMcpServerFactoryService;
40
29
  chatProvidersService;
30
+ adkBackend;
31
+ openAiBackend;
41
32
  logger = new common_1.Logger(ChatService_1.name);
42
- adkSessionService;
43
- constructor(agentsService, threadsService, issuedAccessTokenService, openAiMcpServerFactoryService, chatProvidersService) {
33
+ constructor(agentsService, issuedAccessTokenService, chatProvidersService, adkBackend, openAiBackend) {
44
34
  this.agentsService = agentsService;
45
- this.threadsService = threadsService;
46
35
  this.issuedAccessTokenService = issuedAccessTokenService;
47
- this.openAiMcpServerFactoryService = openAiMcpServerFactoryService;
48
36
  this.chatProvidersService = chatProvidersService;
49
- this.adkSessionService = new adk_session_store_1.SqliteSessionService({
50
- filename: this.getChatDatabasePath((0, env_config_1.getConfig)().databasePath),
51
- });
52
- }
53
- async onModuleDestroy() {
54
- try {
55
- await this.adkSessionService.close();
56
- }
57
- catch (error) {
58
- this.logger.warn({
59
- message: "Failed to close ADK session store",
60
- error: error instanceof Error
61
- ? { message: error.message, stack: error.stack, name: error.name }
62
- : String(error),
63
- });
64
- }
37
+ this.adkBackend = adkBackend;
38
+ this.openAiBackend = openAiBackend;
65
39
  }
66
40
  async getSelf() {
67
- const self = this.agentsService.getAgentBySlug({ slug: 'taico' });
68
- return self;
41
+ return this.agentsService.getAgentBySlug({ slug: 'taico' });
69
42
  }
70
- async getOpenAiApiKey() {
43
+ async getActiveBackend() {
71
44
  const config = await this.chatProvidersService.getActiveChatProviderConfig();
72
- return config.apiKey;
73
- }
74
- configureOpenAiSdk(apiKey) {
75
- const client = new openai_1.OpenAI({ apiKey });
76
- (0, agents_1.setDefaultOpenAIClient)(client);
77
- (0, agents_1.setDefaultOpenAIKey)(apiKey);
78
- return new agents_1.OpenAIProvider({ openAIClient: client });
45
+ return config.type === enums_2.ChatProviderType.ADK ? this.adkBackend : this.openAiBackend;
79
46
  }
80
47
  async ensureConversationAvailable() {
81
- const self = await this.getSelf();
82
- if (self.type === enums_2.AgentType.ADK) {
83
- return;
84
- }
85
- await this.getOpenAiApiKey();
86
- }
87
- getChatDatabasePath(databasePath) {
88
- if (databasePath === ":memory:") {
89
- return databasePath;
48
+ try {
49
+ const backend = await this.getActiveBackend();
50
+ await backend.ensureAvailable();
90
51
  }
91
- const extension = (0, node_path_1.extname)(databasePath);
92
- if (!extension) {
93
- return `${databasePath}-chat`;
52
+ catch (error) {
53
+ if (error instanceof chat_providers_errors_1.NoActiveChatProviderError) {
54
+ return;
55
+ }
56
+ throw error;
94
57
  }
95
- const filename = (0, node_path_1.basename)(databasePath, extension);
96
- return (0, node_path_1.join)((0, node_path_1.dirname)(databasePath), `${filename}-chat${extension}`);
97
58
  }
98
59
  async createConversation({ threadId }) {
99
- const self = await this.getSelf();
100
- if (self.type === enums_2.AgentType.ADK) {
101
- const session = await this.adkSessionService.createSession({
102
- appName: "taico-chat",
103
- sessionId: (0, crypto_1.randomUUID)(),
104
- userId: threadId,
105
- });
106
- return {
107
- id: session.id,
108
- };
109
- }
60
+ const backend = await this.getActiveBackend();
110
61
  try {
111
- const apiKey = await this.getOpenAiApiKey();
112
- const client = new openai_1.OpenAI({
113
- apiKey,
114
- });
115
- const conversation = await client.conversations.create({
116
- metadata: {
117
- threadId
118
- }
119
- });
120
- return conversation;
62
+ return await backend.createConversation(threadId);
121
63
  }
122
64
  catch (error) {
123
65
  this.logger.error({
124
- message: 'Failed to create OpenAI conversation',
66
+ message: 'Failed to create conversation',
125
67
  threadId,
126
68
  error: error instanceof Error
127
69
  ? { message: error.message, stack: error.stack, name: error.name }
@@ -130,351 +72,102 @@ let ChatService = ChatService_1 = class ChatService {
130
72
  throw error;
131
73
  }
132
74
  }
133
- makeMessage({ message, actor }) {
134
- return `[${actor.displayName} @${actor.slug}] says:\n${message}`;
135
- }
136
- parseResponseTextDelta(event) {
137
- if (event.type !== 'raw_model_stream_event') {
138
- return null;
139
- }
140
- if (event.data.type !== 'output_text_delta') {
141
- return null;
142
- }
143
- return event.data.delta;
144
- }
145
- buildThreadScopedInstructions(baseInstructions, threadId, options) {
146
- const tasksPrefix = options?.useNamespacedToolNames ? "mcp__tasks__" : "tasks__";
147
- const contextPrefix = options?.useNamespacedToolNames ? "mcp__context__" : "context__";
148
- return `${baseInstructions}
149
-
150
- Thread context:
151
- - You are working inside thread ${threadId}.
152
- - This thread coordinates multiple tasks working toward a shared goal.
153
- - Keep your guidance and execution aligned with thread-level context, not just one task.
154
-
155
- Operational guidance:
156
- - Use ${tasksPrefix}list_tasks_by_thread with this threadId to understand current subtasks and status.
157
- - Use ${contextPrefix}get_thread_state_memory with this threadId to read current shared state memory.
158
- - When a task or context block becomes relevant to the thread, attach it using ${tasksPrefix}attach_task_to_thread or ${contextPrefix}attach_block_to_thread.
159
- - If a task/block was attached by mistake or is no longer relevant, remove it using ${tasksPrefix}detach_task_from_thread or ${contextPrefix}detach_block_from_thread.
160
- - During conversation, when you discover durable cross-task decisions/constraints/risks, update memory via ${contextPrefix}update_block.
161
- - If the user asks for updates on a given task, read the task and the memory block to update the user.
162
- - Only write durable shared memory (not ephemeral chat details).`;
163
- }
164
- async createAdkRunner(token, modelId, instructions) {
165
- const baseUrl = (0, env_config_1.getConfig)().issuerUrl;
166
- const agent = new adk_1.LlmAgent({
167
- name: "taico",
168
- model: modelId,
169
- description: "",
170
- instruction: instructions,
171
- tools: [
172
- new NamespacedMCPToolset({
173
- type: "StreamableHTTPConnectionParams",
174
- url: `${baseUrl}/api/v1/tasks/tasks/mcp`,
175
- header: {
176
- Authorization: `Bearer ${token}`,
177
- },
178
- }, "tasks"),
179
- new NamespacedMCPToolset({
180
- type: "StreamableHTTPConnectionParams",
181
- url: `${baseUrl}/api/v1/context/blocks/mcp`,
182
- header: {
183
- Authorization: `Bearer ${token}`,
184
- },
185
- }, "context"),
186
- ],
187
- });
188
- return new adk_1.Runner({
189
- appName: "taico-chat",
190
- agent,
191
- sessionService: this.adkSessionService,
192
- });
193
- }
194
- parseAdkTextParts(event) {
195
- if (!event.content?.parts) {
196
- return [];
197
- }
198
- return event.content.parts
199
- .map((part) => part.text)
200
- .filter((text) => typeof text === "string" && text.length > 0);
201
- }
202
- emitAdkActivity(event, threadId, actorId) {
203
- if (!event.content?.parts) {
204
- return;
75
+ async generateText(prompt) {
76
+ try {
77
+ const self = await this.getSelf();
78
+ const backend = await this.getActiveBackend();
79
+ return backend.generateText(prompt, self.modelId);
205
80
  }
206
- for (const part of event.content.parts) {
207
- if (part.thought) {
208
- this.threadsService.emitAgentActivity({
209
- threadId,
210
- actorId,
211
- kind: "thinking",
212
- });
213
- }
214
- if (part.functionCall || part.functionResponse) {
215
- this.threadsService.emitAgentActivity({
216
- threadId,
217
- actorId,
218
- kind: "tool_calling",
219
- });
81
+ catch (error) {
82
+ if (error instanceof chat_providers_errors_1.NoActiveChatProviderError) {
83
+ return null;
220
84
  }
85
+ throw error;
221
86
  }
222
87
  }
223
- async sendMessageToThread({ conversationId, threadId, message, actor }) {
88
+ async runTask(args) {
224
89
  const self = await this.getSelf();
225
- if (actor.id === self.actorId) {
226
- this.logger.debug(`Actor ${actor.id} is the same as the agent itself. Skipping message send to avoid loops.`);
227
- return;
228
- }
229
- this.logger.debug(`Generating access token for actor ${actor.id} to use in MCP servers`);
90
+ const backend = await this.getActiveBackend();
230
91
  const selfActor = {
231
92
  id: self.actorId,
232
93
  slug: self.slug,
233
94
  type: enums_1.ActorType.AGENT,
234
95
  displayName: self.name,
235
96
  };
236
- const chatActor = {
237
- id: actor.id,
238
- slug: actor.slug,
239
- type: actor.type,
240
- displayName: actor.displayName,
241
- };
97
+ const issuedByActor = args.actor
98
+ ? {
99
+ id: args.actor.id,
100
+ slug: args.actor.slug,
101
+ type: args.actor.type,
102
+ displayName: args.actor.displayName,
103
+ }
104
+ : selfActor;
242
105
  const token = await this.issuedAccessTokenService.issueSystemToken({
243
106
  subjectActor: selfActor,
244
- issuedByActor: chatActor,
107
+ issuedByActor,
245
108
  scopes: [
246
109
  mcp_scopes_1.McpScopes.USE.id,
247
- ...tasks_scopes_1.ALL_TASKS_SCOPES.map(scope => scope.id),
248
- ...context_scopes_1.ALL_CONTEXT_SCOPES.map(scope => scope.id),
110
+ ...tasks_scopes_1.ALL_TASKS_SCOPES.map((s) => s.id),
111
+ ...context_scopes_1.ALL_CONTEXT_SCOPES.map((s) => s.id),
249
112
  ],
250
113
  });
251
- this.logger.debug(`Issued ephemeral access token for actor ${actor.id} with jti ${token.jti}`);
252
- if (self.type === enums_2.AgentType.ADK) {
253
- try {
254
- const instructions = this.buildThreadScopedInstructions(self.systemPrompt, threadId, {
255
- useNamespacedToolNames: true,
256
- });
257
- const runner = await this.createAdkRunner(token.token, self.modelId || "gemini-2.5-flash", instructions);
258
- const stream = runner.runAsync({
259
- userId: threadId,
260
- sessionId: conversationId,
261
- newMessage: {
262
- role: "user",
263
- parts: [
264
- {
265
- text: this.makeMessage({ message, actor }),
266
- },
267
- ],
268
- },
269
- });
270
- const responseStreamId = (0, crypto_1.randomUUID)();
271
- const finalChunks = [];
272
- let sawPartial = false;
273
- for await (const event of stream) {
274
- this.emitAdkActivity(event, threadId, self.actorId);
275
- const textParts = this.parseAdkTextParts(event);
276
- if (textParts.length === 0) {
277
- continue;
278
- }
279
- const chunk = textParts.join("");
280
- if (event.partial) {
281
- sawPartial = true;
282
- finalChunks.push(chunk);
283
- this.threadsService.emitAgentResponseDelta({
284
- threadId,
285
- actorId: self.actorId,
286
- streamId: responseStreamId,
287
- delta: chunk,
288
- });
289
- continue;
290
- }
291
- if (!sawPartial) {
292
- finalChunks.push(chunk);
293
- this.threadsService.emitAgentResponseDelta({
294
- threadId,
295
- actorId: self.actorId,
296
- streamId: responseStreamId,
297
- delta: chunk,
298
- });
299
- }
300
- }
301
- const finalMessage = finalChunks.join("").trim();
302
- if (finalMessage) {
303
- await this.threadsService.createMessage({
304
- threadId,
305
- content: finalMessage,
306
- createdByActorId: self.actorId,
307
- });
308
- }
309
- }
310
- catch (error) {
311
- this.logger.error({
312
- message: "ADK agent run failed",
313
- threadId,
314
- conversationId,
315
- error: error instanceof Error
316
- ? { message: error.message, stack: error.stack, name: error.name }
317
- : String(error),
318
- });
319
- const errorMessage = error instanceof Error
320
- ? `I encountered an error while processing your message: ${error.message}`
321
- : "I encountered an unexpected error while processing your message.";
322
- try {
323
- await this.threadsService.createMessage({
324
- threadId,
325
- content: errorMessage,
326
- createdByActorId: self.actorId,
327
- });
328
- }
329
- catch (messageError) {
330
- this.logger.error({
331
- message: "Failed to create ADK error message in thread",
332
- threadId,
333
- error: messageError instanceof Error
334
- ? {
335
- message: messageError.message,
336
- stack: messageError.stack,
337
- name: messageError.name,
338
- }
339
- : String(messageError),
340
- });
341
- }
342
- }
343
- return;
344
- }
345
- const apiKey = await this.getOpenAiApiKey();
346
- const modelProvider = this.configureOpenAiSdk(apiKey);
347
- const mcpServers = await this.openAiMcpServerFactoryService.createServers(token);
348
- const agent = new agents_1.Agent({
349
- name: self.name,
350
- instructions: this.buildThreadScopedInstructions(self.systemPrompt, threadId),
351
- model: self.modelId || 'gpt-5.2-codex',
352
- mcpServers: mcpServers,
114
+ await backend.runTask({
115
+ instructions: args.instructions,
116
+ prompt: args.prompt,
117
+ token: token.token,
118
+ modelId: self.modelId,
353
119
  });
354
- const runner = new agents_1.Runner({ modelProvider });
355
- this.logger.log(`Sending message sent to ${conversationId}`);
356
- try {
357
- const result = await runner.run(agent, this.makeMessage({ message, actor }), {
358
- conversationId,
359
- stream: true,
360
- });
361
- const responseStreamId = (0, crypto_1.randomUUID)();
362
- for await (const event of result) {
363
- const textDelta = this.parseResponseTextDelta(event);
364
- if (textDelta) {
365
- this.threadsService.emitAgentResponseDelta({
366
- threadId,
367
- actorId: self.actorId,
368
- streamId: responseStreamId,
369
- delta: textDelta,
370
- });
371
- }
372
- if (event.type === "run_item_stream_event") {
373
- switch (event.item.type) {
374
- case "reasoning_item":
375
- this.threadsService.emitAgentActivity({
376
- threadId,
377
- actorId: self.actorId,
378
- kind: 'thinking',
379
- });
380
- break;
381
- case "tool_call_item":
382
- this.threadsService.emitAgentActivity({
383
- threadId,
384
- actorId: self.actorId,
385
- kind: 'tool_calling',
386
- });
387
- break;
388
- case "tool_call_output_item":
389
- break;
390
- case "message_output_item":
391
- this.threadsService.createMessage({
392
- threadId: threadId,
393
- content: event.item.content,
394
- createdByActorId: self.actorId,
395
- });
396
- break;
397
- }
398
- }
399
- }
400
- }
401
- catch (error) {
402
- this.logger.error({
403
- message: 'OpenAI agent run failed',
404
- threadId,
405
- conversationId,
406
- error: error instanceof Error
407
- ? { message: error.message, stack: error.stack, name: error.name }
408
- : String(error),
409
- });
410
- const errorMessage = error instanceof Error
411
- ? `I encountered an error while processing your message: ${error.message}`
412
- : 'I encountered an unexpected error while processing your message.';
413
- try {
414
- await this.threadsService.createMessage({
415
- threadId: threadId,
416
- content: errorMessage,
417
- createdByActorId: self.actorId,
418
- });
419
- }
420
- catch (messageError) {
421
- this.logger.error({
422
- message: 'Failed to create error message in thread',
423
- threadId,
424
- error: messageError instanceof Error
425
- ? { message: messageError.message, stack: messageError.stack, name: messageError.name }
426
- : String(messageError),
427
- });
428
- }
120
+ }
121
+ async streamMessageToConversation(args) {
122
+ const self = await this.getSelf();
123
+ if (args.actor.id === self.actorId) {
124
+ this.logger.debug(`Actor ${args.actor.id} is the same as the agent itself. Skipping to avoid loops.`);
125
+ return {
126
+ agentActorId: self.actorId,
127
+ events: (async function* () { })(),
128
+ };
429
129
  }
430
- return;
130
+ const backend = await this.getActiveBackend();
131
+ const token = await this.issuedAccessTokenService.issueSystemToken({
132
+ subjectActor: {
133
+ id: self.actorId,
134
+ slug: self.slug,
135
+ type: enums_1.ActorType.AGENT,
136
+ displayName: self.name,
137
+ },
138
+ issuedByActor: {
139
+ id: args.actor.id,
140
+ slug: args.actor.slug,
141
+ type: args.actor.type,
142
+ displayName: args.actor.displayName,
143
+ },
144
+ scopes: [
145
+ mcp_scopes_1.McpScopes.USE.id,
146
+ ...tasks_scopes_1.ALL_TASKS_SCOPES.map((s) => s.id),
147
+ ...context_scopes_1.ALL_CONTEXT_SCOPES.map((s) => s.id),
148
+ ],
149
+ });
150
+ this.logger.debug(`Issued ephemeral access token for actor ${args.actor.id} with jti ${token.jti}`);
151
+ const events = backend.streamMessage({
152
+ conversationId: args.conversationId,
153
+ threadId: args.threadId,
154
+ message: args.message,
155
+ actor: args.actor,
156
+ agentName: self.name,
157
+ systemPrompt: self.systemPrompt,
158
+ modelId: self.modelId,
159
+ token: token.token,
160
+ });
161
+ return { agentActorId: self.actorId, events };
431
162
  }
432
163
  };
433
164
  exports.ChatService = ChatService;
434
165
  exports.ChatService = ChatService = ChatService_1 = __decorate([
435
166
  (0, common_1.Injectable)(),
436
- __param(1, (0, common_1.Inject)((0, common_1.forwardRef)(() => threads_service_1.ThreadsService))),
437
167
  __metadata("design:paramtypes", [agents_service_1.AgentsService,
438
- threads_service_1.ThreadsService,
439
168
  issued_access_token_service_1.IssuedAccessTokenService,
440
- openai_mcp_server_factory_service_1.OpenAiMcpServerFactoryService,
441
- chat_providers_service_1.ChatProvidersService])
169
+ chat_providers_service_1.ChatProvidersService,
170
+ adk_backend_1.AdkBackend,
171
+ openai_backend_1.OpenAiBackend])
442
172
  ], ChatService);
443
- class NamespacedTool extends adk_1.BaseTool {
444
- wrappedTool;
445
- namespacedName;
446
- constructor(wrappedTool, namespacedName) {
447
- super({
448
- name: namespacedName,
449
- description: wrappedTool.description,
450
- isLongRunning: wrappedTool.isLongRunning,
451
- });
452
- this.wrappedTool = wrappedTool;
453
- this.namespacedName = namespacedName;
454
- }
455
- _getDeclaration() {
456
- const declaration = this.wrappedTool._getDeclaration();
457
- if (!declaration) {
458
- return declaration;
459
- }
460
- return {
461
- ...declaration,
462
- name: this.namespacedName,
463
- };
464
- }
465
- async runAsync(request) {
466
- return this.wrappedTool.runAsync(request);
467
- }
468
- }
469
- class NamespacedMCPToolset extends adk_1.MCPToolset {
470
- serverName;
471
- constructor(connectionParams, serverName) {
472
- super(connectionParams);
473
- this.serverName = serverName;
474
- }
475
- async getTools(context) {
476
- const tools = await super.getTools(context);
477
- return tools.map((tool) => new NamespacedTool(tool, `mcp__${this.serverName}__${tool.name}`));
478
- }
479
- }
480
173
  //# sourceMappingURL=chat.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/threads/chat.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/threads/chat.service.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,17 @@
1
- import { AgentsService } from "../agents/agents.service";
2
- import { IssuedAccessTokenService } from "../authorization-server/issued-access-token.service";
1
+ import { OnModuleDestroy } from '@nestjs/common';
3
2
  import { Repository } from 'typeorm';
4
3
  import { ActorEntity } from "../identity-provider/actor.entity";
5
- import { OpenAiMcpServerFactoryService } from './openai-mcp-server-factory.service';
6
4
  import { ThreadsService } from './threads.service';
5
+ import { ChatService } from './chat.service';
7
6
  import { CommentAddedEvent, TaskStatusChangedEvent } from '../tasks/events/tasks.events';
8
- export declare class ThreadStateReconcilerService {
9
- private readonly agentsService;
7
+ export declare class ThreadStateReconcilerService implements OnModuleDestroy {
10
8
  private readonly threadsService;
11
- private readonly issuedAccessTokenService;
12
- private readonly openAiMcpServerFactoryService;
9
+ private readonly chatService;
13
10
  private readonly actorRepository;
14
11
  private readonly logger;
15
12
  private readonly activityBatcher;
16
- constructor(agentsService: AgentsService, threadsService: ThreadsService, issuedAccessTokenService: IssuedAccessTokenService, openAiMcpServerFactoryService: OpenAiMcpServerFactoryService, actorRepository: Repository<ActorEntity>);
13
+ constructor(threadsService: ThreadsService, chatService: ChatService, actorRepository: Repository<ActorEntity>);
17
14
  onModuleDestroy(): void;
18
- private getSelf;
19
15
  private getInstructions;
20
16
  private buildPrompt;
21
17
  private reconcileThreadStateBatch;