{"_id":"@bjlee2024/claude-mem","_rev":"24-f697618e961f588175e58dc97e9e2ce5","name":"@bjlee2024/claude-mem","dist-tags":{"latest":"13.11.0"},"versions":{"13.4.0":{"name":"@bjlee2024/claude-mem","version":"13.4.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"1da91bad2c2304f08e4fa6f821c47a8122ab6cd6","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.0.tgz","fileCount":101,"integrity":"sha512-lOsS8sdK1+wuc0geek/NFS7ohdHjfqE8A9vQ9TOokYY9dVQiUvC1K7o54+B/6MrBBR8QYvVsUAI0RdfGuPhLBw==","signatures":[{"sig":"MEUCIQCyj4ttYsAngBPqPtNDTGlcpwIIR57iOCYpH0uCH6UbPQIgO21bqhkIB+7OW3YrebIBqfhimZZ0DgDM51WTDCtusGg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8872719},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"b47a03bd35f0353293458a48ea071d5c29424d33","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.0_1780645145663_0.4316607735661393","host":"s3://npm-registry-packages-npm-production"}},"13.4.1":{"name":"@bjlee2024/claude-mem","version":"13.4.1","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.1","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"8ddc42e5a1c42c2dcf0a657f0853ffe0548161cd","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.1.tgz","fileCount":101,"integrity":"sha512-rwbKGYZ4X8CDZokLeaoknczJl0LJvODCGxWZ/TmzCyPy52jlCn0fA/MXLeuJPxKkEVktKw2ThvBFWHoIQ8OCJg==","signatures":[{"sig":"MEUCIEhgJEVBEbhSNUiC9oUtJ8OsmZ+NRZNLGqnnrz3SoAdvAiEA55A36IpRauQMZ604LTk18TLreW9PClV4QNsS1yjWmn0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8873793},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"3a1756ded52b435c3b794317cd4b67e205816f95","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.1_1780646477013_0.21977270512126879","host":"s3://npm-registry-packages-npm-production"}},"13.4.2":{"name":"@bjlee2024/claude-mem","version":"13.4.2","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.2","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"b4a30ce6be8a207a0954c7750c5bb075501d1b04","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.2.tgz","fileCount":101,"integrity":"sha512-EwJ397npcrpiFhpz8Y6eTkZMejOehjN833gcKRXkK7CYxPrSmergR/qDaYvvDx9ze1FNOX8ChUOLHpDyQ5SwvQ==","signatures":[{"sig":"MEUCIQCJ+K/m8olf1CZ2CuuRRTaSmzKfckREtabmUgJ3IZok7QIgMMsteKTyp5wmSXO2nYpVlYlaTYeJtuCZX1fF9ggL5dE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8873911},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"c113af1e5cb0be76cf53f91635d1c1594d203d40","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.2_1780646977145_0.9398384153499164","host":"s3://npm-registry-packages-npm-production"}},"13.4.3":{"name":"@bjlee2024/claude-mem","version":"13.4.3","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.3","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"f52cd59ec23a779e905d20116e5e2cbe52f2b9d2","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.3.tgz","fileCount":101,"integrity":"sha512-YcDAlgq5sgz4ujIcNBDUzqmgE48cAV5wFq1rjSPAtHDQfJ/vs74/TloUHuIopua09wBp8aCCuE01e9JPgetUvQ==","signatures":[{"sig":"MEQCICCUvag1SOZKSCyqHtwQNYqMk39EXw0LaLOoGqM5HKVDAiA5TJQ4cH2HsGY0TZQsjLA9HPyE8F+nrdk8uOU0fohnjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8882089},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"fed9aa5deaa55fa8cf5ccf8a53eaf4d73a43f75a","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.3_1780649954057_0.11428051662263239","host":"s3://npm-registry-packages-npm-production"}},"13.4.4":{"name":"@bjlee2024/claude-mem","version":"13.4.4","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.4","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"1f8ca36cef3eabab28f6f7dc764276bd30cdf1df","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.4.tgz","fileCount":101,"integrity":"sha512-d/xztY1sDHb+i6OCcvb8Gi/bQO+pIpO0t8cOdF5dJ6kgXqlK6KxXgLA9J0RoNvjG5XJSMpCBs6+Z+bhxVL47pg==","signatures":[{"sig":"MEYCIQCVtaYqi60Z2v3cFiQYEKW16z6NRGlGl48c8uq5XCA0xAIhANG0y1gE4+WJ4/sXYMR1ZEZGGpq+aBFCtUeqjXCJxBnm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8883377},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"6b41e81d75c0452cc6578bf9b9cef935d1eb72ac","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.4_1780650470391_0.1591902891382222","host":"s3://npm-registry-packages-npm-production"}},"13.4.5":{"name":"@bjlee2024/claude-mem","version":"13.4.5","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.5","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"98f480a48db3ca3d1dfe306ff9172cc9dc370c3e","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.5.tgz","fileCount":101,"integrity":"sha512-YhIqDAoBlauePTydWIijIV8k4wATIAL2HovEZzdt+acSAaiVneH1EHMieK7Z7ePgyMyko4nCZUt6YBDKr+X9Rw==","signatures":[{"sig":"MEUCIQC6XL+QKXK4Q7dtXtM4DTiVoVbMRNl3HLyB0r5e98qMugIgOQcdhF6i2+3L1fM8rXYZvYJOOLk+8mP58G2L7/K6uIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8883428},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"3305b9d617bf47545df2d23869221de68a825b99","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.5_1780650981694_0.9600229540457772","host":"s3://npm-registry-packages-npm-production"}},"13.4.6":{"name":"@bjlee2024/claude-mem","version":"13.4.6","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.6","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"573eef945ce58a720231b22b83854d1d85cd9be6","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.6.tgz","fileCount":101,"integrity":"sha512-xxoxSpgPgDTiDUq8T71RM4z6UVM8PnSiKbJDFAWlISl9DsptmeUsxxh7kQ3i78zx2/6C+gMSYSLjUE8+1fTvoA==","signatures":[{"sig":"MEUCIQDqu2kQK8c67Jafgb7TED0hh0GosglZw02XsoSglF3BcwIgRMvdFVETDsgYHfyt0Pt6QtJXp+aqPhIkAnIwQ6BWWqY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8883445},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"85e6242a17891cac2ba8694a28e56e05f1703bf4","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@bjlee2024/claude-mem":"^13.4.0","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.6_1780651369527_0.6513353098231172","host":"s3://npm-registry-packages-npm-production"}},"13.4.8":{"name":"@bjlee2024/claude-mem","version":"13.4.8","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.8","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"800d53fc1362d55b7d19c1f91b5a0dfae25fe766","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.8.tgz","fileCount":102,"integrity":"sha512-l+9ZbHuo9KHBc6GpAZwrqHRpgBzviYq6Qp+GffZc8Ii54KjYhZkeiMnkkXR2sLqwdCJVduIWFCtyX9muFvsy+w==","signatures":[{"sig":"MEUCIEBfsusV7az6Xlv51P9cG4o018ya4vycmogIIfoOgJxAAiEA3LHNNf9yx5/ufik36dBHtgvJkGEt0vb22+ikULfKkPo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8883867},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"c815fbf6d3d8b8bf1e0a35c4e1e64ec792242eb4","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.8_1780652915523_0.17650188048186743","host":"s3://npm-registry-packages-npm-production"}},"13.4.9":{"name":"@bjlee2024/claude-mem","version":"13.4.9","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.9","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"707b7f0af3b21f23919620c0aa1e551ee24aa83b","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.9.tgz","fileCount":102,"integrity":"sha512-j0CE8G0D7eGcOnG4MEAlLQ+n5rbntJFMno0VH8tdV5O4P+wGGn457WMdLMKgvhvgfcH5NVqzu7S2H0yXp9TBWw==","signatures":[{"sig":"MEUCIQDCA5iKtK/K7EC3ONrXZrqA4X3cLUzC2NLUajzvipWkgwIgDZGlYtRfIHULwHi5p2UEylYqg2KDZCX1m1I7SPOGZ48=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8885389},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"61b01ab2aec0c83aaec84b0a61b3f5f58cca6f74","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.9_1780674715280_0.05561829371077254","host":"s3://npm-registry-packages-npm-production"}},"13.4.18":{"name":"@bjlee2024/claude-mem","version":"13.4.18","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.18","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"b1e450e60be6004e339a6b35ff3346c108e21b9a","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.18.tgz","fileCount":103,"integrity":"sha512-33kDLXrX1qps/ndYTCC1bEA8UVV3GVsCT5zEMr3Jc0v1XbZZ7w6RB3wSSnvtNhGFTPFi4QBcyi1FXYoEYBYqrw==","signatures":[{"sig":"MEYCIQCP0YXXwCPSIAxqNTyl7+1I0RA82JxG3WGPuIDBvJb7awIhAMoYN7ouV/xmtwnRyO9Jh0CfCSTq8tV9Ky9yy1z1qSgM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8929631},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"33fdd156f660799df2d65e11da3291a82f81d500","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.18_1780759741329_0.35488671526553106","host":"s3://npm-registry-packages-npm-production"}},"13.4.19":{"name":"@bjlee2024/claude-mem","version":"13.4.19","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.19","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"1d9c9e0297167aaa75abc7079c9c525ebddf0aed","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.19.tgz","fileCount":103,"integrity":"sha512-PuqNKxUEHx3XjooeqrbtcpvLBgFy0YrLQsdLMLZLw0FrS0WtS0QC47BhGOnXXbH0wA9Z3aO9gpsX4noqv5pOaw==","signatures":[{"sig":"MEUCIEpSTTTTGgHfGjZueOrdcIXRB61ZzKcmQxwVxin1AVCQAiEAgijclXwdCV1rgzZRmw/G0j8gJuYby1ICDVUvsdPtH8c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8930175},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"a1ff1a2f81665a29c296427b49336cc7bccad8a1","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.19_1780844719818_0.6436764361102494","host":"s3://npm-registry-packages-npm-production"}},"13.4.20":{"name":"@bjlee2024/claude-mem","version":"13.4.20","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.20","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"b88d8cabde568a73a97b45315351047f34e64361","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.20.tgz","fileCount":103,"integrity":"sha512-KTWyULJvMTP9jpNLoUtCQalwZs43X7FZFu4PWEY6MaSyF3d/nTJNMjOaibirZ3DRCleBrLwmMRKockDlNujPmQ==","signatures":[{"sig":"MEUCIGfmNImmfrhASCbfGPeFOKNn6IOAydryhV5veTtVqXj0AiEAo9sl8XIN5IdABD4dsFRqjkrgGKyXN3d9tr7JqawVkv8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8931620},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"d7666590dc7fc039f5f7a5b834f55e1c10f1425f","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.20_1780883351108_0.6159302645151885","host":"s3://npm-registry-packages-npm-production"}},"13.4.21":{"name":"@bjlee2024/claude-mem","version":"13.4.21","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.21","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"9319aefde4168ea682f4617ab41a48408072dd58","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.21.tgz","fileCount":103,"integrity":"sha512-RovWcm/SSg/355C0uJ7J34soKlFYkN08POompU8IP1ncxRM/J7LFceEwp+UG+VriZYd8XyKd1HtoYJx7NhcDTw==","signatures":[{"sig":"MEUCIFGLrQHXZC60W2JiLWbhuqfbhaQwtV1u/H7GaRFUadYiAiEA4A40YjkUWNMO1p95yCUb5CoEvEk3Vxv/laxvuhQpW1c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8935583},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"5decfae871d1ce07f2214832c5774a859e71746d","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.10.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.2.138"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.6.2","@types/react":"^19.2.14","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.21_1780899393258_0.9273708263864335","host":"s3://npm-registry-packages-npm-production"}},"13.4.22":{"name":"@bjlee2024/claude-mem","version":"13.4.22","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.22","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"5c5e2f5d61766424dc1e3e8d1e6975ce3e614072","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.22.tgz","fileCount":103,"integrity":"sha512-TS6gEyH05yNP0EIEo0OZrjZeIDIqK8YwYu8fiIhI0VJF73u6MWz9DTX/Eu6kUUFCLLbOB7FZX/eFc/YAH+hfxg==","signatures":[{"sig":"MEUCIQCK9x9scuPrErYSedBPsk9N1ACjD35j4uJEc/gNy2Y9VwIgPmUbOjmbEBOX+pEO54obJYD8oXWz4rSvbQLA2QqrttI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8966890},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"c7a27abafac6c6d36004ccba0f9c5ba81a75af20","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.22_1780992424031_0.28783506579610574","host":"s3://npm-registry-packages-npm-production"}},"13.4.23":{"name":"@bjlee2024/claude-mem","version":"13.4.23","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.4.23","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"2b0faa41ff116bf248fc5327e1323dea4a535a37","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.4.23.tgz","fileCount":103,"integrity":"sha512-fCLxEEr9ZIG7kg748rfgvjWxWGHCu79GVJ23YVxdhRCyEgc2vvj87xMkU4n47dMLbYqgO5VOU5RtIbvMysCjgA==","signatures":[{"sig":"MEQCIEsSJnlTv4b1p0+eNwwl29wtoF4mtYWDI2NdeNYqJs0bAiAzyhE47pPCZZiJMqsNC69cKcDl8t0m8z/4qkW5kGJBPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9585578},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"217efc679cafc16427e125ffdba30169a8b6fa6c","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.4.23_1782570448601_0.7519575561738205","host":"s3://npm-registry-packages-npm-production"}},"13.5.0":{"name":"@bjlee2024/claude-mem","version":"13.5.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.5.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"d97fcec45589dcf6d8111df9ffebee5dde90b951","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.5.0.tgz","fileCount":103,"integrity":"sha512-S9bafyPdazYt+cqhG9OTTyAIpBa03aS3+HvcDcN3xwj1daQKnCeGMLMzmu8pjolN2+Sc7/rGDk2auuwMbUljOQ==","signatures":[{"sig":"MEUCIAEhQM9KKRk0MDouDT0j1P1b79u4S3AG/mJQ11c9yw8YAiEAmo9U7ExQSfa/rzyi2UlJGuNb/tiKqCo0k+WBbKYqoXY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9618971},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"ff5dee8e0e1bd4543c21e6dfe8181473416a3cb5","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.5.0_1782727061124_0.6672415255581001","host":"s3://npm-registry-packages-npm-production"}},"13.6.0":{"name":"@bjlee2024/claude-mem","version":"13.6.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.6.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"bc8ae849073f08c6f23b6633dcfb926ecc64aba1","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.6.0.tgz","fileCount":103,"integrity":"sha512-xCkR48vrTuyAup1J4nCruQBYUXKrZ5zQXztkKPX0KPs4xeg+CAvSOHm6X5hrO6U3hTRbQg56W7X0ngbodGycRw==","signatures":[{"sig":"MEYCIQCC2I2zVx2cKsWUewfthB5fpM5MSkJCM0mcM/zWhlD95QIhAPbOqTjwtEJZ6t6QAoV5OC366SBktTXtCE4ri51H6bGM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9619486},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"f36c763713629282d227770a1c1661ab977107af","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.6.0_1782796921475_0.06089857073862848","host":"s3://npm-registry-packages-npm-production"}},"13.7.0":{"name":"@bjlee2024/claude-mem","version":"13.7.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.7.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"aed7867947b5d0a5c6d48259b1b8ef31400db2f9","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.7.0.tgz","fileCount":104,"integrity":"sha512-1IcOgwf6LAsXQ8KSuoWpLRDeOA/CisKF6KBrvCR2PH5goGTtdlW32Vnv0E/sTS7SBZQ4vsV1rg1elyWW+hpXlw==","signatures":[{"sig":"MEUCIQCS849qm6gDXp0fjmtdJGpTO0Q5B2v3tZbb7tS7X3JpOAIgdkpBDBHXbh4mu4UgWmPsonh2dEHkgAECS5AJHqAy2OY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9702267},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"2d0f94ae7e7ec6d2b2ede0fbe299e6dc39cebfb1","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.17.0","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"26.4.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.7.0_1783926133791_0.6201983583284991","host":"s3://npm-registry-packages-npm-production"}},"13.7.1":{"name":"@bjlee2024/claude-mem","version":"13.7.1","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.7.1","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"cfb81b85ca4514b801bae35938b4c81616769e7c","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.7.1.tgz","fileCount":104,"integrity":"sha512-8ukh+ki+xh2G6sGVQhSI/GRHHYsPKZmOXKwYu3KE5CgFysYqe1WY4bvqd5F2swH1TV8oTmdapkULHcyfJ8NGHw==","signatures":[{"sig":"MEUCIBYQxgGTdWkYHQpElFsQkYlPWlP0NUL3UFNXo6f+Lb2LAiEA6XoghAeSvZAcr/CObUngPcou4zxzDba1a7Wq5zo/UKU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9701931},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"31cdb4f27ecd8b6091e9158ac047ce0d59eade00","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.17.0","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"26.4.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.7.1_1783927190861_0.5538740109468012","host":"s3://npm-registry-packages-npm-production"}},"13.8.0":{"name":"@bjlee2024/claude-mem","version":"13.8.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.8.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"99bccccfb61e907f168cda45fa53aac328badbf4","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.8.0.tgz","fileCount":104,"integrity":"sha512-swC4BHk9GDy23eyhx8FNcWLuvg7w85QHNZGCvwBTa0HPEzH7Ix8++hR8KJn8O+6KPf24khbeU476YphN6aujFg==","signatures":[{"sig":"MEQCIDF9SQpv7zF8zeOWVKHUzwMdopJGpFAvFYkCQHBnHGKmAiBvMdtOlVZgHYZ7dbQnkV/gFuY6b5tKZz7uEmnzE5UQLQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9655411},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"0eb7ca490cf3e64b537baa9999fadbe50f9ae253","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.8.0_1786410658808_0.3256180150922954","host":"s3://npm-registry-packages-npm-production"}},"13.8.1":{"name":"@bjlee2024/claude-mem","version":"13.8.1","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.8.1","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"55984576282a741527875ca7d0ab11e15f1ade54","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.8.1.tgz","fileCount":105,"integrity":"sha512-N6plShxAJhEccnCLzqMZrsPc9fODq5e5iO7BU+wtu4P/4rEMdqSUjA02IwZ6niFiqqzYGJxItAd6ccwwaQiTyA==","signatures":[{"sig":"MEUCIQDiKtJMhjXdalMEiuNLvsZlNqqMEKg+BeOY5S8rwHzawQIgTMDN3If+iUQSjIeg7w4h0I/7x4Z2aj/MXz9yamQM9a4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9663982},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"2616406958ef8f9f93ab71637ca8509e4039081e","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.8.1_1786495415326_0.029935097149572654","host":"s3://npm-registry-packages-npm-production"}},"13.9.0":{"name":"@bjlee2024/claude-mem","version":"13.9.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.9.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"bfc7f19485014513b2d56dac362b1e9fcc455203","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.9.0.tgz","fileCount":105,"integrity":"sha512-7mG8mUtzFxFtW+qfCZJsc4KT/k2YmyIrv6Vo8dkZwy9hdW2sK8jRJaXIT4FWJbzSR2H9d42znJ6xsUctXFx9Tg==","signatures":[{"sig":"MEUCIAv7lbTwYPn7/dswdvoccwrvPZV0LVisSGyMO+RtIg2hAiEAwO0cFyBn3oIzIdPLzdlvqRVvMwszr8X6iYhXOVrYrxY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9663982},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"69009d330452a1ffff1fb3b035f326381b9963da","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.9.0_1786496758204_0.8753781857661294","host":"s3://npm-registry-packages-npm-production"}},"13.10.0":{"name":"@bjlee2024/claude-mem","version":"13.10.0","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"author":{"name":"Alex Newman"},"license":"Apache-2.0","_id":"@bjlee2024/claude-mem@13.10.0","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"np":{"2fa":false,"yarn":false,"contents":".","testScript":"test"},"bin":{"claude-mem":"dist/npx-cli/index.js"},"dist":{"shasum":"1fe47c571c109d6a38e8ae1a2fca2591f49ea432","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.10.0.tgz","fileCount":107,"integrity":"sha512-YBTNCuNPMI1bNU0jLhslEK8LtSB02soqc2kLdzxhTh/Rf3/sYetvpLmkyRUvLqi16Awtv827JI0XwhFeaHw5zQ==","signatures":[{"sig":"MEYCIQCOYF/ofboLOvLXzkSLABgMaNkpuhf4ayoLwvu+WE960QIhAMjs9RODgjIvr2sqqGWUFJers0Wrh31spLEalhyoylcK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9670201},"type":"module","engines":{"bun":">=1.0.0","node":">=20.0.0"},"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/*"},"gitHead":"087ec7a9faf0255c6affac34b7f692cfe127c849","scripts":{"dev":"npm run build-and-sync","test":"bun test","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","queue":"bun scripts/check-pending-queue.ts","release":"np","pr:status":"bun scripts/pr-babysit-status.ts","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","bug-report":"npx tsx scripts/bug-report/cli.ts","test:infra":"bun test tests/infrastructure/","test:agents":"bun test tests/worker/agents/","test:search":"bun test tests/worker/search/","test:server":"bun test tests/server/","test:sqlite":"bun test tests/sqlite/","worker:logs":"tail -n 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","worker:stop":"bun plugin/scripts/worker-service.cjs stop","worker:tail":"tail -f 50 ~/.claude-mem/logs/worker-$(date +%Y-%m-%d).log","cursor:setup":"bun plugin/scripts/worker-service.cjs cursor setup","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","test:context":"bun test tests/context/","worker:start":"bun plugin/scripts/worker-service.cjs start","cursor:status":"bun plugin/scripts/worker-service.cjs cursor status","queue:process":"bun scripts/check-pending-queue.ts --process","release:major":"np major --no-cleanup","release:minor":"np minor --no-cleanup","release:patch":"np patch --no-cleanup","translate:all":"npm run translate:tier1 & npm run translate:tier2 & npm run translate:tier3 & npm run translate:tier4 & wait","worker:status":"bun plugin/scripts/worker-service.cjs status","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && npm run worker:restart)","build:binaries":"node scripts/build-worker-binary.js","cursor:install":"bun plugin/scripts/worker-service.cjs cursor install","discord:notify":"node scripts/discord-release-notify.js","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","strip-comments":"bun scripts/strip-comments.ts","typecheck:root":"tsc --noEmit","worker:restart":"bun plugin/scripts/worker-service.cjs restart","translate:tier1":"npm run translate-readme -- zh zh-tw 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","cursor:uninstall":"bun plugin/scripts/worker-service.cjs cursor uninstall","smoke:clean-room":"node scripts/smoke-clean-room.cjs","sync-marketplace":"node scripts/sync-marketplace.cjs","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","changelog:generate":"node scripts/generate-changelog.js","queue:clear:pending":"bun scripts/clear-pending-queue.ts --all --force","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","sync-marketplace:force":"node scripts/sync-marketplace.cjs --force","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js"},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"overrides":{"tree-sitter":"^0.25.0"},"repository":{"url":"git+https://github.com/bjlee2024/claude-mem.git","type":"git"},"_npmVersion":"11.12.1","description":"Memory compression system for Claude Code - persist context across sessions","directories":{},"_nodeVersion":"25.9.0","dependencies":{"pg":"^8.20.0","zod":"^4.4.3","cors":"^2.8.6","glob":"^13.0.6","yaml":"^2.8.4","react":"^19.2.6","bullmq":"^5.76.6","express":"^5.2.1","ioredis":"^5.11.1","dompurify":"^3.4.2","react-dom":"^19.2.6","handlebars":"^4.7.9","node-forge":"^1.4.0","picocolors":"^1.1.1","better-auth":"^1.6.9","shell-quote":"^1.8.3","ansi-to-html":"^0.7.2","@clack/prompts":"^1.3.0","zod-to-json-schema":"^3.25.2","@better-auth/api-key":"^1.6.9","@modelcontextprotocol/sdk":"^1.29.0","@anthropic-ai/claude-agent-sdk":"^0.3.168"},"_hasShrinkwrap":false,"devDependencies":{"np":"^11.2.0","tsx":"^4.21.0","jimp":"^1.6.1","parse5":"^8.0.1","esbuild":"^0.28.0","postcss":"^8.5.14","unified":"^11.0.5","ts-prune":"^0.10.3","@types/pg":"^8.20.0","@types/bun":"^1.3.13","remark-mdx":"^3.1.1","typescript":"^6.0.3","@types/cors":"^2.8.19","@types/node":"^25.9.2","@types/react":"^19.2.17","remark-parse":"^11.0.0","tree-sitter-c":"^0.24.1","@types/express":"^5.0.6","tree-sitter-go":"^0.25.0","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-php":"^0.24.2","@types/dompurify":"^3.2.0","@types/react-dom":"^19.2.3","tree-sitter-bash":"^0.25.1","tree-sitter-java":"^0.23.5","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scss":"^1.0.0","unist-util-visit":"^5.1.0","@types/node-forge":"^1.3.14","tree-sitter-scala":"^0.24.0","tree-sitter-swift":"^0.7.1","tree-sitter-elixir":"^0.3.5","tree-sitter-kotlin":"^0.3.8","tree-sitter-python":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-javascript":"^0.25.0","tree-sitter-typescript":"^0.23.2","@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"optionalDependencies":{"tree-kill":"^1.2.2"},"_npmOperationalInternal":{"tmp":"tmp/claude-mem_13.10.0_1786524328184_0.6597548577113501","host":"s3://npm-registry-packages-npm-production"}},"13.11.0":{"name":"@bjlee2024/claude-mem","version":"13.11.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":{"name":"Alex Newman"},"license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/bjlee2024/claude-mem.git"},"homepage":"https://github.com/bjlee2024/claude-mem#readme","bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"type":"module","bin":{"claude-mem":"dist/npx-cli/index.js"},"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/*"},"engines":{"node":">=20.0.0","bun":">=1.0.0"},"scripts":{"dev":"npm run build-and-sync","build":"node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js && node scripts/gen-plugin-lockfile.cjs","build-and-sync":"npm run build && npm run sync-marketplace && sleep 1 && (cd ~/.claude/plugins/marketplaces/bjlee2024 && 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","build:cli-binary":"bun build --compile --minify ./src/services/worker-service.ts --outfile plugin/scripts/claude-mem","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:pending":"bun scripts/clear-pending-queue.ts --all --force","pr:status":"bun scripts/pr-babysit-status.ts","claude-md:regenerate":"bun scripts/regenerate-claude-md.ts","claude-md:dry-run":"bun scripts/regenerate-claude-md.ts --dry-run","strip-comments":"bun scripts/strip-comments.ts","strip-comments:check":"bun scripts/strip-comments.ts --check","strip-comments:dry-run":"bun scripts/strip-comments.ts --dry-run","translate-readme":"bun scripts/translate-readme/cli.ts -v -o docs/i18n README.md","translate:tier1":"npm run translate-readme -- zh zh-tw 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","lint:hook-io":"node scripts/check-hook-io-discipline.cjs","lint:spawn-env":"node scripts/check-spawn-env-discipline.cjs","typecheck":"tsc --noEmit && tsc --noEmit -p src/ui/viewer/tsconfig.json","typecheck:root":"tsc --noEmit","typecheck:viewer":"tsc --noEmit -p src/ui/viewer/tsconfig.json","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/","e2e:server-beta:docker":"bash scripts/e2e-server-beta-docker.sh","check:postinstall-allowlist":"node scripts/check-postinstall-allowlist.js","smoke:clean-room":"node scripts/smoke-clean-room.cjs","prepublishOnly":"npm run build && node scripts/check-postinstall-allowlist.js","release":"np","release:patch":"np patch --no-cleanup","release:minor":"np minor --no-cleanup","release:major":"np major --no-cleanup"},"np":{"yarn":false,"contents":".","testScript":"test","2fa":false},"dependencies":{"@anthropic-ai/claude-agent-sdk":"^0.3.168","@better-auth/api-key":"^1.6.9","@clack/prompts":"^1.3.0","@modelcontextprotocol/sdk":"^1.29.0","ansi-to-html":"^0.7.2","better-auth":"^1.6.9","bullmq":"^5.76.6","cors":"^2.8.6","dompurify":"^3.4.2","express":"^5.2.1","glob":"^13.0.6","handlebars":"^4.7.9","ioredis":"^5.11.1","node-forge":"^1.4.0","pg":"^8.20.0","picocolors":"^1.1.1","react":"^19.2.6","react-dom":"^19.2.6","shell-quote":"^1.8.3","yaml":"^2.8.4","zod":"^4.4.3","zod-to-json-schema":"^3.25.2"},"overrides":{"tree-sitter":"^0.25.0"},"devDependencies":{"@derekstride/tree-sitter-sql":"^0.3.11","@tree-sitter-grammars/tree-sitter-lua":"^0.4.1","@tree-sitter-grammars/tree-sitter-markdown":"^0.3.2","@tree-sitter-grammars/tree-sitter-toml":"^0.7.0","@tree-sitter-grammars/tree-sitter-yaml":"^0.7.1","@tree-sitter-grammars/tree-sitter-zig":"^1.1.2","@types/bun":"^1.3.13","@types/cors":"^2.8.19","@types/dompurify":"^3.2.0","@types/express":"^5.0.6","@types/node":"^25.9.2","@types/node-forge":"^1.3.14","@types/pg":"^8.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","esbuild":"^0.28.0","jimp":"^1.6.1","np":"^11.2.0","parse5":"^8.0.1","postcss":"^8.5.14","remark-mdx":"^3.1.1","remark-parse":"^11.0.0","tree-sitter-bash":"^0.25.1","tree-sitter-c":"^0.24.1","tree-sitter-cli":"^0.26.8","tree-sitter-cpp":"^0.23.4","tree-sitter-css":"^0.25.0","tree-sitter-elixir":"^0.3.5","tree-sitter-go":"^0.25.0","tree-sitter-haskell":"^0.23.1","tree-sitter-java":"^0.23.5","tree-sitter-javascript":"^0.25.0","tree-sitter-kotlin":"^0.3.8","tree-sitter-php":"^0.24.2","tree-sitter-python":"^0.25.0","tree-sitter-ruby":"^0.23.1","tree-sitter-rust":"^0.24.0","tree-sitter-scala":"^0.24.0","tree-sitter-scss":"^1.0.0","tree-sitter-swift":"^0.7.1","tree-sitter-typescript":"^0.23.2","ts-prune":"^0.10.3","tsx":"^4.21.0","typescript":"^6.0.3","unified":"^11.0.5","unist-util-visit":"^5.1.0"},"optionalDependencies":{"tree-kill":"^1.2.2"},"trustedDependencies":["esbuild","tree-sitter-c","tree-sitter-cli","tree-sitter-cpp","tree-sitter-go","tree-sitter-java","tree-sitter-javascript","tree-sitter-python","tree-sitter-ruby","tree-sitter-rust","tree-sitter-typescript"],"gitHead":"fd71be87eb56ac27464c6180e2247e98788377f4","_id":"@bjlee2024/claude-mem@13.11.0","_nodeVersion":"25.9.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-bj9tYTUgNM9A8A9SkWBRrJObCG4zb+HDEvRT5ZjVuS8hEyaF8/7ETa2XWYNEVI5UHYcnLvlvege/pPg/Mt5zaA==","shasum":"37334a0c8b551afbe632cb7f059a0a61952aa5a1","tarball":"https://registry.npmjs.org/@bjlee2024/claude-mem/-/claude-mem-13.11.0.tgz","fileCount":107,"unpackedSize":9672236,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC+y67sgaRb9vga3Ge/Msyb0Nnclx8Dp3jqZYJvYylK5wIhAPkHlj+Z2aunKaFgRRXYSPYbjcCN+sIYVLhJBgoY1St5"}]},"_npmUser":{"name":"bjlee2024","email":"byeongjin.lee@medit.com"},"directories":{},"maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-mem_13.11.0_1786696378197_0.9521948574951253"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-05T07:39:05.481Z","modified":"2026-08-14T08:32:58.630Z","13.4.0":"2026-06-05T07:39:05.895Z","13.4.1":"2026-06-05T08:01:17.298Z","13.4.2":"2026-06-05T08:09:37.450Z","13.4.3":"2026-06-05T08:59:14.291Z","13.4.4":"2026-06-05T09:07:50.700Z","13.4.5":"2026-06-05T09:16:21.918Z","13.4.6":"2026-06-05T09:22:49.763Z","13.4.8":"2026-06-05T09:48:35.774Z","13.4.9":"2026-06-05T15:51:55.538Z","13.4.18":"2026-06-06T15:29:01.543Z","13.4.19":"2026-06-07T15:05:20.081Z","13.4.20":"2026-06-08T01:49:11.344Z","13.4.21":"2026-06-08T06:16:33.477Z","13.4.22":"2026-06-09T08:07:04.341Z","13.4.23":"2026-06-27T14:27:28.920Z","13.5.0":"2026-06-29T09:57:41.315Z","13.6.0":"2026-06-30T05:22:01.731Z","13.7.0":"2026-07-13T07:02:14.033Z","13.7.1":"2026-07-13T07:19:51.121Z","13.8.0":"2026-08-11T01:10:59.089Z","13.8.1":"2026-08-12T00:43:35.601Z","13.9.0":"2026-08-12T01:05:58.494Z","13.10.0":"2026-08-12T08:45:28.424Z","13.11.0":"2026-08-14T08:32:58.464Z"},"bugs":{"url":"https://github.com/bjlee2024/claude-mem/issues"},"author":{"name":"Alex Newman"},"license":"Apache-2.0","homepage":"https://github.com/bjlee2024/claude-mem#readme","keywords":["claude","claude-code","claude-agent-sdk","mcp","plugin","memory","compression","knowledge-graph","transcript","typescript","nodejs"],"repository":{"type":"git","url":"git+https://github.com/bjlee2024/claude-mem.git"},"description":"Memory compression system for Claude Code - persist context across sessions","maintainers":[{"name":"bjlee2024","email":"byeongjin.lee@medit.com"}],"readme":"<h1 align=\"center\">\n  <br>\n  <a href=\"https://github.com/bjlee2024/claude-mem\">\n    <picture>\n      <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/claude-mem-logo-for-dark-mode.webp\">\n      <source media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/claude-mem-logo-for-light-mode.webp\">\n      <img src=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/claude-mem-logo-for-light-mode.webp\" alt=\"Claude-Mem\" width=\"400\">\n    </picture>\n  </a>\n  <br>\n</h1>\n\n<p align=\"center\">\n  <a href=\"docs/i18n/README.zh.md\">🇨🇳 中文</a> •\n  <a href=\"docs/i18n/README.zh-tw.md\">🇹🇼 繁體中文</a> •\n  <a href=\"docs/i18n/README.ja.md\">🇯🇵 日本語</a> •\n  <a href=\"docs/i18n/README.pt.md\">🇵🇹 Português</a> •\n  <a href=\"docs/i18n/README.pt-br.md\">🇧🇷 Português</a> •\n  <a href=\"docs/i18n/README.ko.md\">🇰🇷 한국어</a> •\n  <a href=\"docs/i18n/README.es.md\">🇪🇸 Español</a> •\n  <a href=\"docs/i18n/README.de.md\">🇩🇪 Deutsch</a> •\n  <a href=\"docs/i18n/README.fr.md\">🇫🇷 Français</a> •\n  <a href=\"docs/i18n/README.he.md\">🇮🇱 עברית</a> •\n  <a href=\"docs/i18n/README.ar.md\">🇸🇦 العربية</a> •\n  <a href=\"docs/i18n/README.ru.md\">🇷🇺 Русский</a> •\n  <a href=\"docs/i18n/README.pl.md\">🇵🇱 Polski</a> •\n  <a href=\"docs/i18n/README.cs.md\">🇨🇿 Čeština</a> •\n  <a href=\"docs/i18n/README.nl.md\">🇳🇱 Nederlands</a> •\n  <a href=\"docs/i18n/README.tr.md\">🇹🇷 Türkçe</a> •\n  <a href=\"docs/i18n/README.uk.md\">🇺🇦 Українська</a> •\n  <a href=\"docs/i18n/README.vi.md\">🇻🇳 Tiếng Việt</a> •\n  <a href=\"docs/i18n/README.tl.md\">🇵🇭 Tagalog</a> •\n  <a href=\"docs/i18n/README.id.md\">🇮🇩 Indonesia</a> •\n  <a href=\"docs/i18n/README.th.md\">🇹🇭 ไทย</a> •\n  <a href=\"docs/i18n/README.hi.md\">🇮🇳 हिन्दी</a> •\n  <a href=\"docs/i18n/README.bn.md\">🇧🇩 বাংলা</a> •\n  <a href=\"docs/i18n/README.ur.md\">🇵🇰 اردو</a> •\n  <a href=\"docs/i18n/README.ro.md\">🇷🇴 Română</a> •\n  <a href=\"docs/i18n/README.sv.md\">🇸🇪 Svenska</a> •\n  <a href=\"docs/i18n/README.it.md\">🇮🇹 Italiano</a> •\n  <a href=\"docs/i18n/README.el.md\">🇬🇷 Ελληνικά</a> •\n  <a href=\"docs/i18n/README.hu.md\">🇭🇺 Magyar</a> •\n  <a href=\"docs/i18n/README.fi.md\">🇫🇮 Suomi</a> •\n  <a href=\"docs/i18n/README.da.md\">🇩🇰 Dansk</a> •\n  <a href=\"docs/i18n/README.no.md\">🇳🇴 Norsk</a>\n</p>\n\n<h4 align=\"center\">Persistent memory compression system built for <a href=\"https://claude.com/claude-code\" target=\"_blank\">Claude Code</a>.</h4>\n\n<p align=\"center\">\n  <a href=\"LICENSE\">\n    <img src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\" alt=\"License\">\n  </a>\n  <a href=\"package.json\">\n    <img src=\"https://img.shields.io/badge/version-6.5.0-green.svg\" alt=\"Version\">\n  </a>\n  <a href=\"package.json\">\n    <img src=\"https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen.svg\" alt=\"Node\">\n  </a>\n  <a href=\"https://github.com/bjlee2024/awesome-claude-code\">\n    <img src=\"https://awesome.re/mentioned-badge.svg\" alt=\"Mentioned in Awesome Claude Code\">\n  </a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://trendshift.io/repositories/15496\" target=\"_blank\">\n    <picture>\n      <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/trendshift-badge-dark.svg\">\n      <source media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/trendshift-badge.svg\">\n      <img src=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/trendshift-badge.svg\" alt=\"bjlee2024/claude-mem | Trendshift\" width=\"250\" height=\"55\"/>\n    </picture>\n  </a>\n</p>\n\n<br>\n\n<table align=\"center\">\n  <tr>\n    <td align=\"center\">\n      <a href=\"https://github.com/bjlee2024/claude-mem\">\n        <picture>\n          <img\n            src=\"https://raw.githubusercontent.com/bjlee2024/claude-mem/main/docs/public/cm-preview.gif\"\n            alt=\"Claude-Mem Preview\"\n            width=\"500\"\n          >\n        </picture>\n      </a>\n    </td>\n    <td align=\"center\">\n      <a href=\"https://www.star-history.com/#bjlee2024/claude-mem&Date\">\n        <picture>\n          <source\n            media=\"(prefers-color-scheme: dark)\"\n            srcset=\"https://api.star-history.com/image?repos=bjlee2024/claude-mem&type=date&theme=dark&legend=top-left\"\n          />\n          <source\n            media=\"(prefers-color-scheme: light)\"\n            srcset=\"https://api.star-history.com/image?repos=bjlee2024/claude-mem&type=date&legend=top-left\"\n          />\n          <img\n            alt=\"Star History Chart\"\n            src=\"https://api.star-history.com/image?repos=bjlee2024/claude-mem&type=date&legend=top-left\"\n            width=\"500\"\n          />\n        </picture>\n      </a>\n    </td>\n  </tr>\n</table>\n\n<p align=\"center\">\n  <a href=\"#quick-start\">Quick Start</a> •\n  <a href=\"#how-it-works\">How It Works</a> •\n  <a href=\"#mcp-search-tools\">Search Tools</a> •\n  <a href=\"#documentation\">Documentation</a> •\n  <a href=\"#configuration\">Configuration</a> •\n  <a href=\"#troubleshooting\">Troubleshooting</a> •\n  <a href=\"#license\">License</a>\n</p>\n\n<p align=\"center\">\n  Claude-Mem seamlessly preserves context across sessions by automatically capturing tool usage observations, generating semantic summaries, and making them available to future sessions. This enables Claude to maintain continuity of knowledge about projects even after sessions end or reconnect.\n</p>\n\n---\n\n## Quick Start\n\n> 🍴 This is the **`@bjlee2024/claude-mem`** fork — install from this package (not the upstream `claude-mem`). See the **[Fork Guide](docs/FORK.md)** for what differs.\n\n### Default — local memory on one machine\n\nInstall with a single command:\n\n```bash\nnpx @bjlee2024/claude-mem install\n```\n\nOr install for Gemini CLI (auto-detects `~/.gemini`) / OpenCode / Grok:\n\n```bash\nnpx @bjlee2024/claude-mem install --ide gemini-cli\nnpx @bjlee2024/claude-mem install --ide opencode\nnpx @bjlee2024/claude-mem install --ide grok\n```\n\nOr install from the plugin marketplace inside Claude Code:\n\n```bash\n/plugin marketplace add bjlee2024/claude-mem\n\n/plugin install claude-mem\n```\n\nRestart Claude Code or Gemini CLI. Context from previous sessions will automatically appear in new sessions.\n\n### Server & Client modes — shared memory across devices\n\n> **Fork feature.** Run one **server** (Postgres + Valkey, in Docker) and connect any number of thin **clients** — laptop, desktop, and the server box itself — that share **one memory pool** over a trusted network (e.g. Tailscale). **Clients never need a provider API key**: generation runs on the server (a Claude Code subscription or a local Ollama model). Requires the `server-beta` runtime.\n\n**1. On the server box** — set up the server stack:\n\n```bash\nnpx @bjlee2024/claude-mem install --mode server\n```\n\n**2. Enroll each device** — on the server (where `CLAUDE_MEM_SERVER_DATABASE_URL` reaches Postgres), mint a one-time token using the address other devices can reach (your tailnet IP, **not** `127.0.0.1`):\n\n```bash\nnpx @bjlee2024/claude-mem server enroll --url http://100.x.y.z:37877 --label laptop\n```\n\n**3. On each client device** — redeem the token:\n\n```bash\nnpx @bjlee2024/claude-mem install --mode client --enroll <token>\n```\n\nVerify connectivity any time with `npx @bjlee2024/claude-mem client status`. Revoke a device with `npx @bjlee2024/claude-mem server api-key revoke`.\n\n→ **상세 단계별 가이드: [서버 & 클라이언트 설치 가이드](#서버--클라이언트-설치-가이드)** (아래) — 서버 구축, 클라이언트 enrollment, 환경변수 레퍼런스, 검증 전 과정.\n→ **Deployment deep-dive: [Server & Client Modes](docs/public/server-client-modes.mdx)** — Tailscale topology, systemd unit, subscription/Ollama generation, and troubleshooting.\n\n> **Note:** `npm install -g @bjlee2024/claude-mem` installs the **SDK/library only** — it does not register the plugin hooks or set up the worker/server. Always install via `npx @bjlee2024/claude-mem install` (optionally `--mode server|client`) or the `/plugin` commands above.\n\n### 🦞 OpenClaw Gateway\n\n> **Upstream integration.** The installer below points at upstream infrastructure (`install.cmem.ai`, `docs.claude-mem.ai`) and installs the upstream `claude-mem`, not this fork. Use it only if you specifically want the OpenClaw gateway integration.\n\nInstall claude-mem as a persistent memory plugin on [OpenClaw](https://openclaw.ai) gateways with a single command:\n\n```bash\ncurl -fsSL https://install.cmem.ai/openclaw.sh | bash\n```\n\nThe installer handles dependencies, plugin setup, AI provider configuration, worker startup, and optional real-time observation feeds to Telegram, Discord, Slack, and more. See the [OpenClaw Integration Guide](https://docs.claude-mem.ai/openclaw-integration) for details.\n\n**Key Features:**\n\n- 🧠 **Persistent Memory** - Context survives across sessions\n- 📊 **Progressive Disclosure** - Layered memory retrieval with token cost visibility\n- 🔍 **Skill-Based Search** - Query your project history with mem-search skill\n- 🖥️ **Web Viewer UI** - Real-time memory stream at http://localhost:37777\n- 💻 **Claude Desktop Skill** - Search memory from Claude Desktop conversations\n- 🔒 **Privacy Control** - Use `<private>` tags to exclude sensitive content from storage\n- ⚙️ **Context Configuration** - Fine-grained control over what context gets injected\n- 🤖 **Automatic Operation** - No manual intervention required\n- 🔗 **Citations** - Reference past observations with IDs (access via http://localhost:37777/api/observation/{id} or view all in the web viewer at http://localhost:37777)\n- 🧪 **Beta Channel** - Try experimental features like Endless Mode via version switching\n\n---\n\n## 서버 & 클라이언트 설치 가이드\n\n> **포크 기능.** 위 [Quick Start](#server--client-modes--shared-memory-across-devices)의 짧은 안내를 보완하는 상세 단계별 가이드입니다. **서버 구축**(Part A)과 하나 이상의 **원격 클라이언트 연결**(Part B)을 순서대로 다룹니다. Tailscale ACL, systemd, 구독/Ollama generation 등 배포 세부 사항은 [Server & Client Modes](docs/public/server-client-modes.mdx) 심화 문서와 [`docs/server.md`](docs/server.md)의 운영자 노트를 참고하세요.\n\n**전체 구조:** 서버 한 대가 모든 메모리를 Postgres에 보관하고 generation을 수행합니다. 각 thin 클라이언트는 자신의 observation을 서버로 전송하고 컨텍스트를 다시 받아옵니다. 클라이언트에는 **모델·SQLite·Chroma·provider 키가 전혀 없으며**, 서버 URL과 API 키만 있으면 됩니다. 서버는 **신뢰할 수 있는 네트워크**(예: Tailscale) 안에 두세요 — API 키 인증이 유일한 보안 경계입니다.\n\n```\n[laptop]   claude-mem (client) ─┐\n[desktop]  claude-mem (client) ─┼─ Tailscale/HTTP → [server] Postgres + Valkey + worker (generation)\n[server]   (local client)      ─┘\n```\n\n### Part A — 서버 설치 및 설정\n\n메모리를 보관할 서버 한 대에서 한 번만 수행합니다.\n\n**A1. 사전 요구사항**\n\n- 서버 박스에 **Docker + Docker Compose**.\n- 다른 디바이스가 접근할 수 있는 네트워크 주소 (`127.0.0.1`이 아닌 `100.x.y.z` 같은 **tailnet IP**).\n- worker용 **generation provider** — 종량제 `ANTHROPIC_API_KEY`, Claude 구독 OAuth 토큰, 로컬 Ollama/vLLM 모델 중 하나. (없어도 서버는 이벤트를 수집하지만 요약은 생성하지 못합니다.)\n\n**A2. compose 파일 받기**\n\nDocker Compose 스택은 npm 패키지가 아니라 **repo**에 포함되어 있으므로, 서버에서 clone 하세요:\n\n```bash\ngit clone https://github.com/bjlee2024/claude-mem.git\ncd claude-mem\n```\n\n**A3. 시크릿 설정 (`.env`)**\n\n`docker-compose.yml`은 Postgres 자격 증명과 server-beta 환경변수를 요구하며 **기본값이 없어서**, 이 값들이 없으면 스택이 기동을 거부합니다. compose 파일 옆에 `.env`를 만드세요:\n\n```bash\n# .env  (서버 박스 전용 — 절대 커밋하지 말 것)\nPOSTGRES_USER=claudemem\nPOSTGRES_PASSWORD=<강력한-비밀번호>\nPOSTGRES_DB=claudemem\n\nCLAUDE_MEM_SERVER_DATABASE_URL=postgres://claudemem:<강력한-비밀번호>@postgres:5432/claudemem\nCLAUDE_MEM_REDIS_URL=redis://valkey:6379\nCLAUDE_MEM_AUTH_MODE=api-key          # 필수; Docker에서 local-dev는 거부됨\n\n# Generation provider (하나만 선택 — A7 참고):\nANTHROPIC_API_KEY=sk-ant-...\n```\n\n**A4. 스택 기동**\n\n```bash\ndocker compose up -d --build\n```\n\n네 개의 서비스가 시작됩니다: `postgres`(정규 저장소), `valkey`(BullMQ 큐), `claude-mem-server`(HTTP), `claude-mem-worker`(generation). 스키마는 최초 기동 시 자동으로 부트스트랩됩니다.\n\n**A5. 헬스 체크**\n\n```bash\ncurl http://127.0.0.1:37877/healthz\n```\n\n**A6. 런타임 등록 및 첫 API 키 발급**\n\n서버 호스트에서 `CLAUDE_MEM_SERVER_DATABASE_URL`이 실행 중인 Postgres를 가리키게 한 뒤(포트를 노출하거나 컨테이너 IP 사용), 이 박스를 서버로 — 그리고 기본적으로 자기 작업도 캡처하는 로컬 클라이언트로 — 설정합니다:\n\n```bash\nnpx @bjlee2024/claude-mem install --mode server\n```\n\n이 명령은 `CLAUDE_MEM_RUNTIME=server-beta`를 기록하고, IDE MCP 설정이 서버를 가리키게 하며, 데이터베이스에 접근 가능하면 hook API 키를 자동으로 부트스트랩합니다. 로컬 캡처 없이 **순수 백엔드**로만 운영하려면 `--no-local-client`를 추가하세요. 설치 시점에 데이터베이스에 접근할 수 없었다면, 이후에 키를 발급하세요:\n\n```bash\nnpx @bjlee2024/claude-mem server keys rotate\n```\n\n> **CLI 명령의 데이터베이스 접근.** `server enroll`, `api-key …`, `keys rotate`는 Postgres와 직접 통신하므로, `CLAUDE_MEM_SERVER_DATABASE_URL`이 해석되는 곳에서 실행해야 합니다. Postgres가 호스트로 노출되지 않았다면 컨테이너 주소를 사용하세요:\n> ```bash\n> PG_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' claude-mem-postgres-1)\n> CLAUDE_MEM_SERVER_DATABASE_URL=\"postgres://claudemem:<pw>@$PG_IP:5432/claudemem\" \\\n>   npx @bjlee2024/claude-mem server enroll --url http://100.x.y.z:37877 --label laptop\n> ```\n\n**A7. Generation 백엔드 선택**\n\nworker에는 정확히 하나의 provider가 필요합니다:\n\n| 백엔드 | 방법 | 비용 |\n|---|---|---|\n| **API 키** (기본) | `.env`에 `ANTHROPIC_API_KEY=sk-ant-...` | 토큰당 종량제 |\n| **Claude 구독** | `claude setup-token` → `CLAUDE_MEM_SERVER_PROVIDER=subscription` + `CLAUDE_CODE_OAUTH_TOKEN=sk-ant-oat01-...` | 정액 (구독) |\n| **로컬 모델 (Ollama)** | `CLAUDE_MEM_SERVER_PROVIDER=openrouter` + 로컬 OpenAI 호환 엔드포인트 | 무료 / 오프라인 |\n\n구독 및 Ollama 설정 가이드(토큰 갱신, 방화벽, 모델 선택)는 [심화 문서](docs/public/server-client-modes.mdx#generation-with-a-subscription-no-api-cost)에 있습니다.\n\n**A8. 상시 구동 (선택)**\n\n재부팅 후에도 살아남도록 스택을 systemd 서비스로 등록하세요 — 심화 문서의 [systemd 유닛](docs/public/server-client-modes.mdx#keep-it-always-on-systemd)을 참고하세요.\n\n### Part B — 원격 클라이언트 설치 및 설정\n\n각 디바이스(노트북, 데스크톱 등)마다 반복합니다.\n\n**B1. 사전 요구사항**\n\n- 서버에 대한 네트워크 접근성(동일 tailnet). 클라이언트에는 Docker·provider 키·데이터베이스가 필요 없습니다.\n\n**B2. enrollment 토큰 발급 (서버에서)**\n\n클라이언트가 실제로 접근할 수 있는 주소를 사용해 서버 호스트에서 실행합니다:\n\n```bash\nnpx @bjlee2024/claude-mem server enroll --url http://100.x.y.z:37877 --label laptop\n```\n\n**서버 URL**과 **팀 범위(team-scoped) API 키**(읽기+쓰기, 고정 프로젝트 없음)를 묶은 한 줄 토큰이 출력됩니다. 이 토큰은 **한 번만** 표시되며 서버에는 해시만 저장되므로, 분실하면 다시 enroll 하면 됩니다. 디바이스별로 서로 다른 `--label`을 사용하면 다른 디바이스를 건드리지 않고 특정 디바이스만 폐기할 수 있습니다. 토큰은 비밀번호처럼 취급하세요.\n\n**B3. 클라이언트 설치 (디바이스에서)**\n\n```bash\nnpx @bjlee2024/claude-mem install --mode client --enroll <token>\n```\n\n또는 토큰 없이 구성 요소를 직접 전달:\n\n```bash\nnpx @bjlee2024/claude-mem install --mode client \\\n  --server-url http://100.x.y.z:37877 \\\n  --token <raw-api-key>\n```\n\n이 명령은 `CLAUDE_MEM_SERVER_BETA_URL` + `CLAUDE_MEM_SERVER_BETA_API_KEY`를 `~/.claude-mem`에 (모드 `0600`으로) 기록하고, IDE hook을 설치하며, 로컬 worker/SQLite/Chroma와 provider 키 프롬프트를 **건너뜁니다**. 접근성 체크 실패는 오류가 아닌 경고이므로, 오프라인 상태의 노트북도 설치해 두면 나중에 동기화됩니다.\n\n**B4. 검증**\n\n```bash\nnpx @bjlee2024/claude-mem client status\n```\n\n```json\n{ \"runtime\": \"client\", \"server\": \"http://100.x.y.z:37877\", \"reachable\": true, \"spoolDepth\": 0 }\n```\n\n- `reachable: true` — 서버가 `/v1/info`에 응답함.\n- `spoolDepth: 0` — 오프라인 큐에 쌓인 것이 없음 (서버가 다운되면 쓰기가 `~/.claude-mem/spool/pending.ndjson`에 쌓이고, 재연결 시 자동으로 flush됩니다 — 재전송은 중복 제거되므로 이중 기록되지 않습니다).\n\n**B5. repo별 격리 (`PROJECT_ID`는 비워둘 것)**\n\n클라이언트 모드에서 `CLAUDE_MEM_SERVER_BETA_PROJECT_ID`는 **선택값이며 보통 비워둡니다** — 클라이언트가 각 저장소를 이름 기준으로 서버 프로젝트에 매핑하여(`~/.claude-mem/project-map.json`에 캐시), 로컬 모드와 동일한 격리를 제공합니다. 해당 디바이스의 **모든** repo를 단 하나의 프로젝트로 고정하려는 의도가 있을 때만 `PROJECT_ID`를 설정하세요.\n\n**B6. 디바이스 폐기**\n\n```bash\nnpx @bjlee2024/claude-mem server api-key list      # 디바이스의 키 id 확인 (raw 키는 절대 표시되지 않음)\nnpx @bjlee2024/claude-mem server api-key revoke <id>\n```\n\n폐기는 해당 키의 다음 요청부터 적용되며(`401`/`403`), 다른 디바이스에는 영향이 없습니다.\n\n### 필수 환경변수\n\n| 변수 | 서버 | 클라이언트 | 비고 |\n|---|:---:|:---:|---|\n| `CLAUDE_MEM_RUNTIME` | `server-beta` | `client` | `install --mode server|client`로 설정됨. |\n| `CLAUDE_MEM_SERVER_DATABASE_URL` | ✅ | — | Postgres DSN. 없으면 기동 시 즉시 실패. |\n| `CLAUDE_MEM_REDIS_URL` | ✅ | — | BullMQ용 Valkey/Redis. |\n| `CLAUDE_MEM_AUTH_MODE` | ✅ `api-key` | — | Docker에서 `local-dev`이면 **안 됨**. |\n| `POSTGRES_USER` / `POSTGRES_PASSWORD` / `POSTGRES_DB` | ✅ | — | compose 시크릿 — 기본값 없음. |\n| Provider 키 (`ANTHROPIC_API_KEY` 등) | ✅ (worker) | — | 선택한 generation 백엔드에 필요. |\n| `CLAUDE_MEM_SERVER_BETA_URL` | — | ✅ | 클라이언트가 전송할 주소. |\n| `CLAUDE_MEM_SERVER_BETA_API_KEY` | — | ✅ | enrollment에서 받은 bearer 키. |\n| `CLAUDE_MEM_SERVER_BETA_PROJECT_ID` | — | ⬜ 선택 | repo별 격리를 위해 비워두는 것을 권장. |\n\n---\n\n## Documentation\n\n> 🍴 **This is a fork of [`thedotmack/claude-mem`](https://github.com/thedotmack/claude-mem), published as `@bjlee2024/claude-mem`.**\n> **→ [Fork Guide & Changelog](docs/FORK.md)** — everything that differs from upstream: the\n> multi-device **[Server & Client Modes](docs/public/server-client-modes.mdx)**, subscription/local-model\n> generation, client-mode search, the full version history, and how to use it all.\n> [Compare every change ↗](https://github.com/thedotmack/claude-mem/compare/main...bjlee2024:claude-mem:main)\n\n📚 **[View Full Documentation](https://docs.claude-mem.ai/)** - Browse on official website\n\n### Getting Started\n\n- **[Installation Guide](https://docs.claude-mem.ai/installation)** - Quick start & advanced installation\n- **[Gemini CLI Setup](https://docs.claude-mem.ai/gemini-cli/setup)** - Dedicated guide for Google's Gemini CLI integration\n- **[Grok Setup](https://docs.claude-mem.ai/grok/setup)** - Grok Build TUI → server-beta client write hooks\n- **[Usage Guide](https://docs.claude-mem.ai/usage/getting-started)** - How Claude-Mem works automatically\n- **[Search Tools](https://docs.claude-mem.ai/usage/search-tools)** - Query your project history with natural language\n- **[Beta Features](https://docs.claude-mem.ai/beta-features)** - Try experimental features like Endless Mode\n\n### Best Practices\n\n- **[Context Engineering](https://docs.claude-mem.ai/context-engineering)** - AI agent context optimization principles\n- **[Progressive Disclosure](https://docs.claude-mem.ai/progressive-disclosure)** - Philosophy behind Claude-Mem's context priming strategy\n\n### Architecture\n\n- **[Overview](https://docs.claude-mem.ai/architecture/overview)** - System components & data flow\n- **[Architecture Evolution](https://docs.claude-mem.ai/architecture-evolution)** - The journey from v3 to v5\n- **[Hooks Architecture](https://docs.claude-mem.ai/hooks-architecture)** - How Claude-Mem uses lifecycle hooks\n- **[Hooks Reference](https://docs.claude-mem.ai/architecture/hooks)** - 7 hook scripts explained\n- **[Worker Service](https://docs.claude-mem.ai/architecture/worker-service)** - HTTP API & Bun management\n- **[Database](https://docs.claude-mem.ai/architecture/database)** - SQLite schema & FTS5 search\n- **[Search Architecture](https://docs.claude-mem.ai/architecture/search-architecture)** - Hybrid search with Chroma vector database\n\n### Configuration & Development\n\n- **[Configuration](https://docs.claude-mem.ai/configuration)** - Environment variables & settings\n- **[Development](https://docs.claude-mem.ai/development)** - Building, testing, contributing\n- **[Troubleshooting](https://docs.claude-mem.ai/troubleshooting)** - Common issues & solutions\n\n---\n\n## How It Works\n\n**Core Components:**\n\n1. **5 Lifecycle Hooks** - SessionStart, UserPromptSubmit, PostToolUse, Stop, SessionEnd (6 hook scripts)\n2. **Smart Install** - Cached dependency checker (pre-hook script, not a lifecycle hook)\n3. **Worker Service** - HTTP API on port 37777 with web viewer UI and 10 search endpoints, managed by Bun\n4. **SQLite Database** - Stores sessions, observations, summaries\n5. **mem-search Skill** - Natural language queries with progressive disclosure\n6. **Chroma Vector Database** - Hybrid semantic + keyword search for intelligent context retrieval\n\nSee [Architecture Overview](https://docs.claude-mem.ai/architecture/overview) for details.\n\n---\n\n## MCP Search Tools\n\nClaude-Mem provides intelligent memory search through **4 MCP tools** following a token-efficient **3-layer workflow pattern**:\n\n**The 3-Layer Workflow:**\n\n1. **`search`** - Get compact index with IDs (~50-100 tokens/result)\n2. **`timeline`** - Get chronological context around interesting results\n3. **`get_observations`** - Fetch full details ONLY for filtered IDs (~500-1,000 tokens/result)\n\n**How It Works:**\n- Claude uses MCP tools to search your memory\n- Start with `search` to get an index of results\n- Use `timeline` to see what was happening around specific observations\n- Use `get_observations` to fetch full details for relevant IDs\n- **~10x token savings** by filtering before fetching details\n\n**Available MCP Tools:**\n\n1. **`search`** - Search memory index with full-text queries, filters by type/date/project\n2. **`timeline`** - Get chronological context around a specific observation or query\n3. **`get_observations`** - Fetch full observation details by IDs (always batch multiple IDs)\n\n**Example Usage:**\n\n```typescript\n// Step 1: Search for index\nsearch(query=\"authentication bug\", type=\"bugfix\", limit=10)\n\n// Step 2: Review index, identify relevant IDs (e.g., #123, #456)\n\n// Step 3: Fetch full details\nget_observations(ids=[123, 456])\n```\n\nSee [Search Tools Guide](https://docs.claude-mem.ai/usage/search-tools) for detailed examples.\n\n---\n\n## Beta Features\n\nClaude-Mem offers a **beta channel** with experimental features like **Endless Mode** (biomimetic memory architecture for extended sessions). Switch between stable and beta versions from the web viewer UI at http://localhost:37777 → Settings.\n\nSee **[Beta Features Documentation](https://docs.claude-mem.ai/beta-features)** for details on Endless Mode and how to try it.\n\n---\n\n## System Requirements\n\n- **Node.js**: 18.0.0 or higher\n- **Claude Code**: Latest version with plugin support\n- **Bun**: JavaScript runtime and process manager (auto-installed if missing)\n- **uv**: Python package manager for vector search (auto-installed if missing)\n- **SQLite 3**: For persistent storage (bundled)\n\n---\n### Windows Setup Notes\n\nIf you see an error like:\n\n```powershell\nnpm : The term 'npm' is not recognized as the name of a cmdlet\n```\n\nMake sure Node.js and npm are installed and added to your PATH. Download the latest Node.js installer from https://nodejs.org and restart your terminal after installation.\n\n---\n\n## Configuration\n\nSettings are managed in `~/.claude-mem/settings.json` (auto-created with defaults on first run). Configure AI model, worker port, data directory, log level, and context injection settings.\n\nSee the **[Configuration Guide](https://docs.claude-mem.ai/configuration)** for all available settings and examples.\n\n### Mode & Language Configuration\n\nClaude-Mem supports multiple workflow modes and languages via the `CLAUDE_MEM_MODE` setting.\n\nThis option controls both:\n- The workflow behavior (e.g. code, chill, investigation)\n- The language used in generated observations\n\n#### How to Configure\n\nEdit your settings file at `~/.claude-mem/settings.json`:\n\n```json\n{\n  \"CLAUDE_MEM_MODE\": \"code--zh\"\n}\n```\n\nModes are defined in `plugin/modes/`. To see all available modes locally:\n\n```bash\nls ~/.claude/plugins/marketplaces/bjlee2024/plugin/modes/\n```\n\n#### Available Modes\n\n| Mode | Description |\n|------------|-------------------------|\n| `code` | Default English mode |\n| `code--zh` | Simplified Chinese mode |\n| `code--ja` | Japanese mode |\n\nLanguage-specific modes follow the pattern `code--[lang]` where `[lang]` is the ISO 639-1 language code (e.g., `zh` for Chinese, `ja` for Japanese, `es` for Spanish).\n\n> Note: `code--zh` (Simplified Chinese) is already built-in — no additional installation or plugin update is required.\n\n#### After Changing Mode\n\nRestart Claude Code to apply the new mode configuration.\n---\n\n## Development\n\nSee the **[Development Guide](https://docs.claude-mem.ai/development)** for build instructions, testing, and contribution workflow.\n\n---\n\n## Troubleshooting\n\nIf experiencing issues, describe the problem to Claude and the troubleshoot skill will automatically diagnose and provide fixes.\n\nSee the **[Troubleshooting Guide](https://docs.claude-mem.ai/troubleshooting)** for common issues and solutions.\n\n---\n\n## Bug Reports\n\nCreate comprehensive bug reports with the automated generator:\n\n```bash\ncd ~/.claude/plugins/marketplaces/bjlee2024\nnpm run bug-report\n```\n\n## Contributing\n\nContributions are welcome! Please:\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes with tests\n4. Update documentation\n5. Submit a Pull Request\n\nSee [Development Guide](https://docs.claude-mem.ai/development) for contribution workflow.\n\n---\n\n## License\n\nClaude-Mem is licensed under the Apache License 2.0.\n\nWe chose Apache-2.0 because durable agentic memory should be easy to embed in\ndeveloper tools, local agents, MCP servers, enterprise systems, robotics stacks,\nand production agent harnesses.\n\nSee the [LICENSE](LICENSE) file for full details. See [docs/license.md](docs/license.md)\nand [docs/ip-boundary.md](docs/ip-boundary.md) for licensing scope and the\nopen/commercial boundary.\n\n**Note on Ragtime**: The `ragtime/` directory is licensed under the **Apache License 2.0**. See [ragtime/LICENSE](ragtime/LICENSE) for details.\n\n---\n\n## Support\n\n- **Documentation**: [docs/](docs/)\n- **Issues**: [GitHub Issues](https://github.com/bjlee2024/claude-mem/issues)\n- **Repository**: [github.com/bjlee2024/claude-mem](https://github.com/bjlee2024/claude-mem)\n- **Official X Account**: [@Claude_Memory](https://x.com/Claude_Memory)\n- **Official Discord**: [Join Discord](https://discord.com/invite/J4wttp9vDu)\n- **Author**: Alex Newman ([@bjlee2024](https://github.com/bjlee2024))\n\n---\n\n**Built with Claude Agent SDK** | **Works with Claude Code** | **Made with TypeScript**\n\n---\n\n### What About $CMEM?\n\n$CMEM is a solana token created by a 3rd party without Claude-Mem's prior consent, but officially embraced by the creator of Claude-Mem (Alex Newman, @bjlee2024). The token acts as a community catalyst for growth and a vehicle for bringing real-time agent data to the developers and knowledge workers that need it most. $CMEM: 2TsmuYUrsctE57VLckZBYEEzdokUF8j8e1GavekWBAGS\n","readmeFilename":"README.md"}