super-memory-pro 0.3.1 → 2.0.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 +56 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -0
- package/dist/config.js.map +1 -1
- package/dist/hooks/event-handler.d.ts.map +1 -1
- package/dist/hooks/event-handler.js +9 -0
- package/dist/hooks/event-handler.js.map +1 -1
- package/dist/hooks/message-handler.d.ts.map +1 -1
- package/dist/hooks/message-handler.js +3 -0
- package/dist/hooks/message-handler.js.map +1 -1
- package/dist/hooks/system-transform.d.ts +5 -12
- package/dist/hooks/system-transform.d.ts.map +1 -1
- package/dist/hooks/system-transform.js +43 -24
- package/dist/hooks/system-transform.js.map +1 -1
- package/dist/memory/embeddings.d.ts +22 -0
- package/dist/memory/embeddings.d.ts.map +1 -0
- package/dist/memory/embeddings.js +139 -0
- package/dist/memory/embeddings.js.map +1 -0
- package/dist/memory/extractor.d.ts.map +1 -1
- package/dist/memory/extractor.js +5 -1
- package/dist/memory/extractor.js.map +1 -1
- package/dist/memory/index.d.ts +13 -1
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +7 -1
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/llm-extractor.d.ts +22 -0
- package/dist/memory/llm-extractor.d.ts.map +1 -0
- package/dist/memory/llm-extractor.js +117 -0
- package/dist/memory/llm-extractor.js.map +1 -0
- package/dist/memory/pattern-detector.d.ts +28 -0
- package/dist/memory/pattern-detector.d.ts.map +1 -0
- package/dist/memory/pattern-detector.js +221 -0
- package/dist/memory/pattern-detector.js.map +1 -0
- package/dist/memory/processor.d.ts +7 -1
- package/dist/memory/processor.d.ts.map +1 -1
- package/dist/memory/processor.js +112 -15
- package/dist/memory/processor.js.map +1 -1
- package/dist/memory/project-context.d.ts +24 -0
- package/dist/memory/project-context.d.ts.map +1 -0
- package/dist/memory/project-context.js +186 -0
- package/dist/memory/project-context.js.map +1 -0
- package/dist/memory/suggestions.d.ts +21 -0
- package/dist/memory/suggestions.d.ts.map +1 -0
- package/dist/memory/suggestions.js +205 -0
- package/dist/memory/suggestions.js.map +1 -0
- package/dist/memory/user-profile.d.ts +24 -0
- package/dist/memory/user-profile.d.ts.map +1 -0
- package/dist/memory/user-profile.js +220 -0
- package/dist/memory/user-profile.js.map +1 -0
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
// ─── Workflow Suggestions Module ──────────────────────────────────────────
|
|
2
|
+
// Generates contextual workflow suggestions based on detected patterns,
|
|
3
|
+
// user profile, and project context.
|
|
4
|
+
import { detectPatterns } from './pattern-detector.js';
|
|
5
|
+
import { buildUserProfile } from './user-profile.js';
|
|
6
|
+
import { buildProjectContext } from './project-context.js';
|
|
7
|
+
// ─── Suggestion Generation ───────────────────────────────────────────────
|
|
8
|
+
/**
|
|
9
|
+
* Generate contextual workflow suggestions.
|
|
10
|
+
*/
|
|
11
|
+
export async function getSuggestions(context) {
|
|
12
|
+
try {
|
|
13
|
+
const { projectId, currentMessage } = context;
|
|
14
|
+
// Gather context data
|
|
15
|
+
const [patterns, userProfile, projectContext] = await Promise.all([
|
|
16
|
+
detectPatterns({ projectId }),
|
|
17
|
+
buildUserProfile(projectId),
|
|
18
|
+
projectId ? buildProjectContext(projectId) : null,
|
|
19
|
+
]);
|
|
20
|
+
const suggestions = [];
|
|
21
|
+
// Generate suggestions from patterns
|
|
22
|
+
suggestions.push(...generatePatternSuggestions(patterns.patterns));
|
|
23
|
+
// Generate suggestions from user profile
|
|
24
|
+
suggestions.push(...generateProfileSuggestions(userProfile));
|
|
25
|
+
// Generate suggestions from project context
|
|
26
|
+
if (projectContext) {
|
|
27
|
+
suggestions.push(...generateProjectSuggestions(projectContext));
|
|
28
|
+
}
|
|
29
|
+
// Generate contextual suggestions based on current message
|
|
30
|
+
if (currentMessage) {
|
|
31
|
+
suggestions.push(...generateContextualSuggestions(currentMessage, patterns.patterns));
|
|
32
|
+
}
|
|
33
|
+
// Sort by confidence and return top suggestions
|
|
34
|
+
return suggestions
|
|
35
|
+
.sort((a, b) => b.confidence - a.confidence)
|
|
36
|
+
.slice(0, 10);
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
console.error('[UltraMemory] Failed to generate suggestions:', err);
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Get quick suggestions for a specific context.
|
|
45
|
+
*/
|
|
46
|
+
export async function getQuickSuggestions(projectId) {
|
|
47
|
+
try {
|
|
48
|
+
const patterns = await detectPatterns({ projectId, limit: 50 });
|
|
49
|
+
return generatePatternSuggestions(patterns.patterns).slice(0, 5);
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
console.error('[UltraMemory] Failed to get quick suggestions:', err);
|
|
53
|
+
return [];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// ─── Suggestion Generators ──────────────────────────────────────────────
|
|
57
|
+
function generatePatternSuggestions(patterns) {
|
|
58
|
+
const suggestions = [];
|
|
59
|
+
// Workflow suggestions from recurring patterns
|
|
60
|
+
const workflowPatterns = patterns.filter((p) => p.type === 'workflow');
|
|
61
|
+
for (const pattern of workflowPatterns.slice(0, 3)) {
|
|
62
|
+
suggestions.push({
|
|
63
|
+
type: 'workflow',
|
|
64
|
+
message: `Based on your pattern: ${pattern.pattern.slice(0, 80)}`,
|
|
65
|
+
confidence: pattern.confidence * 0.8,
|
|
66
|
+
source: 'pattern-detector',
|
|
67
|
+
actionable: true,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
// Technology suggestions
|
|
71
|
+
const techPatterns = patterns.filter((p) => p.type === 'technology');
|
|
72
|
+
if (techPatterns.length > 0) {
|
|
73
|
+
const topTech = techPatterns[0];
|
|
74
|
+
if (topTech && topTech.frequency > 5) {
|
|
75
|
+
suggestions.push({
|
|
76
|
+
type: 'pattern',
|
|
77
|
+
message: `You frequently use ${topTech.pattern}. Consider creating a template or shortcut.`,
|
|
78
|
+
confidence: 0.7,
|
|
79
|
+
source: 'pattern-detector',
|
|
80
|
+
actionable: true,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// Preference suggestions
|
|
85
|
+
const prefPatterns = patterns.filter((p) => p.type === 'preference');
|
|
86
|
+
for (const pattern of prefPatterns.slice(0, 2)) {
|
|
87
|
+
suggestions.push({
|
|
88
|
+
type: 'reminder',
|
|
89
|
+
message: `Your preference: ${pattern.pattern.slice(0, 80)}`,
|
|
90
|
+
confidence: pattern.confidence * 0.6,
|
|
91
|
+
source: 'pattern-detector',
|
|
92
|
+
actionable: false,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
return suggestions;
|
|
96
|
+
}
|
|
97
|
+
function generateProfileSuggestions(profile) {
|
|
98
|
+
const suggestions = [];
|
|
99
|
+
// Language-based suggestions
|
|
100
|
+
if (profile.preferredLanguages.length > 0) {
|
|
101
|
+
const lang = profile.preferredLanguages[0];
|
|
102
|
+
suggestions.push({
|
|
103
|
+
type: 'workflow',
|
|
104
|
+
message: `Using your preferred language: ${lang}`,
|
|
105
|
+
confidence: 0.6,
|
|
106
|
+
source: 'user-profile',
|
|
107
|
+
actionable: false,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
// Coding style suggestions
|
|
111
|
+
if (profile.codingStyle !== 'mixed') {
|
|
112
|
+
suggestions.push({
|
|
113
|
+
type: 'pattern',
|
|
114
|
+
message: `Following your ${profile.codingStyle} coding style`,
|
|
115
|
+
confidence: 0.5,
|
|
116
|
+
source: 'user-profile',
|
|
117
|
+
actionable: false,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// Framework suggestions
|
|
121
|
+
if (profile.frameworks.length > 0) {
|
|
122
|
+
suggestions.push({
|
|
123
|
+
type: 'tool',
|
|
124
|
+
message: `Known frameworks: ${profile.frameworks.slice(0, 3).join(', ')}`,
|
|
125
|
+
confidence: 0.5,
|
|
126
|
+
source: 'user-profile',
|
|
127
|
+
actionable: false,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
return suggestions;
|
|
131
|
+
}
|
|
132
|
+
function generateProjectSuggestions(context) {
|
|
133
|
+
const suggestions = [];
|
|
134
|
+
// Tech stack suggestions
|
|
135
|
+
if (context.techStack.length > 0) {
|
|
136
|
+
suggestions.push({
|
|
137
|
+
type: 'tool',
|
|
138
|
+
message: `Project tech stack: ${context.techStack.slice(0, 5).join(', ')}`,
|
|
139
|
+
confidence: 0.6,
|
|
140
|
+
source: 'project-context',
|
|
141
|
+
actionable: false,
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
// Architecture suggestions
|
|
145
|
+
if (context.architecture !== 'Unknown') {
|
|
146
|
+
suggestions.push({
|
|
147
|
+
type: 'pattern',
|
|
148
|
+
message: `Project architecture: ${context.architecture}`,
|
|
149
|
+
confidence: 0.5,
|
|
150
|
+
source: 'project-context',
|
|
151
|
+
actionable: false,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
// Convention suggestions
|
|
155
|
+
if (context.conventions.length > 0) {
|
|
156
|
+
suggestions.push({
|
|
157
|
+
type: 'reminder',
|
|
158
|
+
message: `Project conventions: ${context.conventions[0]?.slice(0, 60)}`,
|
|
159
|
+
confidence: 0.5,
|
|
160
|
+
source: 'project-context',
|
|
161
|
+
actionable: false,
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
return suggestions;
|
|
165
|
+
}
|
|
166
|
+
function generateContextualSuggestions(message, patterns) {
|
|
167
|
+
const suggestions = [];
|
|
168
|
+
const lowerMessage = message.toLowerCase();
|
|
169
|
+
// Check if message mentions a known technology
|
|
170
|
+
const techPatterns = patterns.filter((p) => p.type === 'technology');
|
|
171
|
+
for (const pattern of techPatterns) {
|
|
172
|
+
if (lowerMessage.includes(pattern.pattern.toLowerCase())) {
|
|
173
|
+
suggestions.push({
|
|
174
|
+
type: 'workflow',
|
|
175
|
+
message: `Working with ${pattern.pattern} (used ${pattern.frequency} times before)`,
|
|
176
|
+
confidence: 0.7,
|
|
177
|
+
source: 'contextual',
|
|
178
|
+
actionable: true,
|
|
179
|
+
});
|
|
180
|
+
break;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
// Check if message indicates a common task
|
|
184
|
+
const taskIndicators = [
|
|
185
|
+
{ pattern: /\b(?:deploy|deployment|release)\b/i, suggestion: 'Remember to run tests before deploying' },
|
|
186
|
+
{ pattern: /\b(?:test|testing|spec)\b/i, suggestion: 'Consider adding edge case tests' },
|
|
187
|
+
{ pattern: /\b(?:fix|bug|error|issue)\b/i, suggestion: 'Check if this issue exists in other parts of the codebase' },
|
|
188
|
+
{ pattern: /\b(?:refactor|cleanup|clean)\b/i, suggestion: 'Run linter after refactoring' },
|
|
189
|
+
{ pattern: /\b(?:commit|push|merge)\b/i, suggestion: 'Use conventional commit messages' },
|
|
190
|
+
];
|
|
191
|
+
for (const { pattern, suggestion } of taskIndicators) {
|
|
192
|
+
if (pattern.test(message)) {
|
|
193
|
+
suggestions.push({
|
|
194
|
+
type: 'reminder',
|
|
195
|
+
message: suggestion,
|
|
196
|
+
confidence: 0.6,
|
|
197
|
+
source: 'contextual',
|
|
198
|
+
actionable: true,
|
|
199
|
+
});
|
|
200
|
+
break;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return suggestions;
|
|
204
|
+
}
|
|
205
|
+
//# sourceMappingURL=suggestions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestions.js","sourceRoot":"","sources":["../../src/memory/suggestions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface UserProfile {
|
|
2
|
+
preferredLanguages: string[];
|
|
3
|
+
codingStyle: 'functional' | 'oop' | 'procedural' | 'mixed';
|
|
4
|
+
frameworks: string[];
|
|
5
|
+
patterns: string[];
|
|
6
|
+
avoidPatterns: string[];
|
|
7
|
+
experienceLevel: 'beginner' | 'intermediate' | 'expert';
|
|
8
|
+
lastUpdated: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ProfileInsight {
|
|
11
|
+
category: string;
|
|
12
|
+
insight: string;
|
|
13
|
+
confidence: number;
|
|
14
|
+
evidence: string[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Build or update user profile from stored memories.
|
|
18
|
+
*/
|
|
19
|
+
export declare function buildUserProfile(projectId?: string): Promise<UserProfile>;
|
|
20
|
+
/**
|
|
21
|
+
* Get profile insights with confidence scores.
|
|
22
|
+
*/
|
|
23
|
+
export declare function getProfileInsights(projectId?: string): Promise<ProfileInsight[]>;
|
|
24
|
+
//# sourceMappingURL=user-profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile.d.ts","sourceRoot":"","sources":["../../src/memory/user-profile.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,WAAW;IAC1B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,WAAW,EAAE,YAAY,GAAG,KAAK,GAAG,YAAY,GAAG,OAAO,CAAC;IAC3D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IACxD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAID;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,WAAW,CAAC,CAgCtB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,cAAc,EAAE,CAAC,CAmE3B"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
// ─── User Profile Module ──────────────────────────────────────────────────
|
|
2
|
+
// Evolving user profile that learns from each session.
|
|
3
|
+
// Tracks preferred languages, coding style, frameworks, patterns, etc.
|
|
4
|
+
import { getPool } from '../db/connection.js';
|
|
5
|
+
// ─── Profile Building ────────────────────────────────────────────────────
|
|
6
|
+
/**
|
|
7
|
+
* Build or update user profile from stored memories.
|
|
8
|
+
*/
|
|
9
|
+
export async function buildUserProfile(projectId) {
|
|
10
|
+
try {
|
|
11
|
+
const pool = getPool();
|
|
12
|
+
// Fetch relevant memories for profile building
|
|
13
|
+
const result = await pool.query(`SELECT * FROM memories
|
|
14
|
+
WHERE ($1::text IS NULL OR project_id = $1)
|
|
15
|
+
AND memory_type IN ('user_profile', 'tech_stack', 'pattern', 'decision')
|
|
16
|
+
ORDER BY created_at DESC
|
|
17
|
+
LIMIT 200`, [projectId ?? null]);
|
|
18
|
+
const memories = result.rows;
|
|
19
|
+
// Analyze memories to build profile
|
|
20
|
+
const profile = {
|
|
21
|
+
preferredLanguages: extractLanguages(memories),
|
|
22
|
+
codingStyle: detectCodingStyle(memories),
|
|
23
|
+
frameworks: extractFrameworks(memories),
|
|
24
|
+
patterns: extractPatterns(memories),
|
|
25
|
+
avoidPatterns: extractAvoidPatterns(memories),
|
|
26
|
+
experienceLevel: detectExperienceLevel(memories),
|
|
27
|
+
lastUpdated: new Date().toISOString(),
|
|
28
|
+
};
|
|
29
|
+
return profile;
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
console.error('[UltraMemory] Failed to build user profile:', err);
|
|
33
|
+
return getDefaultProfile();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get profile insights with confidence scores.
|
|
38
|
+
*/
|
|
39
|
+
export async function getProfileInsights(projectId) {
|
|
40
|
+
try {
|
|
41
|
+
const pool = getPool();
|
|
42
|
+
const result = await pool.query(`SELECT * FROM memories
|
|
43
|
+
WHERE ($1::text IS NULL OR project_id = $1)
|
|
44
|
+
AND memory_type IN ('user_profile', 'tech_stack', 'pattern')
|
|
45
|
+
ORDER BY importance DESC, created_at DESC
|
|
46
|
+
LIMIT 100`, [projectId ?? null]);
|
|
47
|
+
const memories = result.rows;
|
|
48
|
+
const insights = [];
|
|
49
|
+
// Language preferences
|
|
50
|
+
const languages = extractLanguages(memories);
|
|
51
|
+
if (languages.length > 0) {
|
|
52
|
+
insights.push({
|
|
53
|
+
category: 'languages',
|
|
54
|
+
insight: `Prefers: ${languages.join(', ')}`,
|
|
55
|
+
confidence: Math.min(1, languages.length / 3),
|
|
56
|
+
evidence: memories
|
|
57
|
+
.filter((m) => m.memory_type === 'tech_stack' && languages.some((l) => m.content.includes(l)))
|
|
58
|
+
.map((m) => m.content)
|
|
59
|
+
.slice(0, 3),
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
// Coding style
|
|
63
|
+
const style = detectCodingStyle(memories);
|
|
64
|
+
insights.push({
|
|
65
|
+
category: 'coding_style',
|
|
66
|
+
insight: `Coding style: ${style}`,
|
|
67
|
+
confidence: style === 'mixed' ? 0.5 : 0.7,
|
|
68
|
+
evidence: [],
|
|
69
|
+
});
|
|
70
|
+
// Frameworks
|
|
71
|
+
const frameworks = extractFrameworks(memories);
|
|
72
|
+
if (frameworks.length > 0) {
|
|
73
|
+
insights.push({
|
|
74
|
+
category: 'frameworks',
|
|
75
|
+
insight: `Uses: ${frameworks.join(', ')}`,
|
|
76
|
+
confidence: Math.min(1, frameworks.length / 2),
|
|
77
|
+
evidence: memories
|
|
78
|
+
.filter((m) => m.memory_type === 'tech_stack' && frameworks.some((f) => m.content.includes(f)))
|
|
79
|
+
.map((m) => m.content)
|
|
80
|
+
.slice(0, 3),
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
// Experience level
|
|
84
|
+
const experience = detectExperienceLevel(memories);
|
|
85
|
+
insights.push({
|
|
86
|
+
category: 'experience',
|
|
87
|
+
insight: `Experience level: ${experience}`,
|
|
88
|
+
confidence: 0.6,
|
|
89
|
+
evidence: [],
|
|
90
|
+
});
|
|
91
|
+
return insights;
|
|
92
|
+
}
|
|
93
|
+
catch (err) {
|
|
94
|
+
console.error('[UltraMemory] Failed to get profile insights:', err);
|
|
95
|
+
return [];
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// ─── Extraction Helpers ──────────────────────────────────────────────────
|
|
99
|
+
function extractLanguages(memories) {
|
|
100
|
+
const languageCounts = new Map();
|
|
101
|
+
const commonLanguages = [
|
|
102
|
+
'TypeScript', 'JavaScript', 'Python', 'Rust', 'Go', 'Java', 'C#',
|
|
103
|
+
'Ruby', 'PHP', 'Swift', 'Kotlin', 'Dart', 'Elixir', 'Zig',
|
|
104
|
+
];
|
|
105
|
+
for (const mem of memories) {
|
|
106
|
+
if (mem.memory_type !== 'tech_stack')
|
|
107
|
+
continue;
|
|
108
|
+
for (const lang of commonLanguages) {
|
|
109
|
+
if (mem.content.includes(lang) || mem.metadata?.technology === lang) {
|
|
110
|
+
languageCounts.set(lang, (languageCounts.get(lang) || 0) + 1);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return [...languageCounts.entries()]
|
|
115
|
+
.filter(([_, count]) => count >= 2)
|
|
116
|
+
.sort((a, b) => b[1] - a[1])
|
|
117
|
+
.map(([lang]) => lang)
|
|
118
|
+
.slice(0, 5);
|
|
119
|
+
}
|
|
120
|
+
function extractFrameworks(memories) {
|
|
121
|
+
const frameworkCounts = new Map();
|
|
122
|
+
const commonFrameworks = [
|
|
123
|
+
'React', 'Vue', 'Angular', 'Next.js', 'Nuxt', 'Svelte', 'Express',
|
|
124
|
+
'Fastify', 'Django', 'Flask', 'FastAPI', 'Rails', 'Laravel',
|
|
125
|
+
'Tailwind CSS', 'Prisma', 'Drizzle',
|
|
126
|
+
];
|
|
127
|
+
for (const mem of memories) {
|
|
128
|
+
if (mem.memory_type !== 'tech_stack')
|
|
129
|
+
continue;
|
|
130
|
+
for (const fw of commonFrameworks) {
|
|
131
|
+
if (mem.content.includes(fw) || mem.metadata?.technology === fw) {
|
|
132
|
+
frameworkCounts.set(fw, (frameworkCounts.get(fw) || 0) + 1);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return [...frameworkCounts.entries()]
|
|
137
|
+
.filter(([_, count]) => count >= 2)
|
|
138
|
+
.sort((a, b) => b[1] - a[1])
|
|
139
|
+
.map(([fw]) => fw)
|
|
140
|
+
.slice(0, 5);
|
|
141
|
+
}
|
|
142
|
+
function extractPatterns(memories) {
|
|
143
|
+
return memories
|
|
144
|
+
.filter((m) => m.memory_type === 'pattern')
|
|
145
|
+
.map((m) => m.content)
|
|
146
|
+
.slice(0, 10);
|
|
147
|
+
}
|
|
148
|
+
function extractAvoidPatterns(memories) {
|
|
149
|
+
const avoidIndicators = [
|
|
150
|
+
/\b(?:don'?t|avoid|hate|dislike|never|no\s+more)\b/i,
|
|
151
|
+
/\b(?:no\s+(?:more|longer)|stop\s+using)\b/i,
|
|
152
|
+
];
|
|
153
|
+
return memories
|
|
154
|
+
.filter((m) => {
|
|
155
|
+
const content = m.content.toLowerCase();
|
|
156
|
+
return avoidIndicators.some((p) => p.test(content));
|
|
157
|
+
})
|
|
158
|
+
.map((m) => m.content)
|
|
159
|
+
.slice(0, 5);
|
|
160
|
+
}
|
|
161
|
+
function detectCodingStyle(memories) {
|
|
162
|
+
const styleIndicators = {
|
|
163
|
+
functional: [/\b(?:pure\s+function|immutable|lodash|ramda|map|filter|reduce)\b/i, /\bfunctional\b/i],
|
|
164
|
+
oop: [/\b(?:class|extends|implements|interface|polymorphism|encapsulation)\b/i, /\bobject[- ]oriented\b/i],
|
|
165
|
+
procedural: [/\b(?:function|procedure|imperative|step[- ]by[- ]step)\b/i],
|
|
166
|
+
};
|
|
167
|
+
const scores = { functional: 0, oop: 0, procedural: 0 };
|
|
168
|
+
for (const mem of memories) {
|
|
169
|
+
const content = mem.content;
|
|
170
|
+
for (const [style, patterns] of Object.entries(styleIndicators)) {
|
|
171
|
+
if (patterns.some((p) => p.test(content))) {
|
|
172
|
+
scores[style]++;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
const maxScore = Math.max(scores.functional, scores.oop, scores.procedural);
|
|
177
|
+
if (maxScore === 0)
|
|
178
|
+
return 'mixed';
|
|
179
|
+
if (scores.functional === maxScore)
|
|
180
|
+
return 'functional';
|
|
181
|
+
if (scores.oop === maxScore)
|
|
182
|
+
return 'oop';
|
|
183
|
+
return 'procedural';
|
|
184
|
+
}
|
|
185
|
+
function detectExperienceLevel(memories) {
|
|
186
|
+
const advancedIndicators = [
|
|
187
|
+
/\b(?:architecture|scalability|microservices|distributed|kubernetes|terraform)\b/i,
|
|
188
|
+
/\b(?:performance|optimization|benchmark|profiling)\b/i,
|
|
189
|
+
/\b(?:security|authentication|authorization|encryption)\b/i,
|
|
190
|
+
];
|
|
191
|
+
const beginnerIndicators = [
|
|
192
|
+
/\b(?:learning|new\s+to|beginner|getting\s+started|tutorial)\b/i,
|
|
193
|
+
/\b(?:how\s+to|what\s+is|can\s+someone|help\s+me)\b/i,
|
|
194
|
+
];
|
|
195
|
+
let advancedCount = 0;
|
|
196
|
+
let beginnerCount = 0;
|
|
197
|
+
for (const mem of memories) {
|
|
198
|
+
if (advancedIndicators.some((p) => p.test(mem.content)))
|
|
199
|
+
advancedCount++;
|
|
200
|
+
if (beginnerIndicators.some((p) => p.test(mem.content)))
|
|
201
|
+
beginnerCount++;
|
|
202
|
+
}
|
|
203
|
+
if (advancedCount > 5)
|
|
204
|
+
return 'expert';
|
|
205
|
+
if (beginnerCount > 5)
|
|
206
|
+
return 'beginner';
|
|
207
|
+
return 'intermediate';
|
|
208
|
+
}
|
|
209
|
+
function getDefaultProfile() {
|
|
210
|
+
return {
|
|
211
|
+
preferredLanguages: [],
|
|
212
|
+
codingStyle: 'mixed',
|
|
213
|
+
frameworks: [],
|
|
214
|
+
patterns: [],
|
|
215
|
+
avoidPatterns: [],
|
|
216
|
+
experienceLevel: 'intermediate',
|
|
217
|
+
lastUpdated: new Date().toISOString(),
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=user-profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-profile.js","sourceRoot":"","sources":["../../src/memory/user-profile.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -90,6 +90,14 @@ export interface PluginConfig {
|
|
|
90
90
|
minImportance: number;
|
|
91
91
|
autoExtract: boolean;
|
|
92
92
|
};
|
|
93
|
+
/** LLM settings for AI extraction */
|
|
94
|
+
llm: {
|
|
95
|
+
enabled: boolean;
|
|
96
|
+
model: string;
|
|
97
|
+
apiKey: string;
|
|
98
|
+
baseUrl: string;
|
|
99
|
+
summarizeSessions: boolean;
|
|
100
|
+
};
|
|
93
101
|
}
|
|
94
102
|
/** Search result with relevance */
|
|
95
103
|
export interface MemorySearchResult {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,6BAA6B;AAC7B,eAAO,MAAM,YAAY,0GAQf,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,yBAAyB;AACzB,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,UAAU,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,0BAA0B;AAC1B,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,0BAA0B;AAC1B,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,0BAA0B;AAC1B,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAqB;AACrB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAqB;AACrB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,2BAA2B;AAC3B,MAAM,WAAW,YAAY;IAC3B,4BAA4B;IAC5B,EAAE,EAAE;QACF,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,oBAAoB;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,uBAAuB;IACvB,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,qCAAqC;IACrC,GAAG,EAAE;QACH,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;CACH;AAED,mCAAmC;AACnC,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,gCAAgC;AAChC,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7E,2BAA2B;AAC3B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "super-memory-pro",
|
|
4
|
-
"version": "0.
|
|
5
|
-
"description": "Ultra-persistent memory plugin for OpenCode —
|
|
4
|
+
"version": "2.0.0",
|
|
5
|
+
"description": "Ultra-persistent memory plugin for OpenCode — AI-powered extraction, semantic search, and cross-session learning",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"opencode",
|
|
8
8
|
"opencode-plugin",
|
|
@@ -50,9 +50,9 @@
|
|
|
50
50
|
"zod": "^4.1.8"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@types/express": "^5.0.
|
|
54
|
-
"@types/node": "^22.
|
|
55
|
-
"@types/pg": "^8.
|
|
53
|
+
"@types/express": "^5.0.6",
|
|
54
|
+
"@types/node": "^22.19.21",
|
|
55
|
+
"@types/pg": "^8.20.0",
|
|
56
56
|
"@types/uuid": "^10.0.0",
|
|
57
57
|
"tsx": "^4.19.4",
|
|
58
58
|
"typescript": "^5.8.3",
|