5b3804ac08
Replace MCP subprocess approach with persistent Chroma HTTP server for improved performance and reliability. This re-enables Chroma on Windows by eliminating the subprocess spawning that caused console popups. Changes: - NEW: ChromaServerManager.ts - Manages local Chroma server lifecycle via `npx chroma run` - REFACTOR: ChromaSync.ts - Uses chromadb npm package's ChromaClient instead of MCP subprocess (removes Windows disabling) - UPDATE: worker-service.ts - Starts Chroma server on initialization - UPDATE: GracefulShutdown.ts - Stops Chroma server on shutdown - UPDATE: SettingsDefaultsManager.ts - New Chroma configuration options - UPDATE: build-hooks.js - Mark optional chromadb deps as external Benefits: - Eliminates subprocess spawn latency on first query - Single server process instead of per-operation subprocesses - No Python/uvx dependency for local mode - Re-enables Chroma vector search on Windows - Future-ready for cloud-hosted Chroma (claude-mem pro) - Cross-platform: Linux, macOS, Windows Configuration: CLAUDE_MEM_CHROMA_MODE=local|remote CLAUDE_MEM_CHROMA_HOST=127.0.0.1 CLAUDE_MEM_CHROMA_PORT=8000 CLAUDE_MEM_CHROMA_SSL=false Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
111 lines
4.1 KiB
JSON
111 lines
4.1 KiB
JSON
{
|
|
"name": "claude-mem",
|
|
"version": "9.0.10",
|
|
"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",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": "./dist/index.js"
|
|
},
|
|
"./sdk": {
|
|
"types": "./dist/sdk/index.d.ts",
|
|
"import": "./dist/sdk/index.js"
|
|
},
|
|
"./modes/*": "./plugin/modes/*"
|
|
},
|
|
"files": [
|
|
"dist",
|
|
"plugin"
|
|
],
|
|
"engines": {
|
|
"node": ">=18.0.0",
|
|
"bun": ">=1.0.0"
|
|
},
|
|
"scripts": {
|
|
"dev": "npm run build-and-sync",
|
|
"build": "node scripts/build-hooks.js",
|
|
"build-and-sync": "npm run build && npm run sync-marketplace && sleep 1 && cd ~/.claude/plugins/marketplaces/thedotmack && npm run worker:restart",
|
|
"sync-marketplace": "node scripts/sync-marketplace.cjs",
|
|
"sync-marketplace:force": "node scripts/sync-marketplace.cjs --force",
|
|
"build:binaries": "node scripts/build-worker-binary.js",
|
|
"worker:logs": "tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log",
|
|
"worker:tail": "tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log",
|
|
"changelog:generate": "node scripts/generate-changelog.js",
|
|
"discord:notify": "node scripts/discord-release-notify.js",
|
|
"worker:start": "bun plugin/scripts/worker-service.cjs start",
|
|
"worker:stop": "bun plugin/scripts/worker-service.cjs stop",
|
|
"worker:restart": "bun plugin/scripts/worker-service.cjs restart",
|
|
"worker:status": "bun plugin/scripts/worker-service.cjs status",
|
|
"queue": "bun scripts/check-pending-queue.ts",
|
|
"queue:process": "bun scripts/check-pending-queue.ts --process",
|
|
"queue:clear": "bun scripts/clear-failed-queue.ts --all --force",
|
|
"claude-md:regenerate": "bun scripts/regenerate-claude-md.ts",
|
|
"claude-md:dry-run": "bun scripts/regenerate-claude-md.ts --dry-run",
|
|
"translate-readme": "bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md",
|
|
"translate:tier1": "npm run translate-readme -- zh ja pt-br ko es de fr",
|
|
"translate:tier2": "npm run translate-readme -- he ar ru pl cs nl tr uk",
|
|
"translate:tier3": "npm run translate-readme -- vi id th hi bn ro sv",
|
|
"translate:tier4": "npm run translate-readme -- it el hu fi da no",
|
|
"translate:all": "npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait",
|
|
"bug-report": "npx tsx scripts/bug-report/cli.ts",
|
|
"cursor:install": "bun plugin/scripts/worker-service.cjs cursor install",
|
|
"cursor:uninstall": "bun plugin/scripts/worker-service.cjs cursor uninstall",
|
|
"cursor:status": "bun plugin/scripts/worker-service.cjs cursor status",
|
|
"cursor:setup": "bun plugin/scripts/worker-service.cjs cursor setup",
|
|
"test": "bun test",
|
|
"test:sqlite": "bun test tests/sqlite/",
|
|
"test:agents": "bun test tests/worker/agents/",
|
|
"test:search": "bun test tests/worker/search/",
|
|
"test:context": "bun test tests/context/",
|
|
"test:infra": "bun test tests/infrastructure/",
|
|
"test:server": "bun test tests/server/"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/claude-agent-sdk": "^0.1.76",
|
|
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
"chromadb": "^1.9.2",
|
|
"ansi-to-html": "^0.7.2",
|
|
"express": "^4.18.2",
|
|
"glob": "^11.0.3",
|
|
"handlebars": "^4.7.8",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"yaml": "^2.8.2",
|
|
"zod-to-json-schema": "^3.24.6"
|
|
},
|
|
"devDependencies": {
|
|
"@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.27.2",
|
|
"tsx": "^4.20.6",
|
|
"typescript": "^5.3.0"
|
|
}
|
|
}
|