@monoes/monomindcli 2.7.4 → 2.7.5

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 (89) hide show
  1. package/bin/cli.js +17 -1
  2. package/dist/src/commands/doctor-project-checks.d.ts +3 -0
  3. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  4. package/dist/src/commands/doctor-project-checks.js +81 -8
  5. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  6. package/dist/src/commands/doctor.d.ts.map +1 -1
  7. package/dist/src/commands/doctor.js +16 -2
  8. package/dist/src/commands/doctor.js.map +1 -1
  9. package/dist/src/commands/memory-crud.d.ts.map +1 -1
  10. package/dist/src/commands/memory-crud.js +15 -5
  11. package/dist/src/commands/memory-crud.js.map +1 -1
  12. package/dist/src/commands/security-misc.d.ts.map +1 -1
  13. package/dist/src/commands/security-misc.js +7 -2
  14. package/dist/src/commands/security-misc.js.map +1 -1
  15. package/dist/src/init/helpers-generator.d.ts.map +1 -1
  16. package/dist/src/init/helpers-generator.js +5 -0
  17. package/dist/src/init/helpers-generator.js.map +1 -1
  18. package/dist/src/mcp-client.d.ts.map +1 -1
  19. package/dist/src/mcp-client.js +0 -2
  20. package/dist/src/mcp-client.js.map +1 -1
  21. package/dist/src/mcp-tools/agent-tools.js +1 -1
  22. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  23. package/dist/src/mcp-tools/embeddings-tools.d.ts +2 -0
  24. package/dist/src/mcp-tools/embeddings-tools.d.ts.map +1 -1
  25. package/dist/src/mcp-tools/embeddings-tools.js +11 -1
  26. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  27. package/dist/src/mcp-tools/guidance-tools.js +17 -17
  28. package/dist/src/mcp-tools/guidance-tools.js.map +1 -1
  29. package/dist/src/mcp-tools/hive-mind-tools.d.ts +2 -0
  30. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  31. package/dist/src/mcp-tools/hive-mind-tools.js +14 -2
  32. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  33. package/dist/src/mcp-tools/index.d.ts +0 -1
  34. package/dist/src/mcp-tools/index.d.ts.map +1 -1
  35. package/dist/src/mcp-tools/index.js +0 -1
  36. package/dist/src/mcp-tools/index.js.map +1 -1
  37. package/dist/src/mcp-tools/monograph-tools.d.ts.map +1 -1
  38. package/dist/src/mcp-tools/monograph-tools.js +1 -2
  39. package/dist/src/mcp-tools/monograph-tools.js.map +1 -1
  40. package/dist/src/mcp-tools/neural-tools.js +1 -1
  41. package/dist/src/mcp-tools/neural-tools.js.map +1 -1
  42. package/dist/src/mcp-tools/swarm-tools.js +2 -2
  43. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  44. package/dist/src/mcp-tools/transfer-tools.d.ts +2 -0
  45. package/dist/src/mcp-tools/transfer-tools.d.ts.map +1 -1
  46. package/dist/src/mcp-tools/transfer-tools.js +11 -1
  47. package/dist/src/mcp-tools/transfer-tools.js.map +1 -1
  48. package/dist/src/ui/dashboard.html +44 -618
  49. package/dist/src/ui/server.mjs +0 -275
  50. package/dist/src/utils/cosine-similarity.d.ts +2 -2
  51. package/dist/src/utils/cosine-similarity.js +2 -2
  52. package/dist/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +1 -1
  54. package/dist/src/mcp-tools/coherence/causal-infer.d.ts +0 -15
  55. package/dist/src/mcp-tools/coherence/causal-infer.d.ts.map +0 -1
  56. package/dist/src/mcp-tools/coherence/causal-infer.js +0 -333
  57. package/dist/src/mcp-tools/coherence/causal-infer.js.map +0 -1
  58. package/dist/src/mcp-tools/coherence/coherence-check.d.ts +0 -15
  59. package/dist/src/mcp-tools/coherence/coherence-check.d.ts.map +0 -1
  60. package/dist/src/mcp-tools/coherence/coherence-check.js +0 -188
  61. package/dist/src/mcp-tools/coherence/coherence-check.js.map +0 -1
  62. package/dist/src/mcp-tools/coherence/consensus-verify.d.ts +0 -14
  63. package/dist/src/mcp-tools/coherence/consensus-verify.d.ts.map +0 -1
  64. package/dist/src/mcp-tools/coherence/consensus-verify.js +0 -305
  65. package/dist/src/mcp-tools/coherence/consensus-verify.js.map +0 -1
  66. package/dist/src/mcp-tools/coherence/memory-gate.d.ts +0 -16
  67. package/dist/src/mcp-tools/coherence/memory-gate.d.ts.map +0 -1
  68. package/dist/src/mcp-tools/coherence/memory-gate.js +0 -279
  69. package/dist/src/mcp-tools/coherence/memory-gate.js.map +0 -1
  70. package/dist/src/mcp-tools/coherence/quantum-topology.d.ts +0 -15
  71. package/dist/src/mcp-tools/coherence/quantum-topology.d.ts.map +0 -1
  72. package/dist/src/mcp-tools/coherence/quantum-topology.js +0 -400
  73. package/dist/src/mcp-tools/coherence/quantum-topology.js.map +0 -1
  74. package/dist/src/mcp-tools/coherence/spectral-analyze.d.ts +0 -14
  75. package/dist/src/mcp-tools/coherence/spectral-analyze.d.ts.map +0 -1
  76. package/dist/src/mcp-tools/coherence/spectral-analyze.js +0 -312
  77. package/dist/src/mcp-tools/coherence/spectral-analyze.js.map +0 -1
  78. package/dist/src/mcp-tools/coherence/types.d.ts +0 -430
  79. package/dist/src/mcp-tools/coherence/types.d.ts.map +0 -1
  80. package/dist/src/mcp-tools/coherence/types.js +0 -144
  81. package/dist/src/mcp-tools/coherence/types.js.map +0 -1
  82. package/dist/src/mcp-tools/coherence-tools.d.ts +0 -9
  83. package/dist/src/mcp-tools/coherence-tools.d.ts.map +0 -1
  84. package/dist/src/mcp-tools/coherence-tools.js +0 -25
  85. package/dist/src/mcp-tools/coherence-tools.js.map +0 -1
  86. package/dist/src/mcp-tools/daa-tools.d.ts +0 -13
  87. package/dist/src/mcp-tools/daa-tools.d.ts.map +0 -1
  88. package/dist/src/mcp-tools/daa-tools.js +0 -553
  89. package/dist/src/mcp-tools/daa-tools.js.map +0 -1
@@ -1,305 +0,0 @@
1
- /**
2
- * Consensus Verification Tool - pr_consensus_verify
3
- *
4
- * Verifies multi-agent consensus using cosine-similarity coherence analysis.
5
- * Identifies divergent agents and measures agreement ratios.
6
- * Connectivity stability uses a degree-ratio heuristic (not spectral decomposition).
7
- */
8
- import { ConsensusInputSchema, successResult, errorResult, cosineSimilarity, } from './types.js';
9
- // Default logger
10
- const defaultLogger = {
11
- debug: (msg, meta) => console.debug(`[pr_consensus_verify] ${msg}`, meta),
12
- info: (msg, meta) => console.info(`[pr_consensus_verify] ${msg}`, meta),
13
- warn: (msg, meta) => console.warn(`[pr_consensus_verify] ${msg}`, meta),
14
- error: (msg, meta) => console.error(`[pr_consensus_verify] ${msg}`, meta),
15
- };
16
- // ============================================================================
17
- // Consensus Analysis Functions
18
- // ============================================================================
19
- /**
20
- * Compute pairwise similarity matrix
21
- */
22
- function computeSimilarityMatrix(embeddings) {
23
- const n = embeddings.length;
24
- const matrix = [];
25
- for (let i = 0; i < n; i++) {
26
- const row = [];
27
- const embi = embeddings[i];
28
- for (let j = 0; j < n; j++) {
29
- const embj = embeddings[j];
30
- row.push(cosineSimilarity(embi, embj));
31
- }
32
- matrix.push(row);
33
- }
34
- return matrix;
35
- }
36
- /**
37
- * Compute coherence energy using Sheaf Laplacian approach
38
- */
39
- function computeCoherenceEnergy(embeddings) {
40
- if (embeddings.length < 2)
41
- return 0;
42
- const n = embeddings.length;
43
- let totalDisagreement = 0;
44
- let edgeCount = 0;
45
- for (let i = 0; i < n; i++) {
46
- for (let j = i + 1; j < n; j++) {
47
- const embi = embeddings[i];
48
- const embj = embeddings[j];
49
- const similarity = cosineSimilarity(embi, embj);
50
- const disagreement = 1 - Math.max(0, similarity);
51
- totalDisagreement += disagreement;
52
- edgeCount++;
53
- }
54
- }
55
- return edgeCount > 0 ? totalDisagreement / edgeCount : 0;
56
- }
57
- /**
58
- * Identify divergent agents whose embeddings differ significantly from the group
59
- */
60
- function identifyDivergentAgents(agentStates, threshold) {
61
- if (agentStates.length < 2)
62
- return [];
63
- const embeddings = agentStates.map(s => s.embedding);
64
- const n = embeddings.length;
65
- const divergentAgents = [];
66
- // Compute centroid
67
- const firstEmb = embeddings[0];
68
- if (!firstEmb)
69
- return [];
70
- const dim = firstEmb.length;
71
- const centroid = new Array(dim).fill(0);
72
- for (const emb of embeddings) {
73
- for (let d = 0; d < dim; d++) {
74
- const val = emb[d];
75
- if (val !== undefined) {
76
- centroid[d] = (centroid[d] ?? 0) + val / n;
77
- }
78
- }
79
- }
80
- // Find agents far from centroid
81
- for (let i = 0; i < n; i++) {
82
- const embi = embeddings[i];
83
- const agentState = agentStates[i];
84
- const similarity = cosineSimilarity(embi, centroid);
85
- if (similarity < threshold) {
86
- divergentAgents.push(agentState.agentId);
87
- }
88
- }
89
- return divergentAgents;
90
- }
91
- /**
92
- * Compute vote-based agreement ratio
93
- */
94
- function computeVoteAgreement(agentStates) {
95
- const votes = agentStates.filter(s => s.vote !== undefined).map(s => s.vote);
96
- if (votes.length < 2)
97
- return 1;
98
- // Count vote frequencies
99
- const voteCounts = new Map();
100
- for (const vote of votes) {
101
- voteCounts.set(vote, (voteCounts.get(vote) || 0) + 1);
102
- }
103
- // Agreement is based on majority
104
- const values = Array.from(voteCounts.values());
105
- const maxCount = values.length > 0 ? Math.max(...values) : 0;
106
- return maxCount / votes.length;
107
- }
108
- /**
109
- * Compute connectivity stability from similarity matrix.
110
- * Uses the ratio of average to maximum degree as a connectivity proxy.
111
- * A ratio near 1 means uniform connectivity; near 0 means a few nodes
112
- * dominate connectivity while others are isolated.
113
- * NOTE: This is NOT a true spectral gap (which requires eigendecomposition
114
- * of the Laplacian). It is a lightweight degree-based heuristic.
115
- */
116
- function computeConnectivityStability(similarityMatrix) {
117
- const n = similarityMatrix.length;
118
- if (n < 2)
119
- return { stable: true, degreeRatio: 1 };
120
- // Convert similarity to adjacency (threshold at 0.5)
121
- const adjacency = [];
122
- for (let i = 0; i < n; i++) {
123
- const row = [];
124
- const simRow = similarityMatrix[i];
125
- for (let j = 0; j < n; j++) {
126
- const simVal = simRow[j] ?? 0;
127
- row.push(simVal > 0.5 ? simVal : 0);
128
- }
129
- adjacency.push(row);
130
- }
131
- // Compute degrees
132
- const degrees = [];
133
- for (let i = 0; i < n; i++) {
134
- let degree = 0;
135
- const adjRow = adjacency[i];
136
- for (let j = 0; j < n; j++) {
137
- degree += adjRow[j] ?? 0;
138
- }
139
- degrees.push(degree);
140
- }
141
- const avgDegree = degrees.reduce((a, b) => a + b, 0) / n;
142
- const maxDegree = Math.max(...degrees);
143
- const degreeRatio = maxDegree > 0 ? avgDegree / maxDegree : 0;
144
- const stable = degreeRatio > 0.3;
145
- return { stable, degreeRatio };
146
- }
147
- /**
148
- * Get interpretation of consensus results
149
- */
150
- function getInterpretation(verified, coherenceScore, divergentAgents, connectivityStable) {
151
- if (verified && divergentAgents.length === 0) {
152
- return 'Strong consensus achieved - all agents are aligned';
153
- }
154
- if (verified && divergentAgents.length > 0) {
155
- return `Consensus achieved with ${divergentAgents.length} minority agent(s)`;
156
- }
157
- if (!connectivityStable) {
158
- return 'Consensus not achieved - agent network shows poor connectivity (uneven degree distribution)';
159
- }
160
- if (coherenceScore < 0.5) {
161
- return 'Consensus not achieved - significant disagreement between agents';
162
- }
163
- return `Consensus not achieved - ${divergentAgents.length} divergent agent(s) detected`;
164
- }
165
- /**
166
- * Handler for pr_consensus_verify tool
167
- */
168
- async function handler(input, context) {
169
- const logger = context?.logger ?? defaultLogger;
170
- const startTime = performance.now();
171
- try {
172
- // Validate input
173
- const validationResult = ConsensusInputSchema.safeParse(input);
174
- if (!validationResult.success) {
175
- logger.error('Input validation failed', { error: validationResult.error.message });
176
- return errorResult(`Invalid input: ${validationResult.error.message}`);
177
- }
178
- const { agentStates, threshold } = validationResult.data;
179
- logger.debug('Processing consensus verification', {
180
- agentCount: agentStates.length,
181
- threshold,
182
- });
183
- if (agentStates.length === 0) {
184
- return errorResult('No agent states provided');
185
- }
186
- // Validate embedding dimensions are consistent
187
- const firstDim = agentStates[0].embedding.length;
188
- for (let i = 1; i < agentStates.length; i++) {
189
- if (agentStates[i].embedding.length !== firstDim) {
190
- return errorResult(`Embedding dimension mismatch: agent ${agentStates[i].agentId} has ` +
191
- `${agentStates[i].embedding.length} dimensions, expected ${firstDim}`);
192
- }
193
- }
194
- const embeddings = agentStates.map(s => s.embedding);
195
- let coherenceEnergy;
196
- let divergentAgents;
197
- // Try to use WASM bridge if available
198
- if (context?.bridge?.initialized) {
199
- try {
200
- logger.debug('Using WASM bridge for coherence check');
201
- const float32Embeddings = embeddings.map(e => new Float32Array(e));
202
- const result = await context.bridge.checkCoherence(float32Embeddings);
203
- coherenceEnergy = result.energy;
204
- // WASM doesn't return divergent agents, compute separately
205
- divergentAgents = identifyDivergentAgents(agentStates, threshold);
206
- }
207
- catch (wasmError) {
208
- logger.warn('WASM bridge failed, falling back to JS implementation', {
209
- error: wasmError instanceof Error ? wasmError.message : String(wasmError),
210
- });
211
- coherenceEnergy = computeCoherenceEnergy(embeddings);
212
- divergentAgents = identifyDivergentAgents(agentStates, threshold);
213
- }
214
- }
215
- else {
216
- // Pure JavaScript fallback
217
- logger.debug('Using JavaScript fallback for consensus verification');
218
- coherenceEnergy = computeCoherenceEnergy(embeddings);
219
- divergentAgents = identifyDivergentAgents(agentStates, threshold);
220
- }
221
- // Compute additional metrics
222
- const similarityMatrix = computeSimilarityMatrix(embeddings);
223
- const { stable: connectivityStable, degreeRatio } = computeConnectivityStability(similarityMatrix);
224
- const voteAgreement = computeVoteAgreement(agentStates);
225
- // Coherence score is inverse of energy
226
- const coherenceScore = 1 - coherenceEnergy;
227
- // Agreement ratio combines embedding coherence and vote agreement
228
- const agreementRatio = (coherenceScore + voteAgreement) / 2;
229
- // Consensus is verified if agreement exceeds threshold and no major divergence
230
- const verified = agreementRatio >= threshold &&
231
- divergentAgents.length <= Math.floor(agentStates.length * 0.2); // Allow 20% minority
232
- const output = {
233
- verified,
234
- coherenceScore,
235
- divergentAgents,
236
- details: {
237
- agreementRatio,
238
- coherenceEnergy,
239
- connectivityStable,
240
- degreeRatio,
241
- interpretation: getInterpretation(verified, coherenceScore, divergentAgents, connectivityStable),
242
- agentCount: agentStates.length,
243
- },
244
- };
245
- const duration = performance.now() - startTime;
246
- logger.info('Consensus verification completed', {
247
- verified,
248
- coherenceScore: coherenceScore.toFixed(4),
249
- divergentAgents: divergentAgents.length,
250
- durationMs: duration.toFixed(2),
251
- });
252
- return successResult(output);
253
- }
254
- catch (error) {
255
- const duration = performance.now() - startTime;
256
- logger.error('Consensus verification failed', {
257
- error: error instanceof Error ? error.message : String(error),
258
- durationMs: duration.toFixed(2),
259
- });
260
- return errorResult(error instanceof Error ? error : new Error(String(error)));
261
- }
262
- }
263
- /**
264
- * pr_consensus_verify MCP Tool Definition
265
- */
266
- export const consensusVerifyTool = {
267
- name: 'pr_consensus_verify',
268
- description: 'Verify multi-agent consensus using cosine-similarity coherence analysis. Identifies divergent agents, measures agreement ratios, and checks connectivity stability via degree-ratio heuristic.',
269
- category: 'consensus',
270
- version: '0.1.3',
271
- tags: ['consensus', 'multi-agent', 'coherence', 'swarm', 'ai-interpretability'],
272
- cacheable: false, // Agent states change frequently
273
- inputSchema: {
274
- type: 'object',
275
- properties: {
276
- agentStates: {
277
- type: 'array',
278
- items: {
279
- type: 'object',
280
- properties: {
281
- agentId: { type: 'string', description: 'Unique agent identifier' },
282
- embedding: {
283
- type: 'array',
284
- items: { type: 'number' },
285
- description: 'Agent state embedding vector',
286
- },
287
- vote: { type: 'string', description: 'Agent vote or decision' },
288
- metadata: { type: 'object', description: 'Additional agent metadata' },
289
- },
290
- required: ['agentId', 'embedding'],
291
- },
292
- description: 'Array of agent states to verify consensus',
293
- },
294
- threshold: {
295
- type: 'number',
296
- default: 0.8,
297
- description: 'Required agreement threshold (0-1)',
298
- },
299
- },
300
- required: ['agentStates'],
301
- },
302
- handler,
303
- };
304
- export default consensusVerifyTool;
305
- //# sourceMappingURL=consensus-verify.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"consensus-verify.js","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/consensus-verify.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Memory Gate Tool - pr_memory_gate
3
- *
4
- * Pre-storage coherence gate for memory entries.
5
- * Validates that new entries are coherent with existing context before storage.
6
- * Uses cosine similarity on vectors to compute coherence energy.
7
- * When no pre-computed embeddings are supplied, falls back to a deterministic
8
- * hash-based vector (structural proxy, not semantic similarity).
9
- */
10
- import type { MCPTool } from './types.js';
11
- /**
12
- * pr_memory_gate MCP Tool Definition
13
- */
14
- export declare const memoryGateTool: MCPTool;
15
- export default memoryGateTool;
16
- //# sourceMappingURL=memory-gate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-gate.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/memory-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,OAAO,EAIR,MAAM,YAAY,CAAC;AAsRpB;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OA0C5B,CAAC;eAEa,cAAc"}
@@ -1,279 +0,0 @@
1
- /**
2
- * Memory Gate Tool - pr_memory_gate
3
- *
4
- * Pre-storage coherence gate for memory entries.
5
- * Validates that new entries are coherent with existing context before storage.
6
- * Uses cosine similarity on vectors to compute coherence energy.
7
- * When no pre-computed embeddings are supplied, falls back to a deterministic
8
- * hash-based vector (structural proxy, not semantic similarity).
9
- */
10
- import { MemoryGateInputSchema, successResult, errorResult, cosineSimilarity, } from './types.js';
11
- // Default logger
12
- const defaultLogger = {
13
- debug: (msg, meta) => console.debug(`[pr_memory_gate] ${msg}`, meta),
14
- info: (msg, meta) => console.info(`[pr_memory_gate] ${msg}`, meta),
15
- warn: (msg, meta) => console.warn(`[pr_memory_gate] ${msg}`, meta),
16
- error: (msg, meta) => console.error(`[pr_memory_gate] ${msg}`, meta),
17
- };
18
- // ============================================================================
19
- // Memory Gate Functions
20
- // ============================================================================
21
- /**
22
- * Deterministic hash-based vector from value content.
23
- * This is NOT a semantic embedding -- it produces a normalized vector
24
- * derived from character codes via an LCG, so only identical (or
25
- * near-identical) strings will be "similar". It serves as a
26
- * structural-consistency proxy when no real embedding model is available.
27
- *
28
- * For real semantic similarity, use the generateEmbedding() from
29
- * neural-tools.ts which tries ONNX first and falls back to a
30
- * deterministic hash.
31
- */
32
- function hashVector(value) {
33
- const str = typeof value === 'string' ? value : JSON.stringify(value);
34
- // Seed from string content
35
- let seed = 0;
36
- for (let i = 0; i < str.length; i++) {
37
- seed = ((seed * 1103515245 + 12345) & 0x7fffffff) ^ (str.charCodeAt(i) * (i + 1));
38
- }
39
- // Generate deterministic vector via LCG
40
- const dims = 64;
41
- const vec = new Array(dims);
42
- for (let i = 0; i < dims; i++) {
43
- seed = (seed * 1103515245 + 12345) & 0x7fffffff;
44
- vec[i] = (seed / 0x7fffffff) * 2 - 1;
45
- }
46
- // Normalize
47
- let norm = 0;
48
- for (let i = 0; i < dims; i++) {
49
- norm += vec[i] * vec[i];
50
- }
51
- norm = Math.sqrt(norm);
52
- if (norm > 0) {
53
- for (let i = 0; i < dims; i++) {
54
- vec[i] /= norm;
55
- }
56
- }
57
- return vec;
58
- }
59
- /**
60
- * Compute coherence energy using Sheaf Laplacian
61
- */
62
- function computeCoherenceEnergy(newEmbedding, existingEmbeddings) {
63
- if (existingEmbeddings.length === 0)
64
- return 0;
65
- let totalDisagreement = 0;
66
- for (const existing of existingEmbeddings) {
67
- const similarity = cosineSimilarity(newEmbedding, existing);
68
- const disagreement = 1 - Math.max(0, similarity);
69
- totalDisagreement += disagreement;
70
- }
71
- return totalDisagreement / existingEmbeddings.length;
72
- }
73
- /**
74
- * Detect specific violations
75
- */
76
- function detectViolations(newEmbedding, existingEmbeddings, warnThreshold) {
77
- const violations = [];
78
- for (let i = 0; i < existingEmbeddings.length; i++) {
79
- const similarity = cosineSimilarity(newEmbedding, existingEmbeddings[i]);
80
- if (similarity < -0.3) {
81
- violations.push(`Strong contradiction with context entry ${i} (similarity: ${similarity.toFixed(3)})`);
82
- }
83
- else if (similarity < warnThreshold) {
84
- violations.push(`Weak coherence with context entry ${i} (similarity: ${similarity.toFixed(3)})`);
85
- }
86
- }
87
- return violations;
88
- }
89
- /**
90
- * Determine action based on coherence energy
91
- */
92
- function determineAction(energy, thresholds) {
93
- if (energy >= thresholds.reject) {
94
- return 'reject';
95
- }
96
- if (energy >= thresholds.warn) {
97
- return 'warn';
98
- }
99
- return 'allow';
100
- }
101
- /**
102
- * Get interpretation of memory gate result
103
- */
104
- function getInterpretation(action, energy, violations) {
105
- switch (action) {
106
- case 'allow':
107
- return 'Entry is coherent with existing context - storage allowed';
108
- case 'warn':
109
- return `Entry has minor inconsistencies (energy: ${energy.toFixed(3)}) - storage allowed with warning`;
110
- case 'reject':
111
- return `Entry contradicts existing context (energy: ${energy.toFixed(3)}) - storage blocked. ${violations.length} violation(s) detected.`;
112
- }
113
- }
114
- /**
115
- * Handler for pr_memory_gate tool
116
- */
117
- async function handler(input, context) {
118
- const logger = context?.logger ?? defaultLogger;
119
- const startTime = performance.now();
120
- try {
121
- // Validate input
122
- const validationResult = MemoryGateInputSchema.safeParse(input);
123
- if (!validationResult.success) {
124
- logger.error('Input validation failed', { error: validationResult.error.message });
125
- return errorResult(`Invalid input: ${validationResult.error.message}`);
126
- }
127
- const { key, value, existingVectors, thresholds } = validationResult.data;
128
- // Get thresholds from config or input
129
- const warnThreshold = thresholds?.warn ?? context?.config?.coherence?.warnThreshold ?? 0.3;
130
- const rejectThreshold = thresholds?.reject ?? context?.config?.coherence?.rejectThreshold ?? 0.7;
131
- logger.debug('Processing memory gate check', {
132
- key,
133
- hasExistingContext: !!existingVectors?.length,
134
- contextSize: existingVectors?.length ?? 0,
135
- warnThreshold,
136
- rejectThreshold,
137
- });
138
- // Generate hash-based vector for the new value (not a semantic embedding --
139
- // only detects near-identical content, not semantic similarity)
140
- const newEmbedding = hashVector(value);
141
- // If no existing context, always allow
142
- if (!existingVectors || existingVectors.length === 0) {
143
- const output = {
144
- allowed: true,
145
- coherenceEnergy: 0,
146
- details: {
147
- action: 'allow',
148
- violations: [],
149
- confidence: 1,
150
- interpretation: 'No existing context - entry allowed',
151
- contextSize: 0,
152
- },
153
- };
154
- const duration = performance.now() - startTime;
155
- logger.info('Memory gate check completed (no context)', {
156
- key,
157
- allowed: true,
158
- durationMs: duration.toFixed(2),
159
- });
160
- return successResult(output);
161
- }
162
- // Validate embedding dimensions match
163
- const firstDim = existingVectors[0].length;
164
- for (let i = 1; i < existingVectors.length; i++) {
165
- if (existingVectors[i].length !== firstDim) {
166
- return errorResult(`Context embedding dimension mismatch: entry ${i} has ${existingVectors[i].length} dimensions, expected ${firstDim}`);
167
- }
168
- }
169
- let coherenceEnergy;
170
- let violations;
171
- // Try to use WASM bridge if available
172
- if (context?.bridge?.initialized) {
173
- try {
174
- logger.debug('Using WASM bridge for coherence check');
175
- const allEmbeddings = [
176
- new Float32Array(newEmbedding),
177
- ...existingVectors.map(v => new Float32Array(v)),
178
- ];
179
- const result = await context.bridge.checkCoherence(allEmbeddings);
180
- coherenceEnergy = result.energy;
181
- violations = result.violations;
182
- }
183
- catch (wasmError) {
184
- logger.warn('WASM bridge failed, falling back to JS implementation', {
185
- error: wasmError instanceof Error ? wasmError.message : String(wasmError),
186
- });
187
- coherenceEnergy = computeCoherenceEnergy(newEmbedding, existingVectors);
188
- violations = detectViolations(newEmbedding, existingVectors, warnThreshold);
189
- }
190
- }
191
- else {
192
- // Pure JavaScript fallback
193
- logger.debug('Using JavaScript fallback for memory gate');
194
- coherenceEnergy = computeCoherenceEnergy(newEmbedding, existingVectors);
195
- violations = detectViolations(newEmbedding, existingVectors, warnThreshold);
196
- }
197
- const action = determineAction(coherenceEnergy, { warn: warnThreshold, reject: rejectThreshold });
198
- const allowed = action !== 'reject';
199
- const confidence = 1 - coherenceEnergy;
200
- const output = {
201
- allowed,
202
- coherenceEnergy,
203
- reason: !allowed ? `Coherence energy ${coherenceEnergy.toFixed(3)} exceeds reject threshold ${rejectThreshold}` : undefined,
204
- details: {
205
- action,
206
- violations,
207
- confidence,
208
- interpretation: getInterpretation(action, coherenceEnergy, violations),
209
- contextSize: existingVectors.length,
210
- },
211
- };
212
- const duration = performance.now() - startTime;
213
- logger.info('Memory gate check completed', {
214
- key,
215
- allowed,
216
- action,
217
- coherenceEnergy: coherenceEnergy.toFixed(4),
218
- violations: violations.length,
219
- durationMs: duration.toFixed(2),
220
- });
221
- return successResult(output);
222
- }
223
- catch (error) {
224
- const duration = performance.now() - startTime;
225
- logger.error('Memory gate check failed', {
226
- error: error instanceof Error ? error.message : String(error),
227
- durationMs: duration.toFixed(2),
228
- });
229
- return errorResult(error instanceof Error ? error : new Error(String(error)));
230
- }
231
- }
232
- /**
233
- * pr_memory_gate MCP Tool Definition
234
- */
235
- export const memoryGateTool = {
236
- name: 'pr_memory_gate',
237
- description: 'Pre-storage coherence gate for memory entries. Validates new entries against existing context vectors using cosine-similarity energy. When no pre-computed embeddings are supplied, uses a deterministic hash-based vector (structural proxy, not semantic). Blocks contradictory entries to maintain memory coherence.',
238
- category: 'memory',
239
- version: '0.1.3',
240
- tags: ['memory', 'coherence', 'gate', 'validation', 'ai-interpretability'],
241
- cacheable: false, // Context changes frequently
242
- inputSchema: {
243
- type: 'object',
244
- properties: {
245
- key: {
246
- type: 'string',
247
- description: 'Memory entry key',
248
- },
249
- value: {
250
- description: 'Value to be stored (any JSON-serializable type)',
251
- },
252
- existingVectors: {
253
- type: 'array',
254
- items: { type: 'array', items: { type: 'number' } },
255
- description: 'Existing context embeddings to check against',
256
- },
257
- thresholds: {
258
- type: 'object',
259
- properties: {
260
- warn: {
261
- type: 'number',
262
- default: 0.3,
263
- description: 'Energy threshold for warnings (0-1)',
264
- },
265
- reject: {
266
- type: 'number',
267
- default: 0.7,
268
- description: 'Energy threshold for rejection (0-1)',
269
- },
270
- },
271
- description: 'Custom coherence thresholds',
272
- },
273
- },
274
- required: ['key', 'value'],
275
- },
276
- handler,
277
- };
278
- export default memoryGateTool;
279
- //# sourceMappingURL=memory-gate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-gate.js","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/memory-gate.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Computational Topology Tool - pr_quantum_topology
3
- *
4
- * Computes topological features including Betti numbers (b0, b1) and
5
- * persistence diagrams via Vietoris-Rips filtration.
6
- * Analyzes topological features of point clouds and simplicial complexes.
7
- * b2 (voids) is not computed -- requires boundary-operator linear algebra.
8
- */
9
- import type { MCPTool } from './types.js';
10
- /**
11
- * pr_quantum_topology MCP Tool Definition
12
- */
13
- export declare const quantumTopologyTool: MCPTool;
14
- export default quantumTopologyTool;
15
- //# sourceMappingURL=quantum-topology.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"quantum-topology.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/coherence/quantum-topology.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,OAAO,EAKR,MAAM,YAAY,CAAC;AAgapB;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OA2CjC,CAAC;eAEa,mBAAmB"}