memento-mcp-server 1.8.0 → 1.9.1

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 (100) hide show
  1. package/dist/config/environment.d.ts.map +1 -1
  2. package/dist/config/environment.js +2 -1
  3. package/dist/config/environment.js.map +1 -1
  4. package/dist/config/index.d.ts.map +1 -1
  5. package/dist/config/index.js +5 -2
  6. package/dist/config/index.js.map +1 -1
  7. package/dist/database/init.d.ts.map +1 -1
  8. package/dist/database/init.js +159 -7
  9. package/dist/database/init.js.map +1 -1
  10. package/dist/database/migration/backup-manager.d.ts +55 -0
  11. package/dist/database/migration/backup-manager.d.ts.map +1 -0
  12. package/dist/database/migration/backup-manager.js +181 -0
  13. package/dist/database/migration/backup-manager.js.map +1 -0
  14. package/dist/database/migration/dependency-validator.d.ts +62 -0
  15. package/dist/database/migration/dependency-validator.d.ts.map +1 -0
  16. package/dist/database/migration/dependency-validator.js +260 -0
  17. package/dist/database/migration/dependency-validator.js.map +1 -0
  18. package/dist/database/migration/migration-detector.d.ts +67 -0
  19. package/dist/database/migration/migration-detector.d.ts.map +1 -0
  20. package/dist/database/migration/migration-detector.js +129 -0
  21. package/dist/database/migration/migration-detector.js.map +1 -0
  22. package/dist/database/migration/migration-logger.d.ts +82 -0
  23. package/dist/database/migration/migration-logger.d.ts.map +1 -0
  24. package/dist/database/migration/migration-logger.js +168 -0
  25. package/dist/database/migration/migration-logger.js.map +1 -0
  26. package/dist/database/migration/migration-runner.d.ts +45 -0
  27. package/dist/database/migration/migration-runner.d.ts.map +1 -0
  28. package/dist/database/migration/migration-runner.js +194 -0
  29. package/dist/database/migration/migration-runner.js.map +1 -0
  30. package/dist/database/migration/migrations/002-mirix-schema-expansion.d.ts +55 -0
  31. package/dist/database/migration/migrations/002-mirix-schema-expansion.d.ts.map +1 -0
  32. package/dist/database/migration/migrations/002-mirix-schema-expansion.js +154 -0
  33. package/dist/database/migration/migrations/002-mirix-schema-expansion.js.map +1 -0
  34. package/dist/database/migration/schema-version-manager.d.ts +43 -0
  35. package/dist/database/migration/schema-version-manager.d.ts.map +1 -0
  36. package/dist/database/migration/schema-version-manager.js +146 -0
  37. package/dist/database/migration/schema-version-manager.js.map +1 -0
  38. package/dist/database/migration/types.d.ts +127 -0
  39. package/dist/database/migration/types.d.ts.map +1 -0
  40. package/dist/database/migration/types.js +5 -0
  41. package/dist/database/migration/types.js.map +1 -0
  42. package/dist/database/schema.sql +69 -1
  43. package/dist/npm-client/memento-client.d.ts.map +1 -1
  44. package/dist/npm-client/memento-client.js +39 -8
  45. package/dist/npm-client/memento-client.js.map +1 -1
  46. package/dist/npm-client/types.d.ts +16 -2
  47. package/dist/npm-client/types.d.ts.map +1 -1
  48. package/dist/npm-client/types.js.map +1 -1
  49. package/dist/npm-client/utils.d.ts.map +1 -1
  50. package/dist/npm-client/utils.js +44 -5
  51. package/dist/npm-client/utils.js.map +1 -1
  52. package/dist/repositories/core-memory-repository.d.ts +81 -0
  53. package/dist/repositories/core-memory-repository.d.ts.map +1 -0
  54. package/dist/repositories/core-memory-repository.js +263 -0
  55. package/dist/repositories/core-memory-repository.js.map +1 -0
  56. package/dist/repositories/knowledge-vault-repository.d.ts +102 -0
  57. package/dist/repositories/knowledge-vault-repository.d.ts.map +1 -0
  58. package/dist/repositories/knowledge-vault-repository.js +395 -0
  59. package/dist/repositories/knowledge-vault-repository.js.map +1 -0
  60. package/dist/server/http-server.d.ts.map +1 -1
  61. package/dist/server/http-server.js +2 -0
  62. package/dist/server/http-server.js.map +1 -1
  63. package/dist/server/index.d.ts.map +1 -1
  64. package/dist/server/index.js +2 -0
  65. package/dist/server/index.js.map +1 -1
  66. package/dist/services/core-memory-cache-service.d.ts +80 -0
  67. package/dist/services/core-memory-cache-service.d.ts.map +1 -0
  68. package/dist/services/core-memory-cache-service.js +122 -0
  69. package/dist/services/core-memory-cache-service.js.map +1 -0
  70. package/dist/services/core-memory-service.d.ts +117 -0
  71. package/dist/services/core-memory-service.d.ts.map +1 -0
  72. package/dist/services/core-memory-service.js +247 -0
  73. package/dist/services/core-memory-service.js.map +1 -0
  74. package/dist/services/knowledge-vault-service.d.ts +114 -0
  75. package/dist/services/knowledge-vault-service.d.ts.map +1 -0
  76. package/dist/services/knowledge-vault-service.js +233 -0
  77. package/dist/services/knowledge-vault-service.js.map +1 -0
  78. package/dist/tools/memory-injection-prompt.d.ts.map +1 -1
  79. package/dist/tools/memory-injection-prompt.js +28 -4
  80. package/dist/tools/memory-injection-prompt.js.map +1 -1
  81. package/dist/tools/recall-tool.d.ts.map +1 -1
  82. package/dist/tools/recall-tool.js +292 -82
  83. package/dist/tools/recall-tool.js.map +1 -1
  84. package/dist/tools/remember-tool.d.ts.map +1 -1
  85. package/dist/tools/remember-tool.js +282 -106
  86. package/dist/tools/remember-tool.js.map +1 -1
  87. package/dist/tools/types.d.ts +9 -2
  88. package/dist/tools/types.d.ts.map +1 -1
  89. package/dist/tools/types.js +11 -2
  90. package/dist/tools/types.js.map +1 -1
  91. package/dist/types/index.d.ts +20 -3
  92. package/dist/types/index.d.ts.map +1 -1
  93. package/dist/types/index.js +7 -1
  94. package/dist/types/index.js.map +1 -1
  95. package/dist/utils/type-param-validator.d.ts +31 -0
  96. package/dist/utils/type-param-validator.d.ts.map +1 -0
  97. package/dist/utils/type-param-validator.js +76 -0
  98. package/dist/utils/type-param-validator.js.map +1 -0
  99. package/package.json +1 -1
  100. package/src/database/schema.sql +69 -1
@@ -8,26 +8,97 @@ import { DatabaseUtils } from '../utils/database.js';
8
8
  import { MemoryNeighborService } from '../services/memory-neighbor-service.js';
9
9
  import { getVectorSearchEngine } from '../algorithms/vector-search-engine.js';
10
10
  import { MemoryEmbeddingService } from '../services/memory-embedding-service.js';
11
+ import { isMemoryItemType } from '../types/index.js';
12
+ import { CoreMemoryRepository } from '../repositories/core-memory-repository.js';
13
+ import { CoreMemoryService } from '../services/core-memory-service.js';
14
+ import { CoreMemoryCacheService } from '../services/core-memory-cache-service.js';
15
+ import { KnowledgeVaultRepository } from '../repositories/knowledge-vault-repository.js';
16
+ import { KnowledgeVaultService } from '../services/knowledge-vault-service.js';
17
+ import { validateTypeParam } from '../utils/type-param-validator.js';
18
+ import { mementoConfig } from '../config/index.js';
11
19
  const RememberSchema = z.object({
12
20
  content: CommonSchemas.Content,
13
- type: CommonSchemas.MemoryType.default('episodic'),
21
+ type: CommonSchemas.MemoryType.optional(), // optional - validateTypeParam에서 기본값 처리
22
+ // Core Memory / Knowledge Vault용 필드
23
+ key: CommonSchemas.Key.optional(),
24
+ value: CommonSchemas.Value.optional(),
25
+ always_load: CommonSchemas.AlwaysLoad,
26
+ immutable: CommonSchemas.Immutable,
27
+ // Procedural Memory용 필드
28
+ task_goal: CommonSchemas.TaskGoal,
29
+ steps: CommonSchemas.Steps,
30
+ reflection_notes: CommonSchemas.ReflectionNotes,
31
+ // 기존 필드 유지
14
32
  tags: CommonSchemas.Tags,
15
33
  importance: CommonSchemas.Importance.default(0.5),
16
34
  source: CommonSchemas.Source,
17
35
  privacy_scope: CommonSchemas.PrivacyScope.default('private'),
36
+ }).refine((data) => {
37
+ // 조건부 필수 검증
38
+ if (data.type === 'core' || data.type === 'vault') {
39
+ // type='core' 또는 'vault'일 때는 key, value 필수
40
+ if (!data.key || !data.value) {
41
+ return false;
42
+ }
43
+ }
44
+ else {
45
+ // 나머지 타입은 content 필수
46
+ if (!data.content) {
47
+ return false;
48
+ }
49
+ }
50
+ return true;
51
+ }, {
52
+ message: "type='core' 또는 'vault'일 때는 key, value가 필수이고, 나머지는 content가 필수입니다"
18
53
  });
19
54
  export class RememberTool extends BaseTool {
20
55
  constructor() {
21
56
  super('remember', '새로운 기억을 저장합니다', {
22
57
  type: 'object',
23
58
  properties: {
24
- content: { type: 'string', description: '저장할 내용' },
59
+ content: {
60
+ type: 'string',
61
+ description: '저장할 내용 (type이 core/vault가 아닐 때 필수)'
62
+ },
25
63
  type: {
26
64
  type: 'string',
27
- enum: ['working', 'episodic', 'semantic', 'procedural'],
65
+ enum: ['working', 'episodic', 'semantic', 'procedural', 'core', 'vault'],
28
66
  description: '기억 타입',
29
67
  default: 'episodic'
30
68
  },
69
+ // Core Memory / Knowledge Vault용 필드
70
+ key: {
71
+ type: 'string',
72
+ description: 'Core Memory 또는 Knowledge Vault의 키 (type이 core/vault일 때 필수)'
73
+ },
74
+ value: {
75
+ type: 'string',
76
+ description: 'Core Memory 또는 Knowledge Vault의 값 (type이 core/vault일 때 필수)'
77
+ },
78
+ always_load: {
79
+ type: 'boolean',
80
+ description: '서버 시작 시 자동 로드 여부 (Core Memory용, 기본값: false)',
81
+ default: false
82
+ },
83
+ immutable: {
84
+ type: 'boolean',
85
+ description: '불변 데이터 여부 (Knowledge Vault용, 기본값: true)',
86
+ default: true
87
+ },
88
+ // Procedural Memory용 필드
89
+ task_goal: {
90
+ type: 'string',
91
+ description: '작업 목표 (Procedural Memory용)'
92
+ },
93
+ steps: {
94
+ type: 'string',
95
+ description: '단계별 절차 (JSON 배열 문자열, Procedural Memory용)'
96
+ },
97
+ reflection_notes: {
98
+ type: 'string',
99
+ description: 'Reflexion 기록 (JSON 객체 문자열, Procedural Memory용)'
100
+ },
101
+ // 기존 필드 유지
31
102
  tags: {
32
103
  type: 'array',
33
104
  items: { type: 'string' },
@@ -48,130 +119,235 @@ export class RememberTool extends BaseTool {
48
119
  default: 'private'
49
120
  }
50
121
  },
51
- required: ['content']
122
+ required: [] // 조건부 필수는 Zod 스키마에서 검증
52
123
  });
53
124
  }
54
125
  async handle(params, context) {
55
- const { content, type, tags, importance, source, privacy_scope } = RememberSchema.parse(params);
126
+ const { content, type: rawType, key, value, always_load, immutable, task_goal, steps, reflection_notes, tags, importance, source, privacy_scope } = RememberSchema.parse(params);
127
+ // type 파라미터 롤아웃 모드 검증
128
+ const typeParamMode = mementoConfig.typeParamMode;
129
+ const typeValidation = validateTypeParam(rawType, typeParamMode, 'remember');
130
+ // 에러 모드인 경우 에러 발생
131
+ if (!typeValidation.isValid) {
132
+ throw new Error(typeValidation.message || "type 파라미터는 필수입니다.");
133
+ }
134
+ // 경고/Deprecation 메시지 출력
135
+ if (typeValidation.message) {
136
+ if (typeParamMode === 'warn') {
137
+ this.logWarning(typeValidation.message);
138
+ }
139
+ else if (typeParamMode === 'deprecate') {
140
+ this.logWarning(typeValidation.message);
141
+ }
142
+ }
143
+ // type 파라미터 결정 (제공된 값 또는 기본값)
144
+ const type = (rawType || typeValidation.defaultType || 'episodic');
56
145
  // 데이터베이스 연결 확인
57
146
  this.validateDatabase(context);
58
- // UUID 생성 (임시로 간단한 ID 사용)
59
- const id = `mem_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
60
- try {
61
- // 메모리 저장 (트랜잭션 사용)
62
- await DatabaseUtils.runTransaction(context.db, async () => {
63
- await DatabaseUtils.run(context.db, `
64
- INSERT INTO memory_item (id, type, content, importance, privacy_scope, tags, source, created_at)
65
- VALUES (?, ?, ?, ?, ?, ?, ?, CURRENT_TIMESTAMP)
66
- `, [id, type, content, importance, privacy_scope,
67
- tags ? JSON.stringify(tags) : null, source]);
147
+ // origin_source 생성 (JSON 형식)
148
+ const origin_source = JSON.stringify({
149
+ tool: 'remember',
150
+ caller: 'user',
151
+ timestamp: new Date().toISOString(),
152
+ context: {
153
+ type,
154
+ has_content: !!content,
155
+ has_key: !!key,
156
+ has_value: !!value,
157
+ type_param_mode: typeParamMode,
158
+ type_was_defaulted: !rawType
159
+ }
160
+ });
161
+ // type에 따른 분기 처리
162
+ if (type === 'core') {
163
+ // Core Memory 저장
164
+ if (!key || !value) {
165
+ throw new Error("type='core'일 때는 key와 value가 필수입니다");
166
+ }
167
+ const coreMemoryRepository = new CoreMemoryRepository(context.db);
168
+ const { getCoreMemoryCache } = await import('../services/core-memory-cache-service.js');
169
+ const coreMemoryCache = getCoreMemoryCache();
170
+ const coreMemoryService = new CoreMemoryService(coreMemoryRepository, coreMemoryCache);
171
+ const agent_id = 'default'; // TODO: 향후 context에서 가져오기
172
+ const record = await coreMemoryService.create({
173
+ agent_id,
174
+ key,
175
+ value,
176
+ always_load: always_load || false,
177
+ origin_source
68
178
  });
69
- // 메모리 저장 완료 후 임베딩 생성 및 인접 기억 갱신 (비동기, 실패해도 메모리 저장은 성공)
70
- // 데이터베이스 참조를 미리 저장하여 비동기 콜백에서 안전하게 사용
71
- const dbRef = context.db;
72
- const embeddingServiceRef = context.services.embeddingService;
73
- if (embeddingServiceRef?.isAvailable() && dbRef) {
74
- // 비동기 작업을 별도로 실행 (fire-and-forget 패턴)
75
- // 메모리 저장 응답은 즉시 반환하고, 임베딩/인접 기억 갱신은 백그라운드에서 처리
76
- (async () => {
77
- try {
78
- // 트랜잭션이 완전히 커밋되도록 짧은 지연
79
- await new Promise(resolve => setTimeout(resolve, 100));
80
- // 데이터베이스 연결이 여전히 유효한지 확인 (간단한 쿼리로 테스트)
81
- // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
179
+ return this.createSuccessResult({
180
+ memory_id: record.core_id,
181
+ type: 'core',
182
+ key: record.key,
183
+ value: record.value,
184
+ always_load: record.always_load,
185
+ message: `Core Memory가 저장되었습니다: ${record.core_id}`
186
+ });
187
+ }
188
+ else if (type === 'vault') {
189
+ // Knowledge Vault 저장
190
+ if (!key || !value) {
191
+ throw new Error("type='vault'일 때는 key와 value가 필수입니다");
192
+ }
193
+ const knowledgeVaultRepository = new KnowledgeVaultRepository(context.db);
194
+ const knowledgeVaultService = new KnowledgeVaultService(knowledgeVaultRepository);
195
+ const agent_id = 'default'; // TODO: 향후 context에서 가져오기
196
+ const record = await knowledgeVaultService.create({
197
+ agent_id,
198
+ key,
199
+ value,
200
+ immutable: immutable !== false, // 기본값 true
201
+ origin_source
202
+ });
203
+ return this.createSuccessResult({
204
+ memory_id: record.vault_id,
205
+ type: 'vault',
206
+ key: record.key,
207
+ value: record.value,
208
+ immutable: record.immutable,
209
+ message: `Knowledge Vault가 저장되었습니다: ${record.vault_id}`
210
+ });
211
+ }
212
+ else {
213
+ // 기존 memory_item 저장 (episodic, semantic, procedural, working)
214
+ if (!content) {
215
+ throw new Error("type이 'core' 또는 'vault'가 아닐 때는 content가 필수입니다");
216
+ }
217
+ // 타입 가드로 검증
218
+ if (!isMemoryItemType(type)) {
219
+ throw new Error(`Invalid memory type: ${type}`);
220
+ }
221
+ // UUID 생성 (임시로 간단한 ID 사용)
222
+ const id = `mem_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
223
+ try {
224
+ // 메모리 저장 (트랜잭션 사용)
225
+ await DatabaseUtils.runTransaction(context.db, async () => {
226
+ await DatabaseUtils.run(context.db, `
227
+ INSERT INTO memory_item (id, type, content, importance, privacy_scope, tags, source, origin_source, task_goal, steps, reflection_notes, created_at)
228
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, CURRENT_TIMESTAMP)
229
+ `, [
230
+ id,
231
+ type,
232
+ content,
233
+ importance,
234
+ privacy_scope,
235
+ tags ? JSON.stringify(tags) : null,
236
+ source || null,
237
+ origin_source,
238
+ task_goal || null,
239
+ steps || null,
240
+ reflection_notes || null
241
+ ]);
242
+ });
243
+ // 메모리 저장 완료 후 임베딩 생성 및 인접 기억 갱신 (비동기, 실패해도 메모리 저장은 성공)
244
+ // 데이터베이스 참조를 미리 저장하여 비동기 콜백에서 안전하게 사용
245
+ const dbRef = context.db;
246
+ const embeddingServiceRef = context.services.embeddingService;
247
+ if (embeddingServiceRef?.isAvailable() && dbRef) {
248
+ // 비동기 작업을 별도로 실행 (fire-and-forget 패턴)
249
+ // 메모리 저장 응답은 즉시 반환하고, 임베딩/인접 기억 갱신은 백그라운드에서 처리
250
+ (async () => {
82
251
  try {
83
- await new Promise((resolve, reject) => {
84
- try {
85
- DatabaseUtils.get(dbRef, 'SELECT 1');
86
- resolve();
87
- }
88
- catch (error) {
89
- reject(error);
90
- }
91
- });
92
- }
93
- catch (dbError) {
94
- this.logWarning('데이터베이스 연결이 유효하지 않아 임베딩 생성을 건너뜁니다', {
95
- memory_id: id,
96
- error: dbError instanceof Error ? dbError.message : String(dbError)
97
- });
98
- return;
99
- }
100
- // 임베딩 생성
101
- const embeddingResult = await embeddingServiceRef.createAndStoreEmbedding(dbRef, id, content, type);
102
- if (embeddingResult) {
103
- // PRD 3.1-3.3: 인접 기억 갱신
252
+ // 트랜잭션이 완전히 커밋되도록 짧은 지연
253
+ await new Promise(resolve => setTimeout(resolve, 100));
254
+ // 데이터베이스 연결이 여전히 유효한지 확인 (간단한 쿼리로 테스트)
255
+ // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
104
256
  try {
105
- // 데이터베이스 연결 재확인
106
- // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
257
+ await new Promise((resolve, reject) => {
258
+ try {
259
+ DatabaseUtils.get(dbRef, 'SELECT 1');
260
+ resolve();
261
+ }
262
+ catch (error) {
263
+ reject(error);
264
+ }
265
+ });
266
+ }
267
+ catch (dbError) {
268
+ this.logWarning('데이터베이스 연결이 유효하지 않아 임베딩 생성을 건너뜁니다', {
269
+ memory_id: id,
270
+ error: dbError instanceof Error ? dbError.message : String(dbError)
271
+ });
272
+ return;
273
+ }
274
+ // 임베딩 생성
275
+ const embeddingResult = await embeddingServiceRef.createAndStoreEmbedding(dbRef, id, content, type);
276
+ if (embeddingResult) {
277
+ // PRD 3.1-3.3: 인접 기억 갱신
107
278
  try {
108
- await new Promise((resolve, reject) => {
109
- try {
110
- DatabaseUtils.get(dbRef, 'SELECT 1');
111
- resolve();
112
- }
113
- catch (error) {
114
- reject(error);
115
- }
116
- });
279
+ // 데이터베이스 연결 재확인
280
+ // DatabaseUtils.get은 동기 함수이지만, 비동기 컨텍스트에서 안전하게 실행하기 위해 Promise로 감싸서 await
281
+ try {
282
+ await new Promise((resolve, reject) => {
283
+ try {
284
+ DatabaseUtils.get(dbRef, 'SELECT 1');
285
+ resolve();
286
+ }
287
+ catch (error) {
288
+ reject(error);
289
+ }
290
+ });
291
+ }
292
+ catch (dbError) {
293
+ this.logWarning('데이터베이스 연결이 유효하지 않아 인접 기억 갱신을 건너뜁니다', {
294
+ memory_id: id,
295
+ error: dbError instanceof Error ? dbError.message : String(dbError)
296
+ });
297
+ return;
298
+ }
299
+ const vectorSearchEngine = getVectorSearchEngine();
300
+ const neighborService = new MemoryNeighborService(vectorSearchEngine, embeddingServiceRef);
301
+ neighborService.setDatabase(dbRef);
302
+ // 인접 기억 갱신 (기본 유사도 임계값: 0.8)
303
+ const neighborIds = await neighborService.updateNeighborsForNewMemory(id, 0.8);
304
+ if (neighborIds.length > 0) {
305
+ this.logInfo('인접 기억 갱신 완료', {
306
+ memory_id: id,
307
+ neighbor_count: neighborIds.length
308
+ });
309
+ }
117
310
  }
118
- catch (dbError) {
119
- this.logWarning('데이터베이스 연결이 유효하지 않아 인접 기억 갱신을 건너뜁니다', {
120
- memory_id: id,
121
- error: dbError instanceof Error ? dbError.message : String(dbError)
122
- });
123
- return;
124
- }
125
- const vectorSearchEngine = getVectorSearchEngine();
126
- const neighborService = new MemoryNeighborService(vectorSearchEngine, embeddingServiceRef);
127
- neighborService.setDatabase(dbRef);
128
- // 인접 기억 갱신 (기본 유사도 임계값: 0.8)
129
- const neighborIds = await neighborService.updateNeighborsForNewMemory(id, 0.8);
130
- if (neighborIds.length > 0) {
131
- this.logInfo('인접 기억 갱신 완료', {
132
- memory_id: id,
133
- neighbor_count: neighborIds.length
311
+ catch (error) {
312
+ // 인접 기억 갱신 실패해도 메모리 저장은 성공했으므로 경고만 출력
313
+ this.logWarning(`인접 기억 갱신 실패 (${id})`, {
314
+ error: error instanceof Error ? error.message : String(error)
134
315
  });
135
316
  }
136
317
  }
137
- catch (error) {
138
- // 인접 기억 갱신 실패해도 메모리 저장은 성공했으므로 경고만 출력
139
- this.logWarning(`인접 기억 갱신 실패 (${id})`, {
140
- error: error instanceof Error ? error.message : String(error)
141
- });
142
- }
143
318
  }
144
- }
145
- catch (error) {
146
- // 임베딩 생성 실패해도 메모리 저장은 성공했으므로 경고만 출력
147
- this.logWarning(`임베딩 생성 실패 (${id})`, {
319
+ catch (error) {
320
+ // 임베딩 생성 실패해도 메모리 저장은 성공했으므로 경고만 출력
321
+ this.logWarning(`임베딩 생성 실패 (${id})`, {
322
+ error: error instanceof Error ? error.message : String(error)
323
+ });
324
+ }
325
+ })().catch((error) => {
326
+ // 예상치 못한 에러 처리
327
+ this.logWarning(`백그라운드 작업 실패 (${id})`, {
148
328
  error: error instanceof Error ? error.message : String(error)
149
329
  });
150
- }
151
- })().catch((error) => {
152
- // 예상치 못한 에러 처리
153
- this.logWarning(`백그라운드 작업 실패 (${id})`, {
154
- error: error instanceof Error ? error.message : String(error)
155
330
  });
331
+ }
332
+ return this.createSuccessResult({
333
+ memory_id: id,
334
+ type: type,
335
+ message: `기억이 저장되었습니다: ${id}`,
336
+ embedding_created: context.services.embeddingService?.isAvailable() || false
156
337
  });
157
338
  }
158
- return this.createSuccessResult({
159
- memory_id: id,
160
- message: `기억이 저장되었습니다: ${id}`,
161
- embedding_created: context.services.embeddingService?.isAvailable() || false
162
- });
163
- }
164
- catch (error) {
165
- // 데이터베이스 락 문제인 경우 WAL 체크포인트 시도
166
- if (error.code === 'SQLITE_BUSY') {
167
- try {
168
- await DatabaseUtils.checkpointWAL(context.db);
169
- }
170
- catch (checkpointError) {
171
- // WAL 체크포인트 실패
339
+ catch (error) {
340
+ // 데이터베이스 락 문제인 경우 WAL 체크포인트 시도
341
+ if (error.code === 'SQLITE_BUSY') {
342
+ try {
343
+ await DatabaseUtils.checkpointWAL(context.db);
344
+ }
345
+ catch (checkpointError) {
346
+ // WAL 체크포인트 실패
347
+ }
172
348
  }
349
+ throw error;
173
350
  }
174
- throw error;
175
351
  }
176
352
  }
177
353
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remember-tool.js","sourceRoot":"","sources":["../../src/tools/remember-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remember-tool.js","sourceRoot":"","sources":["../../src/tools/remember-tool.ts"],"names":[],"mappings":"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"}
@@ -40,9 +40,9 @@ export interface ToolError {
40
40
  */
41
41
  export declare const CommonSchemas: {
42
42
  MemoryId: z.ZodString;
43
- Content: z.ZodString;
43
+ Content: z.ZodOptional<z.ZodString>;
44
44
  Query: z.ZodString;
45
- MemoryType: z.ZodEnum<["working", "episodic", "semantic", "procedural"]>;
45
+ MemoryType: z.ZodEnum<["working", "episodic", "semantic", "procedural", "core", "vault"]>;
46
46
  PrivacyScope: z.ZodEnum<["private", "team", "public"]>;
47
47
  Importance: z.ZodNumber;
48
48
  Limit: z.ZodDefault<z.ZodNumber>;
@@ -52,5 +52,12 @@ export declare const CommonSchemas: {
52
52
  DryRun: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
53
53
  Analyze: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
54
54
  CreateIndexes: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
55
+ Key: z.ZodString;
56
+ Value: z.ZodString;
57
+ AlwaysLoad: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
58
+ Immutable: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
59
+ TaskGoal: z.ZodOptional<z.ZodString>;
60
+ Steps: z.ZodOptional<z.ZodString>;
61
+ ReflectionNotes: z.ZodOptional<z.ZodString>;
55
62
  };
56
63
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,GAAG,CAAC;IACR,QAAQ,EAAE;QACR,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,kBAAkB,CAAC,EAAE,GAAG,CAAC;QACzB,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,kBAAkB,CAAC,EAAE,GAAG,CAAC;QACzB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,mBAAmB,CAAC,EAAE,GAAG,CAAC;QAC1B,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gCAAgC,CAAC,EAAE,GAAG,CAAC;KACxC,CAAC;CACH;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAE9E,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;CAczB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,GAAG,CAAC;IACR,QAAQ,EAAE;QACR,YAAY,CAAC,EAAE,GAAG,CAAC;QACnB,kBAAkB,CAAC,EAAE,GAAG,CAAC;QACzB,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,kBAAkB,CAAC,EAAE,GAAG,CAAC;QACzB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,mBAAmB,CAAC,EAAE,GAAG,CAAC;QAC1B,uBAAuB,CAAC,EAAE,GAAG,CAAC;QAC9B,gCAAgC,CAAC,EAAE,GAAG,CAAC;KACxC,CAAC;CACH;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAE9E,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;CAuBzB,CAAC"}
@@ -7,9 +7,9 @@ import { z } from 'zod';
7
7
  */
8
8
  export const CommonSchemas = {
9
9
  MemoryId: z.string().min(1, 'Memory ID cannot be empty'),
10
- Content: z.string().min(1, 'Content cannot be empty'),
10
+ Content: z.string().min(1, 'Content cannot be empty').optional(), // optional로 변경
11
11
  Query: z.string().min(1, 'Query cannot be empty'),
12
- MemoryType: z.enum(['working', 'episodic', 'semantic', 'procedural']),
12
+ MemoryType: z.enum(['working', 'episodic', 'semantic', 'procedural', 'core', 'vault']),
13
13
  PrivacyScope: z.enum(['private', 'team', 'public']),
14
14
  Importance: z.number().min(0).max(1),
15
15
  Limit: z.number().min(1).max(50).default(10),
@@ -19,5 +19,14 @@ export const CommonSchemas = {
19
19
  DryRun: z.boolean().default(false).optional(),
20
20
  Analyze: z.boolean().default(false).optional(),
21
21
  CreateIndexes: z.boolean().default(false).optional(),
22
+ // Core Memory / Knowledge Vault용 필드
23
+ Key: z.string().min(1, 'Key cannot be empty'),
24
+ Value: z.string().min(1, 'Value cannot be empty'),
25
+ AlwaysLoad: z.boolean().default(false).optional(),
26
+ Immutable: z.boolean().default(true).optional(),
27
+ // Procedural Memory용 필드
28
+ TaskGoal: z.string().optional(),
29
+ Steps: z.string().optional(), // JSON 배열 문자열
30
+ ReflectionNotes: z.string().optional(), // JSON 객체 문자열
22
31
  };
23
32
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwCxB;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC;IACrD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IACrE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC7C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC9C,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;CACrD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwCxB;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,EAAE,eAAe;IACjF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACtF,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC7C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IAC9C,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IACpD,oCAAoC;IACpC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;IACjD,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IACjD,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAC/C,wBAAwB;IACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,cAAc;IAC5C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,cAAc;CACvD,CAAC"}
@@ -2,6 +2,12 @@
2
2
  * Memento MCP Server 타입 정의
3
3
  */
4
4
  export type MemoryType = 'working' | 'episodic' | 'semantic' | 'procedural';
5
+ export type MemoryTypeRequest = 'working' | 'episodic' | 'semantic' | 'procedural' | 'core' | 'vault';
6
+ /**
7
+ * 타입 가드 함수: MemoryTypeRequest가 MemoryType인지 확인
8
+ * 'core'와 'vault'는 memory_item 테이블에 저장되지 않으므로 false 반환
9
+ */
10
+ export declare function isMemoryItemType(type: MemoryTypeRequest): type is MemoryType;
5
11
  export type PrivacyScope = 'private' | 'team' | 'public';
6
12
  export interface MemoryItem {
7
13
  id: string;
@@ -67,17 +73,28 @@ export interface MementoConfig {
67
73
  logLevel: string;
68
74
  logFile: string | undefined;
69
75
  nodeEnv: string;
76
+ typeParamMode: 'warn' | 'deprecate' | 'error';
70
77
  }
71
78
  export interface RememberParams {
72
- content: string;
73
- type?: MemoryType;
79
+ content?: string;
80
+ type?: MemoryTypeRequest;
81
+ key?: string;
82
+ value?: string;
83
+ always_load?: boolean;
84
+ immutable?: boolean;
85
+ task_goal?: string;
86
+ steps?: string;
87
+ reflection_notes?: string;
74
88
  tags?: string[];
75
89
  importance?: number;
76
90
  source?: string;
77
91
  privacy_scope?: PrivacyScope;
78
92
  }
79
93
  export interface RecallParams {
80
- query: string;
94
+ query?: string;
95
+ type?: MemoryTypeRequest;
96
+ key?: string;
97
+ agent_id?: string;
81
98
  filters?: MemorySearchFilters;
82
99
  limit?: number;
83
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
1
  /**
2
2
  * Memento MCP Server 타입 정의
3
3
  */
4
- export {};
4
+ /**
5
+ * 타입 가드 함수: MemoryTypeRequest가 MemoryType인지 확인
6
+ * 'core'와 'vault'는 memory_item 테이블에 저장되지 않으므로 false 반환
7
+ */
8
+ export function isMemoryItemType(type) {
9
+ return type === 'working' || type === 'episodic' || type === 'semantic' || type === 'procedural';
10
+ }
5
11
  //# sourceMappingURL=index.js.map