@mtkn/mega-agent 0.1.1 → 0.3.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 +150 -7
- package/dist/artifact/artifact.repository.d.ts +2 -1
- package/dist/artifact/artifact.repository.d.ts.map +1 -1
- package/dist/artifact/artifact.repository.js +1 -1
- package/dist/artifact/artifact.repository.js.map +1 -1
- package/dist/artifact/artifact.service.d.ts +3 -2
- package/dist/artifact/artifact.service.d.ts.map +1 -1
- package/dist/artifact/artifact.service.js.map +1 -1
- package/dist/artifact/artifact.types.d.ts +2 -1
- package/dist/artifact/artifact.types.d.ts.map +1 -1
- package/dist/artifact/artifact.types.js.map +1 -1
- package/dist/chat/chat-memory.integration.d.ts +3 -2
- package/dist/chat/chat-memory.integration.d.ts.map +1 -1
- package/dist/chat/chat-memory.integration.js.map +1 -1
- package/dist/chat/chat.repository.d.ts +2 -1
- package/dist/chat/chat.repository.d.ts.map +1 -1
- package/dist/chat/chat.repository.js +1 -1
- package/dist/chat/chat.repository.js.map +1 -1
- package/dist/chat/chat.service.d.ts +4 -2
- package/dist/chat/chat.service.d.ts.map +1 -1
- package/dist/chat/chat.service.js +127 -40
- package/dist/chat/chat.service.js.map +1 -1
- package/dist/chat/chat.types.d.ts +7 -7
- package/dist/chat/chat.types.d.ts.map +1 -1
- package/dist/chat/chat.types.js.map +1 -1
- package/dist/chat/pending-approval.store.d.ts +19 -0
- package/dist/chat/pending-approval.store.d.ts.map +1 -0
- package/dist/chat/pending-approval.store.js +41 -0
- package/dist/chat/pending-approval.store.js.map +1 -0
- package/dist/chat/prompts/system.prompts.d.ts.map +1 -1
- package/dist/chat/prompts/system.prompts.js +9 -6
- package/dist/chat/prompts/system.prompts.js.map +1 -1
- package/dist/common/errors.d.ts +3 -0
- package/dist/common/errors.d.ts.map +1 -1
- package/dist/common/errors.js +6 -0
- package/dist/common/errors.js.map +1 -1
- package/dist/http/chat.controller.d.ts +1 -1
- package/dist/http/chat.controller.d.ts.map +1 -1
- package/dist/http/chat.controller.js +15 -3
- package/dist/http/chat.controller.js.map +1 -1
- package/dist/http/chat.routes.d.ts.map +1 -1
- package/dist/http/chat.routes.js +3 -3
- package/dist/http/chat.routes.js.map +1 -1
- package/dist/http/chat.validation.d.ts +14 -0
- package/dist/http/chat.validation.d.ts.map +1 -1
- package/dist/http/chat.validation.js +6 -0
- package/dist/http/chat.validation.js.map +1 -1
- package/dist/incident/incident.correlator.d.ts +3 -2
- package/dist/incident/incident.correlator.d.ts.map +1 -1
- package/dist/incident/incident.correlator.js.map +1 -1
- package/dist/incident/incident.repository.d.ts +5 -4
- package/dist/incident/incident.repository.d.ts.map +1 -1
- package/dist/incident/incident.repository.js +6 -6
- package/dist/incident/incident.repository.js.map +1 -1
- package/dist/incident/incident.service.d.ts +3 -2
- package/dist/incident/incident.service.d.ts.map +1 -1
- package/dist/incident/incident.service.js.map +1 -1
- package/dist/incident/incident.types.d.ts +3 -2
- package/dist/incident/incident.types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/source.repository.d.ts +5 -4
- package/dist/mcp/source.repository.d.ts.map +1 -1
- package/dist/mcp/source.repository.js +3 -3
- package/dist/mcp/source.repository.js.map +1 -1
- package/dist/mcp/source.service.d.ts +3 -2
- package/dist/mcp/source.service.d.ts.map +1 -1
- package/dist/mcp/source.service.js.map +1 -1
- package/dist/memory/memory.repository.d.ts +3 -2
- package/dist/memory/memory.repository.d.ts.map +1 -1
- package/dist/memory/memory.repository.js +4 -4
- package/dist/memory/memory.repository.js.map +1 -1
- package/dist/memory/memory.service.d.ts +3 -2
- package/dist/memory/memory.service.d.ts.map +1 -1
- package/dist/memory/memory.service.js +2 -2
- package/dist/memory/memory.service.js.map +1 -1
- package/dist/memory/memory.types.d.ts +4 -3
- package/dist/memory/memory.types.d.ts.map +1 -1
- package/dist/memory/memory.types.js.map +1 -1
- package/dist/tools/tool-registry.d.ts +3 -2
- package/dist/tools/tool-registry.d.ts.map +1 -1
- package/dist/tools/tool-registry.js.map +1 -1
- package/dist/types/id.types.d.ts +7 -0
- package/dist/types/id.types.d.ts.map +1 -0
- package/dist/types/id.types.js +2 -0
- package/dist/types/id.types.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/workflow/workflow.repository.js.map +1 -1
- package/dist/workflow/workflow.service.d.ts.map +1 -1
- package/dist/workflow/workflow.service.js +7 -6
- package/dist/workflow/workflow.service.js.map +1 -1
- package/dist/workflow/workflow.types.d.ts +4 -2
- package/dist/workflow/workflow.types.d.ts.map +1 -1
- package/dist/workflow/workflow.types.js.map +1 -1
- package/package.json +1 -3
- package/prisma/schema.prisma +9 -1
- package/scripts/prisma-sync.mjs +216 -13
|
@@ -7,6 +7,8 @@ import { ChatMemoryIntegration, getChatMemoryIntegrationDeps } from './chat-memo
|
|
|
7
7
|
import { MemoryDetector } from './memory-detector.js';
|
|
8
8
|
import { ResponseParser } from './response-parser.js';
|
|
9
9
|
import { getAllTools, executeTool, requiresApproval, toAnthropicTools } from '../tools/index.js';
|
|
10
|
+
import { pendingApprovalStore } from './pending-approval.store.js';
|
|
11
|
+
import { ApprovalNotFoundError } from '../common/errors.js';
|
|
10
12
|
let _deps = null;
|
|
11
13
|
export function initChatService(deps) { _deps = deps; initChatRepository(deps); }
|
|
12
14
|
export function getChatServiceDeps() { return _deps; }
|
|
@@ -65,7 +67,7 @@ export class ChatService {
|
|
|
65
67
|
const toolsCalled = [];
|
|
66
68
|
let finalContent = '';
|
|
67
69
|
let totalTokens = { prompt: 0, completion: 0, total: 0 };
|
|
68
|
-
// ── Loop
|
|
70
|
+
// ── Loop (handles multiple tool calls per iteration) ────────
|
|
69
71
|
for (let i = 0; i < ChatService.MAX_AGENT_ITERATIONS; i++) {
|
|
70
72
|
const res = await this.llmService.complete({
|
|
71
73
|
messages: llmMessages,
|
|
@@ -81,38 +83,63 @@ export class ChatService {
|
|
|
81
83
|
finalContent = res.content;
|
|
82
84
|
break;
|
|
83
85
|
}
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
const toolCalls = res.toolCalls;
|
|
87
|
+
const firstWriteIndex = toolCalls.findIndex(tc => requiresApproval(tc.name));
|
|
88
|
+
const autoExecuteCalls = firstWriteIndex === -1 ? toolCalls : toolCalls.slice(0, firstWriteIndex);
|
|
89
|
+
const writeToolCall = firstWriteIndex !== -1 ? toolCalls[firstWriteIndex] : null;
|
|
90
|
+
// Build assistant message with ALL tool_use blocks (Anthropic API requires matching tool_results)
|
|
91
|
+
const assistantBlocks = [
|
|
92
|
+
...(res.content ? [{ type: 'text', text: res.content }] : []),
|
|
93
|
+
...toolCalls.map(tc => ({ type: 'tool_use', id: tc.id, name: tc.name, input: tc.input })),
|
|
94
|
+
];
|
|
95
|
+
llmMessages.push({ role: 'assistant', content: assistantBlocks });
|
|
96
|
+
// Execute all READ tools before the first WRITE
|
|
97
|
+
const resultBlocks = [];
|
|
98
|
+
for (const tc of autoExecuteCalls) {
|
|
99
|
+
this.logger.info('Auto-executing tool', { tool: tc.name, iter: i });
|
|
100
|
+
const tStart = Date.now();
|
|
101
|
+
const result = await executeTool(tc.name, tc.input, chat.userId);
|
|
102
|
+
toolsCalled.push({ name: tc.name, durationMs: Date.now() - tStart });
|
|
103
|
+
resultBlocks.push({
|
|
104
|
+
type: 'tool_result',
|
|
105
|
+
tool_use_id: tc.id,
|
|
106
|
+
content: JSON.stringify(result.success ? (result.data ?? null) : (result.error ?? 'Unknown tool error')),
|
|
107
|
+
is_error: !result.success,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
// WRITE tool → add placeholder results and return approval
|
|
111
|
+
if (writeToolCall) {
|
|
112
|
+
resultBlocks.push({
|
|
113
|
+
type: 'tool_result',
|
|
114
|
+
tool_use_id: writeToolCall.id,
|
|
115
|
+
content: 'Awaiting user approval.',
|
|
116
|
+
});
|
|
117
|
+
for (const tc of toolCalls.slice(firstWriteIndex + 1)) {
|
|
118
|
+
resultBlocks.push({
|
|
119
|
+
type: 'tool_result',
|
|
120
|
+
tool_use_id: tc.id,
|
|
121
|
+
content: 'Skipped: preceding tool requires user approval.',
|
|
122
|
+
is_error: true,
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
llmMessages.push({ role: 'user', content: resultBlocks });
|
|
126
|
+
const tool = getAllTools().find(t => t.name === writeToolCall.name);
|
|
127
|
+
const approvalId = pendingApprovalStore.set({
|
|
128
|
+
chatId: dto.chatId, userId: chat.userId, toolName: writeToolCall.name,
|
|
129
|
+
toolArgs: writeToolCall.input, llmMessages,
|
|
130
|
+
});
|
|
131
|
+
const approvalMsg = await this.repository.addMessage(dto.chatId, 'ASSISTANT', `I want to execute **${writeToolCall.name}**: \`\`\`json\n${JSON.stringify(writeToolCall.input, null, 2)}\n\`\`\`\nPlease confirm or reject.`);
|
|
89
132
|
return {
|
|
90
133
|
message: userMessage, assistantMessage: approvalMsg, usedMemories: usedMemoryIds,
|
|
91
134
|
tokens: totalTokens, latencyMs: Date.now() - startTime,
|
|
92
135
|
pendingApproval: {
|
|
93
|
-
id:
|
|
94
|
-
toolDescription: tool?.description ||
|
|
95
|
-
conversationState: JSON.stringify(llmMessages),
|
|
136
|
+
id: approvalId, chatId: dto.chatId, toolName: writeToolCall.name,
|
|
137
|
+
toolDescription: tool?.description || writeToolCall.name, arguments: writeToolCall.input,
|
|
96
138
|
},
|
|
97
139
|
};
|
|
98
140
|
}
|
|
99
|
-
// READ
|
|
100
|
-
|
|
101
|
-
const tStart = Date.now();
|
|
102
|
-
const result = await executeTool(tc.name, tc.input, chat.userId);
|
|
103
|
-
toolsCalled.push({ name: tc.name, durationMs: Date.now() - tStart });
|
|
104
|
-
// Append tool_use + tool_result to conversation
|
|
105
|
-
llmMessages.push({
|
|
106
|
-
role: 'assistant',
|
|
107
|
-
content: [
|
|
108
|
-
...(res.content ? [{ type: 'text', text: res.content }] : []),
|
|
109
|
-
{ type: 'tool_use', id: tc.id, name: tc.name, input: tc.input },
|
|
110
|
-
],
|
|
111
|
-
});
|
|
112
|
-
llmMessages.push({
|
|
113
|
-
role: 'user',
|
|
114
|
-
content: [{ type: 'tool_result', tool_use_id: tc.id, content: JSON.stringify(result.data ?? result.error) }],
|
|
115
|
-
});
|
|
141
|
+
// All READ → push all tool_result blocks as single user message
|
|
142
|
+
llmMessages.push({ role: 'user', content: resultBlocks });
|
|
116
143
|
}
|
|
117
144
|
// Save final
|
|
118
145
|
const assistantMessage = await this.repository.addMessage(dto.chatId, 'ASSISTANT', finalContent, {
|
|
@@ -131,45 +158,105 @@ export class ChatService {
|
|
|
131
158
|
return { message: userMessage, assistantMessage, usedMemories: usedMemoryIds, tokens: totalTokens, latencyMs: Date.now() - startTime, structured };
|
|
132
159
|
}
|
|
133
160
|
// ── Approve pending tool call ──────────────────────────────────
|
|
134
|
-
async approveToolCall(chatId,
|
|
161
|
+
async approveToolCall(chatId, approvalId, userId) {
|
|
162
|
+
const approval = pendingApprovalStore.get(approvalId);
|
|
163
|
+
if (approval.chatId !== chatId)
|
|
164
|
+
throw new ApprovalNotFoundError(approvalId);
|
|
135
165
|
const startTime = Date.now();
|
|
136
|
-
const result = await executeTool(toolName,
|
|
137
|
-
this.logger.info('Approved tool executed', { tool: toolName, success: result.success });
|
|
166
|
+
const result = await executeTool(approval.toolName, approval.toolArgs, userId);
|
|
167
|
+
this.logger.info('Approved tool executed', { tool: approval.toolName, success: result.success });
|
|
138
168
|
// Resume conversation with tool result
|
|
139
|
-
const llmMessages =
|
|
169
|
+
const llmMessages = [...approval.llmMessages];
|
|
140
170
|
const toolId = `tool-${Date.now()}`;
|
|
141
|
-
llmMessages.push({ role: 'assistant', content: [{ type: 'tool_use', id: toolId, name: toolName, input:
|
|
142
|
-
llmMessages.push({
|
|
171
|
+
llmMessages.push({ role: 'assistant', content: [{ type: 'tool_use', id: toolId, name: approval.toolName, input: approval.toolArgs }] });
|
|
172
|
+
llmMessages.push({
|
|
173
|
+
role: 'user',
|
|
174
|
+
content: [{
|
|
175
|
+
type: 'tool_result',
|
|
176
|
+
tool_use_id: toolId,
|
|
177
|
+
content: JSON.stringify(result.success ? (result.data ?? null) : (result.error ?? 'Unknown tool error')),
|
|
178
|
+
is_error: !result.success,
|
|
179
|
+
}],
|
|
180
|
+
});
|
|
181
|
+
pendingApprovalStore.delete(approvalId);
|
|
143
182
|
const chat = await this.repository.findByIdWithMessages(chatId, 3);
|
|
144
183
|
const res = await this.llmService.complete({ messages: llmMessages, model: chat?.model, tools: toAnthropicTools() });
|
|
145
184
|
const assistantMessage = await this.repository.addMessage(chatId, 'ASSISTANT', res.content, { model: res.model, tokens: res.tokens.total, latencyMs: res.latencyMs });
|
|
146
|
-
const ctx = { memoriesUsed: [], toolsCalled: [{ name: toolName, durationMs: Date.now() - startTime }], modelUsed: res.model, tokens: res.tokens, latencyMs: Date.now() - startTime };
|
|
185
|
+
const ctx = { memoriesUsed: [], toolsCalled: [{ name: approval.toolName, durationMs: Date.now() - startTime }], modelUsed: res.model, tokens: res.tokens, latencyMs: Date.now() - startTime };
|
|
147
186
|
const structured = ResponseParser.parse(res.content, ctx);
|
|
148
187
|
return { message: assistantMessage, assistantMessage, usedMemories: [], tokens: res.tokens, latencyMs: Date.now() - startTime, structured };
|
|
149
188
|
}
|
|
150
|
-
|
|
189
|
+
rejectToolCall(approvalId) {
|
|
190
|
+
pendingApprovalStore.delete(approvalId);
|
|
191
|
+
}
|
|
192
|
+
// ── Stream (hybrid: non-streaming tool loop + streaming final response) ──
|
|
151
193
|
async *streamMessage(dto) {
|
|
152
194
|
const chat = await this.repository.findByIdWithMessages(dto.chatId, ChatService.MAX_CONTEXT_MESSAGES);
|
|
153
195
|
if (!chat) {
|
|
154
|
-
yield { type: 'error', error:
|
|
196
|
+
yield { type: 'error', error: 'Chat not found' };
|
|
155
197
|
return;
|
|
156
198
|
}
|
|
157
199
|
await this.repository.addMessage(dto.chatId, 'USER', dto.content);
|
|
158
200
|
const systemPrompt = buildSystemPrompt(chat.mode, { customPrompt: chat.systemPrompt ?? undefined });
|
|
159
|
-
const
|
|
201
|
+
const llmMessages = [
|
|
160
202
|
{ role: 'system', content: systemPrompt },
|
|
161
|
-
...chat.messages.map(m => ({
|
|
203
|
+
...chat.messages.map((m) => ({
|
|
204
|
+
role: m.role.toLowerCase(),
|
|
205
|
+
content: m.content,
|
|
206
|
+
})),
|
|
162
207
|
{ role: 'user', content: dto.content },
|
|
163
208
|
];
|
|
164
|
-
|
|
209
|
+
const tools = toAnthropicTools();
|
|
210
|
+
const model = dto.model || chat.model;
|
|
165
211
|
try {
|
|
166
|
-
|
|
212
|
+
// ── Phase 1: Non-streaming tool execution loop ──────────────
|
|
213
|
+
if (tools.length > 0) {
|
|
214
|
+
for (let i = 0; i < ChatService.MAX_AGENT_ITERATIONS; i++) {
|
|
215
|
+
const res = await this.llmService.complete({
|
|
216
|
+
messages: llmMessages,
|
|
217
|
+
model,
|
|
218
|
+
temperature: chat.temperature,
|
|
219
|
+
tools,
|
|
220
|
+
});
|
|
221
|
+
// No tool calls → proceed to Phase 2
|
|
222
|
+
if (!res.toolCalls || res.toolCalls.length === 0)
|
|
223
|
+
break;
|
|
224
|
+
const toolCalls = res.toolCalls;
|
|
225
|
+
// WRITE tools incompatible with SSE approval workflow
|
|
226
|
+
if (toolCalls.some(tc => requiresApproval(tc.name))) {
|
|
227
|
+
yield { type: 'error', error: 'A write tool requires approval. Please use non-streaming mode for write tool support.' };
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
// Build assistant message with all tool_use blocks
|
|
231
|
+
const assistantBlocks = [
|
|
232
|
+
...(res.content ? [{ type: 'text', text: res.content }] : []),
|
|
233
|
+
...toolCalls.map(tc => ({ type: 'tool_use', id: tc.id, name: tc.name, input: tc.input })),
|
|
234
|
+
];
|
|
235
|
+
llmMessages.push({ role: 'assistant', content: assistantBlocks });
|
|
236
|
+
// Execute all READ tools, yield status for each
|
|
237
|
+
const resultBlocks = [];
|
|
238
|
+
for (const tc of toolCalls) {
|
|
239
|
+
yield { type: 'tool_status', toolName: tc.name, content: `Executing ${tc.name}...` };
|
|
240
|
+
const result = await executeTool(tc.name, tc.input, chat.userId);
|
|
241
|
+
resultBlocks.push({
|
|
242
|
+
type: 'tool_result',
|
|
243
|
+
tool_use_id: tc.id,
|
|
244
|
+
content: JSON.stringify(result.success ? (result.data ?? null) : (result.error ?? 'Unknown tool error')),
|
|
245
|
+
is_error: !result.success,
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
llmMessages.push({ role: 'user', content: resultBlocks });
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
// ── Phase 2: Stream the final response ──────────────────────
|
|
252
|
+
let full = '';
|
|
253
|
+
for await (const chunk of this.llmService.stream({ messages: llmMessages, model, temperature: chat.temperature })) {
|
|
167
254
|
full += chunk.content;
|
|
168
255
|
yield { type: 'content', content: chunk.content };
|
|
169
256
|
if (chunk.done)
|
|
170
257
|
break;
|
|
171
258
|
}
|
|
172
|
-
await this.repository.addMessage(dto.chatId, 'ASSISTANT', full, { model
|
|
259
|
+
await this.repository.addMessage(dto.chatId, 'ASSISTANT', full, { model });
|
|
173
260
|
yield { type: 'done' };
|
|
174
261
|
}
|
|
175
262
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/chat/chat.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../src/chat/chat.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { ChatMode, MessageRole } from '@prisma/client';
|
|
6
6
|
import type { AiChat, AiChatMessage, AiMemory, MemoryType, Prisma, PrismaClient } from '@prisma/client';
|
|
7
|
+
import type { UserId } from '../types/index.js';
|
|
7
8
|
export { ChatMode, MessageRole };
|
|
8
9
|
export type { AiChat, AiChatMessage, AiMemory, MemoryType };
|
|
9
10
|
export interface LoggerLike {
|
|
@@ -18,7 +19,7 @@ export interface LoggerLike {
|
|
|
18
19
|
*/
|
|
19
20
|
export interface MemoryServiceLike {
|
|
20
21
|
searchMemories(request: {
|
|
21
|
-
userId:
|
|
22
|
+
userId: UserId;
|
|
22
23
|
query: string;
|
|
23
24
|
limit?: number;
|
|
24
25
|
scoreThreshold?: number;
|
|
@@ -26,9 +27,9 @@ export interface MemoryServiceLike {
|
|
|
26
27
|
memory: AiMemory;
|
|
27
28
|
score: number;
|
|
28
29
|
}>>;
|
|
29
|
-
getRelevantMemoriesForContext(userId:
|
|
30
|
+
getRelevantMemoriesForContext(userId: UserId, query: string, maxMemories?: number): Promise<AiMemory[]>;
|
|
30
31
|
suggestMemory(data: {
|
|
31
|
-
userId:
|
|
32
|
+
userId: UserId;
|
|
32
33
|
type: MemoryType;
|
|
33
34
|
title: string;
|
|
34
35
|
content: string;
|
|
@@ -90,7 +91,7 @@ export interface LLMServiceLike {
|
|
|
90
91
|
}>;
|
|
91
92
|
}
|
|
92
93
|
export interface CreateChatDto {
|
|
93
|
-
userId:
|
|
94
|
+
userId: UserId;
|
|
94
95
|
workspaceId?: number;
|
|
95
96
|
title?: string;
|
|
96
97
|
mode?: ChatMode;
|
|
@@ -131,14 +132,13 @@ export interface PendingToolApproval {
|
|
|
131
132
|
toolName: string;
|
|
132
133
|
toolDescription: string;
|
|
133
134
|
arguments: Record<string, unknown>;
|
|
134
|
-
/** Remaining conversation state for resuming after approval */
|
|
135
|
-
conversationState: string;
|
|
136
135
|
}
|
|
137
136
|
export interface ChatStreamChunk {
|
|
138
|
-
type: 'content' | 'memory' | 'done' | 'error';
|
|
137
|
+
type: 'content' | 'memory' | 'done' | 'error' | 'tool_status';
|
|
139
138
|
content?: string;
|
|
140
139
|
memoryId?: string;
|
|
141
140
|
error?: string;
|
|
141
|
+
toolName?: string;
|
|
142
142
|
}
|
|
143
143
|
export interface ChatContext {
|
|
144
144
|
chat: AiChat;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../src/chat/chat.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.types.js","sourceRoot":"","sources":["../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.types.js","sourceRoot":"","sources":["../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIvD,yBAAyB;AACzB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { UserId } from '../types/index.js';
|
|
2
|
+
import type { LLMMessage } from '../llm/llm.types.js';
|
|
3
|
+
export interface PendingApproval {
|
|
4
|
+
id: string;
|
|
5
|
+
chatId: string;
|
|
6
|
+
userId: UserId;
|
|
7
|
+
toolName: string;
|
|
8
|
+
toolArgs: Record<string, unknown>;
|
|
9
|
+
llmMessages: LLMMessage[];
|
|
10
|
+
createdAt: number;
|
|
11
|
+
}
|
|
12
|
+
export declare const pendingApprovalStore: {
|
|
13
|
+
set(data: Omit<PendingApproval, "id" | "createdAt">): string;
|
|
14
|
+
get(id: string): PendingApproval;
|
|
15
|
+
delete(id: string): void;
|
|
16
|
+
/** Visible for testing */
|
|
17
|
+
clear(): void;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=pending-approval.store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pending-approval.store.d.ts","sourceRoot":"","sources":["../../src/chat/pending-approval.store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD,eAAO,MAAM,oBAAoB;cACrB,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG,MAAM;YAepD,MAAM,GAAG,eAAe;eAMrB,MAAM,GAAG,IAAI;IASxB,0BAA0B;aACjB,IAAI;CAKd,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { randomUUID } from 'node:crypto';
|
|
2
|
+
import { ApprovalNotFoundError } from '../common/errors.js';
|
|
3
|
+
const DEFAULT_TTL_MS = 10 * 60 * 1000; // 10 minutes
|
|
4
|
+
const store = new Map();
|
|
5
|
+
const timers = new Map();
|
|
6
|
+
export const pendingApprovalStore = {
|
|
7
|
+
set(data) {
|
|
8
|
+
const id = randomUUID();
|
|
9
|
+
const approval = { ...data, id, createdAt: Date.now() };
|
|
10
|
+
store.set(id, approval);
|
|
11
|
+
const timer = setTimeout(() => {
|
|
12
|
+
store.delete(id);
|
|
13
|
+
timers.delete(id);
|
|
14
|
+
}, DEFAULT_TTL_MS);
|
|
15
|
+
timer.unref();
|
|
16
|
+
timers.set(id, timer);
|
|
17
|
+
return id;
|
|
18
|
+
},
|
|
19
|
+
get(id) {
|
|
20
|
+
const approval = store.get(id);
|
|
21
|
+
if (!approval)
|
|
22
|
+
throw new ApprovalNotFoundError(id);
|
|
23
|
+
return approval;
|
|
24
|
+
},
|
|
25
|
+
delete(id) {
|
|
26
|
+
store.delete(id);
|
|
27
|
+
const timer = timers.get(id);
|
|
28
|
+
if (timer) {
|
|
29
|
+
clearTimeout(timer);
|
|
30
|
+
timers.delete(id);
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
/** Visible for testing */
|
|
34
|
+
clear() {
|
|
35
|
+
for (const timer of timers.values())
|
|
36
|
+
clearTimeout(timer);
|
|
37
|
+
store.clear();
|
|
38
|
+
timers.clear();
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=pending-approval.store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pending-approval.store.js","sourceRoot":"","sources":["../../src/chat/pending-approval.store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAY5D,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAEpD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA2B,CAAC;AACjD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyC,CAAC;AAEhE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,GAAG,CAAC,IAA+C;QACjD,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAoB,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACzE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAExB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC,EAAE,cAAc,CAAC,CAAC;QACnB,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAEtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACnD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,EAAU;QACf,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,KAAK;QACH,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QACzD,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.prompts.d.ts","sourceRoot":"","sources":["../../../src/chat/prompts/system.prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"system.prompts.d.ts","sourceRoot":"","sources":["../../../src/chat/prompts/system.prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA0DD,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAgCjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAS1F;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GACjD,MAAM,CAQR"}
|
|
@@ -24,14 +24,17 @@ function buildToolListSection() {
|
|
|
24
24
|
function buildBasePrompt(options = {}) {
|
|
25
25
|
const name = options.agentName ?? 'MegaAgent';
|
|
26
26
|
const desc = options.agentDescription ?? 'the AI pilot for the AI-WOS manufacturing management system';
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
## Long-term Memory (VectorDB)
|
|
27
|
+
const tools = getAllTools();
|
|
28
|
+
const hasMemoryTools = tools.some(t => t.name === 'search_memory' || t.name === 'create_memory');
|
|
29
|
+
const memorySection = hasMemoryTools
|
|
30
|
+
? `\n\n## Long-term Memory (VectorDB)
|
|
32
31
|
- You have persistent memory. The system searches it before each response.
|
|
33
32
|
- To save something important, write: [MEMORY] <content>
|
|
34
|
-
- Save: key decisions, discovered patterns, important facts, insights
|
|
33
|
+
- Save: key decisions, discovered patterns, important facts, insights`
|
|
34
|
+
: '';
|
|
35
|
+
return `You are ${name} — ${desc}.
|
|
36
|
+
|
|
37
|
+
${buildToolListSection()}${memorySection}
|
|
35
38
|
|
|
36
39
|
## Artifacts
|
|
37
40
|
- When you produce tables, reports or structured data, they can be saved as Artifacts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.prompts.js","sourceRoot":"","sources":["../../../src/chat/prompts/system.prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAQ3D,SAAS,oBAAoB;IAC3B,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,uCAAuC,CAAC;IAEvE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAa,CAAC,eAAe,CAAC,CAAC;IAE1C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACnE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC1E,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;IAClF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,eAAe,CAAC,UAAkC,EAAE;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,IAAI,WAAW,CAAC;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,gBAAgB,IAAI,6DAA6D,CAAC;IAEvG,OAAO,WAAW,IAAI,MAAM,IAAI;;EAEhC,oBAAoB,EAAE
|
|
1
|
+
{"version":3,"file":"system.prompts.js","sourceRoot":"","sources":["../../../src/chat/prompts/system.prompts.ts"],"names":[],"mappings":"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"}
|
package/dist/common/errors.d.ts
CHANGED
|
@@ -57,4 +57,7 @@ export declare class QdrantError extends MegaAgentError {
|
|
|
57
57
|
export declare class QdrantConnectionError extends MegaAgentError {
|
|
58
58
|
constructor();
|
|
59
59
|
}
|
|
60
|
+
export declare class ApprovalNotFoundError extends MegaAgentError {
|
|
61
|
+
constructor(approvalId: string);
|
|
62
|
+
}
|
|
60
63
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,cAAe,SAAQ,KAAK;aAGrB,IAAI,EAAE,MAAM;aACZ,UAAU,EAAE,MAAM;aAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjD,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,MAAY,EACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAOnD,MAAM;;;;;CAOP;AAGD,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,QAAQ,EAAE,MAAM;CAG7B;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG/D;AAED,qBAAa,cAAe,SAAQ,cAAc;gBACpC,OAAO,EAAE,MAAM;CAG5B;AAGD,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,SAAS,EAAE,MAAM;CAG9B;AAGD,qBAAa,QAAS,SAAQ,cAAc;gBAC9B,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAQlD;AAED,qBAAa,sBAAuB,SAAQ,cAAc;gBAC5C,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAQhD;AAGD,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,uBAAwB,SAAQ,cAAc;gBAC7C,MAAM,EAAE,MAAM,EAAE;CAG7B;AAGD,qBAAa,kBAAmB,SAAQ,cAAc;gBACxC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAClC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAGD,qBAAa,WAAY,SAAQ,cAAc;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;;CAIxD"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,cAAe,SAAQ,KAAK;aAGrB,IAAI,EAAE,MAAM;aACZ,UAAU,EAAE,MAAM;aAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjD,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,MAAY,EACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAOnD,MAAM;;;;;CAOP;AAGD,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,QAAQ,EAAE,MAAM;CAG7B;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG/D;AAED,qBAAa,cAAe,SAAQ,cAAc;gBACpC,OAAO,EAAE,MAAM;CAG5B;AAGD,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,MAAM,EAAE,MAAM;CAG3B;AAED,qBAAa,mBAAoB,SAAQ,cAAc;gBACzC,SAAS,EAAE,MAAM;CAG9B;AAGD,qBAAa,QAAS,SAAQ,cAAc;gBAC9B,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,iBAAkB,SAAQ,cAAc;gBACvC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAQlD;AAED,qBAAa,sBAAuB,SAAQ,cAAc;gBAC5C,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAQhD;AAGD,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,uBAAwB,SAAQ,cAAc;gBAC7C,MAAM,EAAE,MAAM,EAAE;CAG7B;AAGD,qBAAa,kBAAmB,SAAQ,cAAc;gBACxC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAED,qBAAa,YAAa,SAAQ,cAAc;gBAClC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG9C;AAGD,qBAAa,WAAY,SAAQ,cAAc;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,cAAc;;CAIxD;AAGD,qBAAa,qBAAsB,SAAQ,cAAc;gBAC3C,UAAU,EAAE,MAAM;CAG/B"}
|
package/dist/common/errors.js
CHANGED
|
@@ -102,4 +102,10 @@ export class QdrantConnectionError extends MegaAgentError {
|
|
|
102
102
|
super('Cannot connect to Qdrant', 'QDRANT_CONNECTION_ERROR', 503);
|
|
103
103
|
}
|
|
104
104
|
}
|
|
105
|
+
// Approval Errors
|
|
106
|
+
export class ApprovalNotFoundError extends MegaAgentError {
|
|
107
|
+
constructor(approvalId) {
|
|
108
|
+
super(`Pending approval not found or expired: ${approvalId}`, 'APPROVAL_NOT_FOUND', 404);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
105
111
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/common/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ export declare class ChatController {
|
|
|
22
22
|
/** POST /api/chat/:id/approve */
|
|
23
23
|
approveToolCall(req: Request, res: Response): Promise<void>;
|
|
24
24
|
/** POST /api/chat/:id/reject */
|
|
25
|
-
rejectToolCall(
|
|
25
|
+
rejectToolCall(req: Request, res: Response): Promise<void>;
|
|
26
26
|
private handleStream;
|
|
27
27
|
private mapChat;
|
|
28
28
|
private mapMessage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.controller.d.ts","sourceRoot":"","sources":["../../src/http/chat.controller.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAErD,qBAAqB;IACf,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB5D,oBAAoB;IACd,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3D,wBAAwB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,0BAA0B;IACpB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5D,2BAA2B;IACrB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5D,kCAAkC;IAC5B,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC7D,iCAAiC;IAC3B,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"chat.controller.d.ts","sourceRoot":"","sources":["../../src/http/chat.controller.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAG3D,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAErD,qBAAqB;IACf,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB5D,oBAAoB;IACd,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3D,wBAAwB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,0BAA0B;IACpB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5D,2BAA2B;IACrB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5D,kCAAkC;IAC5B,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC7D,iCAAiC;IAC3B,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBjE,gCAAgC;IAC1B,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YAelD,YAAY;IAwB1B,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,UAAU;CAWnB"}
|
|
@@ -102,9 +102,14 @@ export class ChatController {
|
|
|
102
102
|
}
|
|
103
103
|
/** POST /api/chat/:id/approve */
|
|
104
104
|
async approveToolCall(req, res) {
|
|
105
|
-
const
|
|
105
|
+
const existing = await this.chatService.getChat(req.params.id);
|
|
106
|
+
if (!existing || existing.userId !== req.user.id) {
|
|
107
|
+
res.status(404).json({ success: false, error: 'Chat not found' });
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
const { approvalId } = req.body;
|
|
106
111
|
const userId = req.user.id;
|
|
107
|
-
const result = await this.chatService.approveToolCall(req.params.id,
|
|
112
|
+
const result = await this.chatService.approveToolCall(req.params.id, approvalId, userId);
|
|
108
113
|
res.json({
|
|
109
114
|
success: true,
|
|
110
115
|
data: {
|
|
@@ -116,7 +121,14 @@ export class ChatController {
|
|
|
116
121
|
});
|
|
117
122
|
}
|
|
118
123
|
/** POST /api/chat/:id/reject */
|
|
119
|
-
async rejectToolCall(
|
|
124
|
+
async rejectToolCall(req, res) {
|
|
125
|
+
const existing = await this.chatService.getChat(req.params.id);
|
|
126
|
+
if (!existing || existing.userId !== req.user.id) {
|
|
127
|
+
res.status(404).json({ success: false, error: 'Chat not found' });
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const { approvalId } = req.body;
|
|
131
|
+
this.chatService.rejectToolCall(approvalId);
|
|
120
132
|
res.json({ success: true, data: { message: 'Tool call rejected by user.' } });
|
|
121
133
|
}
|
|
122
134
|
// ── SSE Streaming ──────────────────────────────────────────────
|