claude-memory-store 0.1.6 → 0.1.7
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/dist/atlas/vector.js +1 -1
- package/dist/atlas/vector.js.map +1 -1
- package/dist/bin/mcp-server.js +1 -1
- package/dist/hooks/stop.js +57 -9
- package/dist/hooks/stop.js.map +1 -1
- package/package.json +1 -1
package/dist/atlas/vector.js
CHANGED
package/dist/atlas/vector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../src/atlas/vector.ts"],"names":[],"mappings":";;AAuCA,wBA4CC;AAQD,8CAqCC;AAhID,2CAA4C;AAC5C,mDAAoD;AACpD,4CAA0F;AAC1F,wDAA4D;AAU5D;;;GAGG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAa;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAChC,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAa,GAAE,CAAC;IACzC,UAAU;SACP,UAAU,CACT,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EACxB;QACE,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,IAAI,EAAE,EAAE;QACnC,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;KAC1B,CACF;SACA,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB;AACxC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,MAAM,CAC1B,KAAa,EACb,SAAiB,EACjB,QAAgB,CAAC;IAEjB,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAa,GAAE,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,MAAM,cAAc,GAAG,MAAM,IAAA,iCAAiB,EAAC,KAAK,CAAC,CAAC;IACtD,IAAA,kCAAmB,EAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,MAAM,UAAU;SAC7B,SAAS,CAAC;QACT;YACE,aAAa,EAAE;gBACb,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,cAAc;gBAC3B,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"vector.js","sourceRoot":"","sources":["../../src/atlas/vector.ts"],"names":[],"mappings":";;AAuCA,wBA4CC;AAQD,8CAqCC;AAhID,2CAA4C;AAC5C,mDAAoD;AACpD,4CAA0F;AAC1F,wDAA4D;AAU5D;;;GAGG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAa;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAChC,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAa,GAAE,CAAC;IACzC,UAAU;SACP,UAAU,CACT,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EACxB;QACE,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,IAAI,EAAE,EAAE;QACnC,IAAI,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;KAC1B,CACF;SACA,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB;AACxC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,MAAM,CAC1B,KAAa,EACb,SAAiB,EACjB,QAAgB,CAAC;IAEjB,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAa,GAAE,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,MAAM,cAAc,GAAG,MAAM,IAAA,iCAAiB,EAAC,KAAK,CAAC,CAAC;IACtD,IAAA,kCAAmB,EAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,MAAM,UAAU;SAC7B,SAAS,CAAC;QACT;YACE,aAAa,EAAE;gBACb,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,cAAc;gBAC3B,aAAa,EAAE,GAAG;gBAClB,KAAK;gBACL,MAAM,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;aAClC;SACF;QACD;YACE,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE;aACtC;SACF;QACD;YACE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,sCAA0B,EAAE,EAAE;SACxD;KACF,CAAC;SACD,OAAO,EAAE,CAAC;IAEb,kCAAkC;IAClC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtD,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEvB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;QACjD,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,GAAgC;KAC3C,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CACrC,OAAe,EACf,SAAiB,EACjB,IAAY,EACZ,YAAoB,0CAA8B;IAElD,IAAI,CAAC;QACL,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAa,GAAE,CAAC;QACzC,MAAM,cAAc,GAAG,MAAM,IAAA,iCAAiB,EAAC,OAAO,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;YACzC;gBACE,aAAa,EAAE;oBACb,KAAK,EAAE,iBAAiB;oBACxB,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,cAAc;oBAC3B,aAAa,EAAE,EAAE;oBACjB,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE;iBACxC;aACF;YACD;gBACE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE;aACtD;YACD;gBACE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;aACvC;SACF,CAAC,CAAC,OAAO,EAAE,CAAC;QAEb,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;YACzD,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK;SACxB,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,gEAAgE;IAC/E,CAAC;AACH,CAAC"}
|
package/dist/bin/mcp-server.js
CHANGED
|
@@ -23,7 +23,7 @@ const developer_js_1 = require("../memory/developer.js");
|
|
|
23
23
|
const working_js_1 = require("../memory/working.js");
|
|
24
24
|
const server = new mcp_js_1.McpServer({
|
|
25
25
|
name: 'claude-memory',
|
|
26
|
-
version: '0.1.
|
|
26
|
+
version: '0.1.7',
|
|
27
27
|
});
|
|
28
28
|
let connected = false;
|
|
29
29
|
async function ensureConnected() {
|
package/dist/hooks/stop.js
CHANGED
|
@@ -117,7 +117,55 @@ async function handleAcknowledgement(choice, items, individualChoices) {
|
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
// Minimum message length to store (skip "ok", "yes", greetings)
|
|
120
|
-
const MIN_CONTENT_LENGTH =
|
|
120
|
+
const MIN_CONTENT_LENGTH = 100;
|
|
121
|
+
const MAX_CONTENT_LENGTH = 2000;
|
|
122
|
+
// Patterns that indicate noise, not real developer knowledge
|
|
123
|
+
const NOISE_PATTERNS = [
|
|
124
|
+
/^<(command-|task-|system-|local-command)/i, // XML tags from Claude Code internals
|
|
125
|
+
/^<\/?(command|task|system)/i,
|
|
126
|
+
/<task-notification>/i,
|
|
127
|
+
/<task-id>/i,
|
|
128
|
+
/toolu_[A-Za-z0-9]/, // Tool use IDs
|
|
129
|
+
/^\s*\[?(Request interrupted|Tool loaded)/i, // System messages
|
|
130
|
+
/^\/mdd\s/i, // MDD slash commands
|
|
131
|
+
/^\/recall|^\/remember|^\/threads|^\/stats/i, // Memory slash commands
|
|
132
|
+
/^\s*```/, // Code blocks (not knowledge)
|
|
133
|
+
/^(yes|no|ok|sure|y|n|go|do it|looks good)\s*$/i, // Short affirmations
|
|
134
|
+
/<system-reminder>/i,
|
|
135
|
+
/hook success|hook fail/i,
|
|
136
|
+
/^npm\s|^git\s|^npx\s/i, // Raw commands
|
|
137
|
+
/^\s*\d+\)\s/, // Numbered list fragments
|
|
138
|
+
];
|
|
139
|
+
/**
|
|
140
|
+
* Check if a message contains actual developer knowledge worth storing,
|
|
141
|
+
* not system noise, XML tags, or tool artifacts.
|
|
142
|
+
*/
|
|
143
|
+
function isSubstantiveContent(content) {
|
|
144
|
+
if (content.length < MIN_CONTENT_LENGTH)
|
|
145
|
+
return false;
|
|
146
|
+
if (content.length > MAX_CONTENT_LENGTH)
|
|
147
|
+
return false;
|
|
148
|
+
// Check against noise patterns
|
|
149
|
+
for (const pattern of NOISE_PATTERNS) {
|
|
150
|
+
if (pattern.test(content))
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
// Require at least some regular words (not just IDs/paths/XML)
|
|
154
|
+
const wordCount = content.replace(/<[^>]+>/g, '').split(/\s+/).filter(w => /^[a-zA-Z]{3,}$/.test(w)).length;
|
|
155
|
+
if (wordCount < 5)
|
|
156
|
+
return false;
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Clean content before storing — strip XML tags, control chars, collapse whitespace.
|
|
161
|
+
*/
|
|
162
|
+
function cleanContent(content) {
|
|
163
|
+
return content
|
|
164
|
+
.replace(/<[^>]+>/g, ' ') // Strip XML/HTML tags
|
|
165
|
+
.replace(/[\x00-\x1f]/g, ' ') // Strip control chars
|
|
166
|
+
.replace(/\s+/g, ' ') // Collapse whitespace
|
|
167
|
+
.trim();
|
|
168
|
+
}
|
|
121
169
|
/**
|
|
122
170
|
* Read the transcript JSONL, extract the latest user message(s),
|
|
123
171
|
* and store substantive content as context memory.
|
|
@@ -129,21 +177,18 @@ async function storeTranscriptContent(transcriptPath) {
|
|
|
129
177
|
lines = raw.trim().split('\n').filter(Boolean);
|
|
130
178
|
}
|
|
131
179
|
catch {
|
|
132
|
-
return;
|
|
180
|
+
return;
|
|
133
181
|
}
|
|
134
|
-
// Parse JSONL — each line is a JSON object
|
|
135
182
|
const messages = [];
|
|
136
183
|
for (const line of lines) {
|
|
137
184
|
try {
|
|
138
185
|
const entry = JSON.parse(line);
|
|
139
|
-
// Transcript entries can have various formats
|
|
140
186
|
const role = entry.role || entry.type || '';
|
|
141
187
|
let content = '';
|
|
142
188
|
if (typeof entry.content === 'string') {
|
|
143
189
|
content = entry.content;
|
|
144
190
|
}
|
|
145
191
|
else if (Array.isArray(entry.content)) {
|
|
146
|
-
// Content blocks — extract text
|
|
147
192
|
content = entry.content
|
|
148
193
|
.filter((b) => b.type === 'text')
|
|
149
194
|
.map((b) => b.text)
|
|
@@ -162,13 +207,16 @@ async function storeTranscriptContent(transcriptPath) {
|
|
|
162
207
|
// Skip unparseable lines
|
|
163
208
|
}
|
|
164
209
|
}
|
|
165
|
-
//
|
|
210
|
+
// Filter to substantive user messages only
|
|
166
211
|
const userMessages = messages
|
|
167
212
|
.filter(m => m.role === 'human' || m.role === 'user')
|
|
168
|
-
.filter(m => m.content
|
|
169
|
-
//
|
|
213
|
+
.filter(m => isSubstantiveContent(m.content));
|
|
214
|
+
// Clean and store each message
|
|
170
215
|
for (const msg of userMessages) {
|
|
171
|
-
|
|
216
|
+
const cleaned = cleanContent(msg.content);
|
|
217
|
+
if (cleaned.length >= MIN_CONTENT_LENGTH) {
|
|
218
|
+
await (0, project_js_1.addContext)(cleaned);
|
|
219
|
+
}
|
|
172
220
|
}
|
|
173
221
|
}
|
|
174
222
|
//# sourceMappingURL=stop.js.map
|
package/dist/hooks/stop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/hooks/stop.ts"],"names":[],"mappings":"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"}
|