mirror of
https://github.com/thedotmack/claude-mem
synced 2026-04-25 17:15:04 +02:00
* Refactor worker version checks and increase timeout settings - Updated the default hook timeout from 5000ms to 120000ms for improved stability. - Modified the worker version check to log a warning instead of restarting the worker on version mismatch. - Removed legacy PM2 cleanup and worker start logic, simplifying the ensureWorkerRunning function. - Enhanced polling mechanism for worker readiness with increased retries and reduced interval. * feat: implement worker queue polling to ensure processing completion before proceeding * refactor: change worker command from start to restart in hooks configuration * refactor: remove session management complexity - Simplify createSDKSession to pure INSERT OR IGNORE - Remove auto-create logic from storeObservation/storeSummary - Delete 11 unused session management methods - Derive prompt_number from user_prompts count - Keep sdk_sessions table schema unchanged for compatibility * refactor: simplify session management by removing unused methods and auto-creation logic * Refactor session prompt number retrieval in SessionRoutes - Updated the method of obtaining the prompt number from the session. - Replaced `store.getPromptCounter(sessionDbId)` with `store.getPromptNumberFromUserPrompts(claudeSessionId)` for better clarity and accuracy. - Adjusted the logic for incrementing the prompt number to derive it from the user prompts count instead of directly incrementing a counter. * refactor: replace getPromptCounter with getPromptNumberFromUserPrompts in SessionManager Phase 7 of session management simplification. Updates SessionManager to derive prompt numbers from user_prompts table count instead of using the deprecated prompt_counter column. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * refactor: simplify SessionCompletionHandler to use direct SQL query Phase 8: Remove call to findActiveSDKSession() and replace with direct database query in SessionCompletionHandler.completeByClaudeId(). This removes dependency on the deleted findActiveSDKSession() method and simplifies the code by using a straightforward SELECT query. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * refactor: remove markSessionCompleted call from SDKAgent - Delete call to markSessionCompleted() in SDKAgent.ts - Session status is no longer tracked or updated - Part of phase 9: simplifying session management 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * refactor: remove markSessionComplete method (Phase 10) - Deleted markSessionComplete() method from DatabaseManager - Removed markSessionComplete call from SessionCompletionHandler - Session completion status no longer tracked in database - Part of session management simplification effort 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * refactor: replace deleted updateSDKSessionId calls in import script (Phase 11) - Replace updateSDKSessionId() calls with direct SQL UPDATE statements - Method was deleted in Phase 3 as part of session management simplification - Import script now uses direct database access consistently 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * test: add validation for SQL updates in sdk_sessions table * refactor: enhance worker-cli to support manual and automated runs * Remove cleanup hook and associated session completion logic - Deleted the cleanup-hook implementation from the hooks directory. - Removed the session completion endpoint that was used by the cleanup hook. - Updated the SessionCompletionHandler to eliminate the completeByClaudeId method and its dependencies. - Adjusted the SessionRoutes to reflect the removal of the session completion route. * fix: update worker-cli command to use bun for consistency * feat: Implement timestamp fix for observations and enhance processing logic - Added `earliestPendingTimestamp` to `ActiveSession` to track the original timestamp of the earliest pending message. - Updated `SDKAgent` to capture and utilize the earliest pending timestamp during response processing. - Modified `SessionManager` to track the earliest timestamp when yielding messages. - Created scripts for fixing corrupted timestamps, validating fixes, and investigating timestamp issues. - Verified that all corrupted observations have been repaired and logic for future processing is sound. - Ensured orphan processing can be safely re-enabled after validation. * feat: Enhance SessionStore to support custom database paths and add timestamp fields for observations and summaries * Refactor pending queue processing and add management endpoints - Disabled automatic recovery of orphaned queues on startup; users must now use the new /api/pending-queue/process endpoint. - Updated processOrphanedQueues method to processPendingQueues with improved session handling and return detailed results. - Added new API endpoints for managing pending queues: GET /api/pending-queue and POST /api/pending-queue/process. - Introduced a new script (check-pending-queue.ts) for checking and processing pending observation queues interactively or automatically. - Enhanced logging and error handling for better monitoring of session processing. * updated agent sdk * feat: Add manual recovery guide and queue management endpoints to documentation --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
135 lines
3.1 KiB
JSON
135 lines
3.1 KiB
JSON
{
|
|
"$schema": "https://mintlify.com/schema.json",
|
|
"name": "Claude-Mem",
|
|
"description": "Persistent memory compression system that preserves context across Claude Code sessions",
|
|
"theme": "mint",
|
|
"favicon": "/claude-mem-logomark.webp",
|
|
"logo": {
|
|
"light": "/claude-mem-logo-for-light-mode.webp",
|
|
"dark": "/claude-mem-logo-for-dark-mode.webp",
|
|
"href": "https://github.com/thedotmack/claude-mem"
|
|
},
|
|
"colors": {
|
|
"primary": "#3B82F6",
|
|
"light": "#EFF6FF",
|
|
"dark": "#1E40AF"
|
|
},
|
|
"navbar": {
|
|
"links": [
|
|
{
|
|
"label": "GitHub",
|
|
"href": "https://github.com/thedotmack/claude-mem"
|
|
}
|
|
],
|
|
"primary": {
|
|
"type": "button",
|
|
"label": "Install",
|
|
"href": "https://github.com/thedotmack/claude-mem#quick-start"
|
|
}
|
|
},
|
|
"navigation": {
|
|
"groups": [
|
|
{
|
|
"group": "Get Started",
|
|
"icon": "rocket",
|
|
"pages": [
|
|
"introduction",
|
|
"installation",
|
|
"usage/getting-started",
|
|
"usage/search-tools",
|
|
"usage/claude-desktop",
|
|
"usage/private-tags",
|
|
"usage/export-import",
|
|
"usage/manual-recovery",
|
|
"beta-features",
|
|
"endless-mode"
|
|
]
|
|
},
|
|
{
|
|
"group": "Best Practices",
|
|
"icon": "lightbulb",
|
|
"pages": [
|
|
"context-engineering",
|
|
"progressive-disclosure"
|
|
]
|
|
},
|
|
{
|
|
"group": "Configuration & Development",
|
|
"icon": "gear",
|
|
"pages": [
|
|
"configuration",
|
|
"modes",
|
|
"development",
|
|
"troubleshooting",
|
|
"platform-integration"
|
|
]
|
|
},
|
|
{
|
|
"group": "Architecture",
|
|
"icon": "diagram-project",
|
|
"pages": [
|
|
"architecture/overview",
|
|
"architecture-evolution",
|
|
"hooks-architecture",
|
|
"architecture/hooks",
|
|
"architecture/worker-service",
|
|
"architecture/database",
|
|
"architecture/search-architecture",
|
|
"architecture/pm2-to-bun-migration"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"footer": {
|
|
"socials": {
|
|
"github": "https://github.com/thedotmack/claude-mem"
|
|
},
|
|
"links": [
|
|
{
|
|
"header": "Resources",
|
|
"items": [
|
|
{
|
|
"label": "Documentation",
|
|
"href": "https://github.com/thedotmack/claude-mem"
|
|
},
|
|
{
|
|
"label": "Issues",
|
|
"href": "https://github.com/thedotmack/claude-mem/issues"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"header": "Legal",
|
|
"items": [
|
|
{
|
|
"label": "License (AGPL-3.0)",
|
|
"href": "https://github.com/thedotmack/claude-mem/blob/main/LICENSE"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"seo": {
|
|
"indexing": "all",
|
|
"metatags": {
|
|
"og:type": "website",
|
|
"og:site_name": "Claude-Mem Documentation",
|
|
"og:description": "Persistent memory compression system that preserves context across Claude Code sessions"
|
|
}
|
|
},
|
|
"contextual": {
|
|
"options": [
|
|
"copy",
|
|
"view",
|
|
"chatgpt",
|
|
"claude",
|
|
"cursor"
|
|
]
|
|
},
|
|
"integrations": {
|
|
"telemetry": {
|
|
"enabled": false
|
|
}
|
|
}
|
|
}
|