consolidate_user
Consolidate user-scoped working memories into long-term summaries to manage memory storage efficiently. Specify a user ID, batch size, and retention count to process recent memories while preserving essential data.
Instructions
Consolidate user-scoped working memories into long-term summaries.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| userId | Yes | User identifier | |
| batch | No | Number of memories to consolidate (default 50) | |
| keep | No | Most recent N to leave untouched (default 20) | |
| dryRun | No | Preview without writing (default false) |
Implementation Reference
- src/index.ts:299-306 (handler)Handler for 'consolidate_user' tool - invokes memory.consolidateUser() with userId and options (batch, keep, dryRun), returns JSON result
case 'consolidate_user': { const result = await memory.consolidateUser(args.userId as string, { batch: args.batch as number | undefined, keep: args.keep as number | undefined, dryRun: args.dryRun as boolean | undefined, }); return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] }; } - src/index.ts:170-183 (registration)Registration of 'consolidate_user' tool with name, description, and input schema
{ name: 'consolidate_user', description: 'Consolidate user-scoped working memories into long-term summaries.', inputSchema: { type: 'object', properties: { userId: { type: 'string', description: 'User identifier' }, batch: { type: 'number', description: 'Number of memories to consolidate (default 50)' }, keep: { type: 'number', description: 'Most recent N to leave untouched (default 20)' }, dryRun: { type: 'boolean', description: 'Preview without writing (default false)' }, }, required: ['userId'], }, }, - src/index.ts:173-182 (schema)Input schema for 'consolidate_user' tool - defines userId (required string), batch, keep, and dryRun parameters with types and descriptions
inputSchema: { type: 'object', properties: { userId: { type: 'string', description: 'User identifier' }, batch: { type: 'number', description: 'Number of memories to consolidate (default 50)' }, keep: { type: 'number', description: 'Most recent N to leave untouched (default 20)' }, dryRun: { type: 'boolean', description: 'Preview without writing (default false)' }, }, required: ['userId'], },