7f9959fdb7
This release merges PR #69, delivering a comprehensive architectural refactor of the worker service, extensive UI enhancements, and significant code cleanup. 🏗️ Architecture Changes (Worker Service v2) **Modular Rewrite**: Extracted monolithic worker-service.ts into focused modules: - DatabaseManager.ts (111 lines): Centralized database initialization - SessionManager.ts (204 lines): Complete session lifecycle management - SDKAgent.ts (309 lines): Claude SDK interactions & observation compression - SSEBroadcaster.ts (86 lines): Server-Sent Events broadcast management - PaginationHelper.ts (196 lines): Reusable pagination logic - SettingsManager.ts (68 lines): Viewer settings persistence - worker-types.ts (176 lines): Shared TypeScript types **Key Improvements**: - Eliminated duplicated session logic (4 instances → 1 helper) - Replaced magic numbers with named constants - Removed fragile PM2 string parsing - Fail-fast error handling instead of silent failures - Fixed SDK agent narrative assignment (obs.title → obs.narrative) 🎨 UI/UX Improvements **ScrollToTop Component**: GPU-accelerated smooth scrolling button **ObservationCard Refactor**: Fixed facts toggle, improved metadata display **Pagination Enhancements**: Better loading states, error recovery, deduplication **Card Consistency**: Unified layout patterns across all card types 📚 Documentation **New Files** (7,542 lines): - context/agent-sdk-ref.md (1,797 lines): Complete Agent SDK reference - docs/worker-service-architecture.md (1,174 lines): v2 architecture docs - docs/worker-service-rewrite-outline.md (1,069 lines): Refactor plan - docs/worker-service-overhead.md (959 lines): Performance analysis - docs/processing-indicator-*.md (980 lines): Processing status docs - docs/typescript-errors.md (180 lines): Error reference - PLAN-full-observation-display.md (468 lines): Future UI roadmap 🧹 Code Cleanup **Deleted Dead Code** (~2,000 lines): - src/shared/{config.ts,storage.ts,types.ts} - src/utils/{platform.ts,usage-logger.ts} - src/hooks/index.ts, src/sdk/index.ts - docs/{VIEWER.md,worker-server-architecture.md} **Files Changed**: 70 total (11 new, 7 deleted, 52 modified) **Net Impact**: +7,470 lines (11,105 additions, 3,635 deletions) 🐛 Bug Fixes - Fixed SDK agent narrative assignment (e22edad) - Corrected PostToolUse hook field name (13643a5) - Removed unnecessary worker startup from smart-install (6204fe9) - Simplified context-hook worker management (6204fe9) ✅ Testing All systems verified: - Worker service starts successfully - All hooks function correctly - Viewer UI renders properly - Build pipeline compiles without errors 📖 Reference PR: #69 Previous Version: 5.1.4 Semantic Version: MINOR (backward compatible features & improvements) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
70 lines
2.3 KiB
JSON
70 lines
2.3 KiB
JSON
{
|
|
"name": "claude-mem",
|
|
"version": "5.2.0",
|
|
"description": "Memory compression system for Claude Code - persist context across sessions",
|
|
"keywords": [
|
|
"claude",
|
|
"claude-code",
|
|
"claude-agent-sdk",
|
|
"mcp",
|
|
"plugin",
|
|
"memory",
|
|
"compression",
|
|
"knowledge-graph",
|
|
"transcript",
|
|
"typescript",
|
|
"nodejs"
|
|
],
|
|
"author": "Alex Newman",
|
|
"license": "AGPL-3.0",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/thedotmack/claude-mem.git"
|
|
},
|
|
"homepage": "https://github.com/thedotmack/claude-mem#readme",
|
|
"bugs": {
|
|
"url": "https://github.com/thedotmack/claude-mem/issues"
|
|
},
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=18.0.0"
|
|
},
|
|
"scripts": {
|
|
"build": "node scripts/build-hooks.js",
|
|
"test": "node --test tests/",
|
|
"test:parser": "npx tsx src/sdk/parser.test.ts",
|
|
"test:context": "echo '{\"session_id\":\"test-'$(date +%s)'\",\"cwd\":\"'$(pwd)'\",\"source\":\"startup\"}' | node plugin/scripts/context-hook.js 2>/dev/null",
|
|
"test:context:verbose": "echo '{\"session_id\":\"test-'$(date +%s)'\",\"cwd\":\"'$(pwd)'\",\"source\":\"startup\"}' | node plugin/scripts/context-hook.js",
|
|
"sync-marketplace": "rsync -av --delete --exclude=.git ./ ~/.claude/plugins/marketplaces/thedotmack/ && cd ~/.claude/plugins/marketplaces/thedotmack/ && npm install",
|
|
"worker:start": "pm2 start ecosystem.config.cjs",
|
|
"worker:stop": "pm2 stop claude-mem-worker",
|
|
"worker:restart": "pm2 restart claude-mem-worker",
|
|
"worker:logs": "pm2 logs claude-mem-worker",
|
|
"usage:analyze": "node scripts/analyze-usage.js",
|
|
"usage:today": "node scripts/analyze-usage.js $(date +%Y-%m-%d)"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/claude-agent-sdk": "^0.1.27",
|
|
"@modelcontextprotocol/sdk": "^1.20.1",
|
|
"better-sqlite3": "^11.0.0",
|
|
"express": "^4.18.2",
|
|
"glob": "^11.0.3",
|
|
"handlebars": "^4.7.8",
|
|
"pm2": "^6.0.13",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"zod-to-json-schema": "^3.24.6"
|
|
},
|
|
"devDependencies": {
|
|
"@types/better-sqlite3": "^7.6.8",
|
|
"@types/cors": "^2.8.19",
|
|
"@types/express": "^4.17.21",
|
|
"@types/node": "^20.0.0",
|
|
"@types/react": "^18.3.5",
|
|
"@types/react-dom": "^18.3.0",
|
|
"esbuild": "^0.25.12",
|
|
"tsx": "^4.20.6",
|
|
"typescript": "^5.3.0"
|
|
}
|
|
}
|