couchloop-eq-mcp 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -4
- package/dist/clients/shrinkChatClient.d.ts +10 -0
- package/dist/clients/shrinkChatClient.d.ts.map +1 -1
- package/dist/clients/shrinkChatClient.js +4 -0
- package/dist/clients/shrinkChatClient.js.map +1 -1
- package/dist/db/client.d.ts.map +1 -1
- package/dist/db/client.js +5 -3
- package/dist/db/client.js.map +1 -1
- package/dist/db/schema.d.ts +363 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +47 -0
- package/dist/db/schema.js.map +1 -1
- package/dist/governance/config.d.ts +66 -0
- package/dist/governance/config.d.ts.map +1 -0
- package/dist/governance/config.js +238 -0
- package/dist/governance/config.js.map +1 -0
- package/dist/governance/detectors/hallucination.d.ts +61 -0
- package/dist/governance/detectors/hallucination.d.ts.map +1 -0
- package/dist/governance/detectors/hallucination.js +338 -0
- package/dist/governance/detectors/hallucination.js.map +1 -0
- package/dist/governance/detectors/inconsistency.d.ts +99 -0
- package/dist/governance/detectors/inconsistency.d.ts.map +1 -0
- package/dist/governance/detectors/inconsistency.js +548 -0
- package/dist/governance/detectors/inconsistency.js.map +1 -0
- package/dist/governance/detectors/toneDrift.d.ts +63 -0
- package/dist/governance/detectors/toneDrift.d.ts.map +1 -0
- package/dist/governance/detectors/toneDrift.js +421 -0
- package/dist/governance/detectors/toneDrift.js.map +1 -0
- package/dist/governance/detectors/unsafeReasoning.d.ts +54 -0
- package/dist/governance/detectors/unsafeReasoning.d.ts.map +1 -0
- package/dist/governance/detectors/unsafeReasoning.js +473 -0
- package/dist/governance/detectors/unsafeReasoning.js.map +1 -0
- package/dist/governance/evaluationEngine.d.ts +112 -0
- package/dist/governance/evaluationEngine.d.ts.map +1 -0
- package/dist/governance/evaluationEngine.js +265 -0
- package/dist/governance/evaluationEngine.js.map +1 -0
- package/dist/governance/intervention.d.ts +81 -0
- package/dist/governance/intervention.d.ts.map +1 -0
- package/dist/governance/intervention.js +405 -0
- package/dist/governance/intervention.js.map +1 -0
- package/dist/server/chatgpt-mcp.d.ts +10 -0
- package/dist/server/chatgpt-mcp.d.ts.map +1 -0
- package/dist/server/chatgpt-mcp.js +233 -0
- package/dist/server/chatgpt-mcp.js.map +1 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +94 -3
- package/dist/server/index.js.map +1 -1
- package/dist/server/middleware/localNetworkAccess.d.ts +16 -0
- package/dist/server/middleware/localNetworkAccess.d.ts.map +1 -0
- package/dist/server/middleware/localNetworkAccess.js +97 -0
- package/dist/server/middleware/localNetworkAccess.js.map +1 -0
- package/dist/server/sse.d.ts +16 -0
- package/dist/server/sse.d.ts.map +1 -0
- package/dist/server/sse.js +215 -0
- package/dist/server/sse.js.map +1 -0
- package/dist/tools/checkpoint.d.ts.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/insight.d.ts +1 -0
- package/dist/tools/insight.d.ts.map +1 -1
- package/dist/tools/sendMessage-complex-backup.d.ts +6 -0
- package/dist/tools/sendMessage-complex-backup.d.ts.map +1 -0
- package/dist/tools/sendMessage-complex-backup.js +545 -0
- package/dist/tools/sendMessage-complex-backup.js.map +1 -0
- package/dist/tools/sendMessage-revised.d.ts +11 -0
- package/dist/tools/sendMessage-revised.d.ts.map +1 -0
- package/dist/tools/sendMessage-revised.js +429 -0
- package/dist/tools/sendMessage-revised.js.map +1 -0
- package/dist/tools/sendMessage-truly-simple.d.ts +8 -0
- package/dist/tools/sendMessage-truly-simple.d.ts.map +1 -0
- package/dist/tools/sendMessage-truly-simple.js +299 -0
- package/dist/tools/sendMessage-truly-simple.js.map +1 -0
- package/dist/tools/sendMessage.d.ts +4 -2
- package/dist/tools/sendMessage.d.ts.map +1 -1
- package/dist/tools/sendMessage.js +240 -186
- package/dist/tools/sendMessage.js.map +1 -1
- package/dist/tools/session.d.ts.map +1 -1
- package/dist/tools/session.js +35 -29
- package/dist/tools/session.js.map +1 -1
- package/dist/types/auth.d.ts +9 -1
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/auth.js +37 -10
- package/dist/types/auth.js.map +1 -1
- package/dist/types/insight.d.ts +10 -0
- package/dist/types/insight.d.ts.map +1 -1
- package/dist/types/session.d.ts +10 -0
- package/dist/types/session.d.ts.map +1 -1
- package/package.json +10 -5
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { eq, desc } from 'drizzle-orm';
|
|
3
|
+
import { getDb } from '../db/client.js';
|
|
4
|
+
import { getShrinkChatClient } from '../clients/shrinkChatClient.js';
|
|
5
|
+
import { sessions, checkpoints, journeys, crisisEvents, governanceEvaluations } from '../db/schema.js';
|
|
6
|
+
import { logger } from '../utils/logger.js';
|
|
7
|
+
import { NotFoundError } from '../utils/errors.js';
|
|
8
|
+
import { errorHandler, ErrorType } from '../utils/errorHandler.js';
|
|
9
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
10
|
+
// Input validation schema
|
|
11
|
+
const SendMessageSchema = z.object({
|
|
12
|
+
session_id: z.string().uuid(),
|
|
13
|
+
message: z.string().min(1).max(10000),
|
|
14
|
+
conversation_type: z.string().optional(),
|
|
15
|
+
system_prompt: z.string().optional(),
|
|
16
|
+
save_checkpoint: z.boolean().optional(),
|
|
17
|
+
checkpoint_key: z.string().optional(),
|
|
18
|
+
advance_step: z.boolean().optional(),
|
|
19
|
+
journey_id: z.string().uuid().optional(),
|
|
20
|
+
});
|
|
21
|
+
/**
|
|
22
|
+
* TRULY SIMPLE sendMessage
|
|
23
|
+
*
|
|
24
|
+
* Just use shrink-chat's existing crisis detection to trigger self-correction.
|
|
25
|
+
* No additional patterns. No complex logic.
|
|
26
|
+
*/
|
|
27
|
+
export async function sendMessage(args) {
|
|
28
|
+
const startTime = Date.now();
|
|
29
|
+
try {
|
|
30
|
+
const input = SendMessageSchema.parse(args);
|
|
31
|
+
const db = getDb();
|
|
32
|
+
logger.info(`Sending message for session ${input.session_id}`);
|
|
33
|
+
// Get session
|
|
34
|
+
const [session] = await db
|
|
35
|
+
.select()
|
|
36
|
+
.from(sessions)
|
|
37
|
+
.where(eq(sessions.id, input.session_id))
|
|
38
|
+
.limit(1);
|
|
39
|
+
if (!session) {
|
|
40
|
+
throw new NotFoundError(`Session ${input.session_id} not found`);
|
|
41
|
+
}
|
|
42
|
+
// Get or create thread ID
|
|
43
|
+
let threadId = session.threadId;
|
|
44
|
+
if (!threadId) {
|
|
45
|
+
threadId = uuidv4();
|
|
46
|
+
await db.update(sessions)
|
|
47
|
+
.set({ threadId })
|
|
48
|
+
.where(eq(sessions.id, input.session_id));
|
|
49
|
+
}
|
|
50
|
+
// Build context (keeping existing context building)
|
|
51
|
+
const journey = session.journeyId
|
|
52
|
+
? await db.select().from(journeys).where(eq(journeys.id, session.journeyId)).limit(1).then(res => res[0])
|
|
53
|
+
: null;
|
|
54
|
+
const memoryContext = {
|
|
55
|
+
userId: session.userId || 'anonymous',
|
|
56
|
+
conversationType: input.conversation_type || 'supportive',
|
|
57
|
+
sessionGoals: journey?.metadata?.goals || [],
|
|
58
|
+
emotionalState: session.metadata?.emotionalState || 'neutral',
|
|
59
|
+
};
|
|
60
|
+
const enhancedContext = {
|
|
61
|
+
journeyStep: journey && session.currentStep < journey.steps.length
|
|
62
|
+
? journey.steps[session.currentStep]
|
|
63
|
+
: null,
|
|
64
|
+
progressIndicators: session.metadata?.progressIndicators || [],
|
|
65
|
+
};
|
|
66
|
+
// Get conversation history
|
|
67
|
+
const previousCheckpoints = await db
|
|
68
|
+
.select()
|
|
69
|
+
.from(checkpoints)
|
|
70
|
+
.where(eq(checkpoints.sessionId, session.id))
|
|
71
|
+
.orderBy(desc(checkpoints.createdAt));
|
|
72
|
+
const history = previousCheckpoints
|
|
73
|
+
.filter(cp => cp.value && typeof cp.value === 'object' && 'message' in cp.value && 'response' in cp.value)
|
|
74
|
+
.flatMap(cp => {
|
|
75
|
+
const val = cp.value;
|
|
76
|
+
return [
|
|
77
|
+
{ role: 'user', content: val.message },
|
|
78
|
+
{ role: 'assistant', content: val.response },
|
|
79
|
+
];
|
|
80
|
+
})
|
|
81
|
+
.slice(-10);
|
|
82
|
+
// Save user message
|
|
83
|
+
await db.insert(checkpoints).values({
|
|
84
|
+
sessionId: session.id,
|
|
85
|
+
stepId: session.currentStep.toString(),
|
|
86
|
+
key: 'user-message',
|
|
87
|
+
value: {
|
|
88
|
+
message: input.message,
|
|
89
|
+
messageId: uuidv4(),
|
|
90
|
+
role: 'user',
|
|
91
|
+
timestamp: new Date().toISOString(),
|
|
92
|
+
},
|
|
93
|
+
});
|
|
94
|
+
// Get shrink-chat client
|
|
95
|
+
const client = getShrinkChatClient();
|
|
96
|
+
// Send message
|
|
97
|
+
let response = await client.sendMessage(threadId, input.message, {
|
|
98
|
+
memoryContext,
|
|
99
|
+
enhancedContext,
|
|
100
|
+
history,
|
|
101
|
+
systemPrompt: input.system_prompt,
|
|
102
|
+
conversationType: input.conversation_type,
|
|
103
|
+
idempotencyKey: uuidv4(),
|
|
104
|
+
});
|
|
105
|
+
// === ULTRA SIMPLE SELF-CORRECTION ===
|
|
106
|
+
// Just use shrink-chat's own crisis detection!
|
|
107
|
+
let selfCorrected = false;
|
|
108
|
+
// Debug log the full response to see what we're getting
|
|
109
|
+
logger.info('[DEBUG] Full shrink-chat response:', JSON.stringify({
|
|
110
|
+
crisis_requires_intervention: response.crisis_requires_intervention,
|
|
111
|
+
crisis_level: response.crisis_level,
|
|
112
|
+
crisisLevel: response.crisisLevel,
|
|
113
|
+
crisis_confidence: response.crisis_confidence,
|
|
114
|
+
crisis_indicators: response.crisis_indicators,
|
|
115
|
+
crisis_suggested_actions: response.crisis_suggested_actions
|
|
116
|
+
}, null, 2));
|
|
117
|
+
// Check if we need intervention (check both field names and crisis level)
|
|
118
|
+
const needsIntervention = response.crisis_requires_intervention === true ||
|
|
119
|
+
(response.crisis_level !== undefined && response.crisis_level !== 'none' &&
|
|
120
|
+
(typeof response.crisis_level === 'number' ? response.crisis_level >= 8 : false));
|
|
121
|
+
// If shrink-chat says intervention is required, ask for revision
|
|
122
|
+
if (needsIntervention) {
|
|
123
|
+
logger.info(`[Self-Correction] Shrink-chat detected crisis requiring intervention`);
|
|
124
|
+
// Log the initial response
|
|
125
|
+
await logGovernanceEvaluation(session.id, response.content || response.reply || '', 'revision_requested', `Crisis level ${response.crisis_level}: ${response.crisis_indicators?.join(', ') || 'intervention required'}`, response.crisis_confidence || 0);
|
|
126
|
+
// Ask LLM to revise based on shrink-chat's own assessment
|
|
127
|
+
const revisionPrompt = `The previous response may escalate the user's distress (crisis level: ${response.crisis_level}).
|
|
128
|
+
Please provide a safer, more supportive response to: "${input.message}"
|
|
129
|
+
|
|
130
|
+
Suggested approach: ${response.crisis_suggested_actions?.join(', ') || 'De-escalate, validate, provide resources'}`;
|
|
131
|
+
// Get revised response
|
|
132
|
+
const revisedResponse = await client.sendMessage(threadId, revisionPrompt, {
|
|
133
|
+
memoryContext,
|
|
134
|
+
enhancedContext,
|
|
135
|
+
history: [...history,
|
|
136
|
+
{ role: 'user', content: input.message },
|
|
137
|
+
{ role: 'assistant', content: response.content || response.reply || '' }
|
|
138
|
+
],
|
|
139
|
+
systemPrompt: 'Provide a supportive, safe response that de-escalates distress.',
|
|
140
|
+
conversationType: 'revision',
|
|
141
|
+
idempotencyKey: uuidv4(),
|
|
142
|
+
});
|
|
143
|
+
// Log revised response
|
|
144
|
+
await logGovernanceEvaluation(session.id, revisedResponse.content || revisedResponse.reply || '', 'revision_applied', 'Self-corrected based on crisis detection', revisedResponse.crisis_confidence || 0);
|
|
145
|
+
response = revisedResponse;
|
|
146
|
+
selfCorrected = true;
|
|
147
|
+
logger.info(`[Self-Correction] Applied revised response`);
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
// Log approved response
|
|
151
|
+
await logGovernanceEvaluation(session.id, response.content || response.reply || '', 'approved', 'No intervention required', response.crisis_confidence || 0);
|
|
152
|
+
}
|
|
153
|
+
// Save assistant response
|
|
154
|
+
const responseContent = response.content || response.reply || response.response_text || '';
|
|
155
|
+
await db.insert(checkpoints).values({
|
|
156
|
+
sessionId: session.id,
|
|
157
|
+
stepId: session.currentStep.toString(),
|
|
158
|
+
key: 'assistant-message',
|
|
159
|
+
value: {
|
|
160
|
+
message: responseContent,
|
|
161
|
+
messageId: response.messageId || uuidv4(),
|
|
162
|
+
role: 'assistant',
|
|
163
|
+
crisisLevel: response.crisis_level || response.crisisLevel,
|
|
164
|
+
selfCorrected,
|
|
165
|
+
timestamp: new Date().toISOString(),
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
// Handle high crisis even after revision (for resources/escalation)
|
|
169
|
+
if (response.crisis_level && (typeof response.crisis_level === 'string' ? response.crisis_level !== 'none' : response.crisis_level > 7)) {
|
|
170
|
+
await handleCrisisDetection(session.id, threadId, response);
|
|
171
|
+
}
|
|
172
|
+
// Additional checkpoint if requested
|
|
173
|
+
if (input.save_checkpoint) {
|
|
174
|
+
await db.insert(checkpoints).values({
|
|
175
|
+
sessionId: session.id,
|
|
176
|
+
stepId: session.currentStep.toString(),
|
|
177
|
+
key: input.checkpoint_key || 'message_response',
|
|
178
|
+
value: {
|
|
179
|
+
message: input.message,
|
|
180
|
+
response: responseContent,
|
|
181
|
+
selfCorrected,
|
|
182
|
+
timestamp: new Date().toISOString(),
|
|
183
|
+
},
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
// Advance step if requested
|
|
187
|
+
if (input.advance_step && session.journeyId) {
|
|
188
|
+
await db.update(sessions)
|
|
189
|
+
.set({ currentStep: session.currentStep + 1, updatedAt: new Date() })
|
|
190
|
+
.where(eq(sessions.id, session.id));
|
|
191
|
+
}
|
|
192
|
+
// Return response
|
|
193
|
+
return {
|
|
194
|
+
success: true,
|
|
195
|
+
content: responseContent,
|
|
196
|
+
messageId: response.messageId,
|
|
197
|
+
metadata: {
|
|
198
|
+
crisisDetected: response.crisis_requires_intervention || (response.crisis_level && response.crisis_level !== 'none' && (typeof response.crisis_level === 'number' ? response.crisis_level >= 8 : false)),
|
|
199
|
+
crisisLevel: response.crisis_level || response.crisisLevel,
|
|
200
|
+
crisisConfidence: response.crisis_confidence,
|
|
201
|
+
crisisIndicators: response.crisis_indicators,
|
|
202
|
+
sessionId: session.id,
|
|
203
|
+
threadId,
|
|
204
|
+
selfCorrected,
|
|
205
|
+
currentStep: input.advance_step ? session.currentStep + 1 : session.currentStep,
|
|
206
|
+
},
|
|
207
|
+
timestamp: new Date().toISOString(),
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
catch (error) {
|
|
211
|
+
logger.error('Error in sendMessage:', error);
|
|
212
|
+
const handledError = errorHandler.handle(error);
|
|
213
|
+
if (handledError.type === ErrorType.EXTERNAL_SERVICE) {
|
|
214
|
+
return await handleLocalFallback(args);
|
|
215
|
+
}
|
|
216
|
+
throw handledError;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Log governance evaluation - SIMPLIFIED
|
|
221
|
+
*/
|
|
222
|
+
async function logGovernanceEvaluation(sessionId, content, action, reason, confidence) {
|
|
223
|
+
const db = getDb();
|
|
224
|
+
try {
|
|
225
|
+
await db.insert(governanceEvaluations).values({
|
|
226
|
+
id: uuidv4(),
|
|
227
|
+
sessionId,
|
|
228
|
+
draftResponse: content.substring(0, 1000),
|
|
229
|
+
evaluationResults: {
|
|
230
|
+
action,
|
|
231
|
+
reason,
|
|
232
|
+
confidence,
|
|
233
|
+
timestamp: new Date().toISOString(),
|
|
234
|
+
method: 'shrink-chat-crisis-detection'
|
|
235
|
+
},
|
|
236
|
+
interventionApplied: action === 'revision_requested' ? 'revision' : null,
|
|
237
|
+
finalResponse: action === 'revision_applied' ? content.substring(0, 1000) : null,
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
catch (error) {
|
|
241
|
+
logger.error('Failed to log governance evaluation:', error);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Handle crisis detection - keep existing
|
|
246
|
+
*/
|
|
247
|
+
async function handleCrisisDetection(sessionId, threadId, response) {
|
|
248
|
+
const db = getDb();
|
|
249
|
+
await db.insert(crisisEvents).values({
|
|
250
|
+
id: uuidv4(),
|
|
251
|
+
sessionId,
|
|
252
|
+
threadId,
|
|
253
|
+
crisisLevel: typeof response.crisis_level === 'number' ? response.crisis_level : 10,
|
|
254
|
+
response: response.content || response.reply,
|
|
255
|
+
resources: response.resources || [],
|
|
256
|
+
escalationPath: response.escalationPath,
|
|
257
|
+
handled: true,
|
|
258
|
+
});
|
|
259
|
+
logger.info(`Crisis event logged for session ${sessionId}`);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Fallback handler - keep existing
|
|
263
|
+
*/
|
|
264
|
+
async function handleLocalFallback(args) {
|
|
265
|
+
const input = SendMessageSchema.parse(args);
|
|
266
|
+
const db = getDb();
|
|
267
|
+
const [session] = await db
|
|
268
|
+
.select()
|
|
269
|
+
.from(sessions)
|
|
270
|
+
.where(eq(sessions.id, input.session_id))
|
|
271
|
+
.limit(1);
|
|
272
|
+
if (!session) {
|
|
273
|
+
return { success: false, error: 'Session not found' };
|
|
274
|
+
}
|
|
275
|
+
const fallbackContent = "I understand you're trying to communicate. The therapeutic service is temporarily unavailable, but your message has been noted. Please try again shortly.";
|
|
276
|
+
await db.insert(checkpoints).values({
|
|
277
|
+
sessionId: session.id,
|
|
278
|
+
stepId: session.currentStep.toString(),
|
|
279
|
+
key: 'assistant-message',
|
|
280
|
+
value: {
|
|
281
|
+
message: fallbackContent,
|
|
282
|
+
messageId: uuidv4(),
|
|
283
|
+
role: 'assistant',
|
|
284
|
+
fallbackMode: true,
|
|
285
|
+
timestamp: new Date().toISOString(),
|
|
286
|
+
},
|
|
287
|
+
});
|
|
288
|
+
return {
|
|
289
|
+
success: true,
|
|
290
|
+
content: fallbackContent,
|
|
291
|
+
messageId: uuidv4(),
|
|
292
|
+
metadata: {
|
|
293
|
+
fallbackMode: true,
|
|
294
|
+
sessionId: session.id,
|
|
295
|
+
currentStep: session.currentStep,
|
|
296
|
+
},
|
|
297
|
+
};
|
|
298
|
+
}
|
|
299
|
+
//# sourceMappingURL=sendMessage-truly-simple.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendMessage-truly-simple.js","sourceRoot":"","sources":["../../src/tools/sendMessage-truly-simple.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
2
|
+
* TRULY SIMPLE sendMessage
|
|
3
|
+
*
|
|
4
|
+
* Just use shrink-chat's existing crisis detection to trigger self-correction.
|
|
5
|
+
* No additional patterns. No complex logic.
|
|
4
6
|
*/
|
|
5
7
|
export declare function sendMessage(args: unknown): Promise<any>;
|
|
6
8
|
//# sourceMappingURL=sendMessage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendMessage.d.ts","sourceRoot":"","sources":["../../src/tools/sendMessage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sendMessage.d.ts","sourceRoot":"","sources":["../../src/tools/sendMessage.ts"],"names":[],"mappings":"AAsBA;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,OAAO,gBAgR9C"}
|