{"_id":"@lovedolove/dsh-codebase-memory-mcp","_rev":"10-51df5eaf9141f212703fecc4ff36f535","name":"@lovedolove/dsh-codebase-memory-mcp","dist-tags":{"latest":"0.1.10"},"versions":{"0.1.0":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.0","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.0","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"bbc678de79f8abd1a258a6ed5c5ebcef3be0efa9","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.0.tgz","fileCount":8,"integrity":"sha512-gnT6N3rWcnOHirdP9LUcDt/K2RBnrayng/GJEc+AzCbmwTdCPgiL0J4j1KcXyBe0fk51CTYk0EVEJXlpnyq0UQ==","signatures":[{"sig":"MEUCIQD2f/GhdusL8PJPGT6BX+OgMnCDGGLgOmqbU6CLX7FD/gIgTFJ4zEzLOFy6/Mu+t/c2LFxWHFqGbMFVrpyEzGFi1ZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29813},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./bridge":"./src/bridge.mjs","./package.json":"./package.json"},"gitHead":"df60bc353377da2f5ba2821de949ce546a3046fc","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.0_1790784292951_0.05259199648213153","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.1","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.1","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"342982cc4ef3659b3bdc1df77751a7378f19dd74","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.1.tgz","fileCount":8,"integrity":"sha512-ZonCwiB4basbSbSIgG2cIXB3T0SjyMswuOVklx9x47SKZgX8t0Znm8rMxA2W1lztqbuDLaVgTlVcVAMAxR4aEg==","signatures":[{"sig":"MEQCIEvY476Jr1aVPdUroe7MwrCv9uKCDnLeH2vqriodCrCoAiAWNqrLXOgJh/w3ILxak1Dvk/tg6qIA1w9XAuypyzsWzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33139},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./bridge":"./src/bridge.mjs","./package.json":"./package.json"},"gitHead":"e96e43e43c40f939666a32f57f2963ea2befe2aa","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.0","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.1_1790789339147_0.11943063681969757","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.2","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.2","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"c5834caa54d22b9cf0960a00ba3a21ba1e036669","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.2.tgz","fileCount":9,"integrity":"sha512-EtwihkfG9CVaw4UL5zRXggpnIwNDdR6g2OebHYHSSxswdDWMzFAxTUy2z41b7fLdAYW6qxvSkH/ot/N7zVo/KA==","signatures":[{"sig":"MEUCIQC5C+fzdoHa55IG6q3cvdWO8t5R9k3bi6AdoPMcH60zyQIgKrQ4bF9Fsh4YhdielC4UErydVLpxLk2AlTGG6BZfnX4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":37959},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./bridge":"./src/bridge.mjs","./package.json":"./package.json"},"gitHead":"d16e591ca82f8dc47a1bc8dc3661ae04e748b20e","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.0","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.3","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.2_1790791039840_0.797379338150032","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.3","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.3","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"20b198a7d0ed02160f7b71ad4846adb95b208fea","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.3.tgz","fileCount":9,"integrity":"sha512-EzSZxYewGdkjsBHbEq+4IfKAnlkGoV+EbayKdlaEdyNSyhRwC9q2Y1iAHZ+YfewFr/3KyhPfS6fza9rn3TTWnQ==","signatures":[{"sig":"MEUCIHDG4/pSNNJL/DFBlBidDgk/zR62QloHhctJz7By09K9AiEAr/D/mtpuM/EbqJou5xCmGqGEMFK/2hE4Dg5a9SOAPag=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":37961},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./bridge":"./src/bridge.mjs","./package.json":"./package.json"},"gitHead":"351ca5ef8d41ef2eb4335c19c4988641883f23c0","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.0","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.3","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.3_1790791796271_0.6975396346984626","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.4","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.4","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"bad087993f0423b2062fd2bcd44328ab4ccda1ab","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.4.tgz","fileCount":9,"integrity":"sha512-M/mYt4yWuBeiAqk0E4x4PRraUMpv3oc15CHr4pkR6lz5n2XJf1FgPwcvbe+8R4RcZbaX3rfjasHv25SNbFIzQw==","signatures":[{"sig":"MEUCIB6XJVix7EV5IbvBICfkk3pLyLJtW/vy7yPkRURH8HwhAiEA4gsl7A3l4eEAc6UBjrxwo518hjdKS0P1zyaoVz0Msu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":45966},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./bridge":"./src/bridge.mjs","./package.json":"./package.json"},"gitHead":"0d240b97a7ff46f9f453361cd2f4defd70ffa330","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.0","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.3","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.4_1790855703391_0.016325577507066757","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.5","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.5","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"68f4bd4d90b351218316a551ebda0aa874b6c863","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.5.tgz","fileCount":16,"integrity":"sha512-lgGQFsrfdDBvuj6ce/5WCH9UXxitEChddTWuX9XGPVoEYXJEoEIx8+U3ORejUYvAhkMYZpgf1jzMsbI2zg+3yQ==","signatures":[{"sig":"MEYCIQD+P/tbj9ZAhynyoQ2zJQHebUtOIUnX+0EYCKAR4Vl7fAIhAJQo55/hz1VGj2rmEX3C9C9v5Fgl6l1OV8w5EdFOEVPS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":96046},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./tools":"./src/tools.mjs","./types":"./src/types.mjs","./bridge":"./src/bridge.mjs","./client":"./src/client.mjs","./engine":"./src/engine.mjs","./watcher":"./src/watcher.mjs","./discovery":"./src/discovery.mjs","./package.json":"./package.json"},"gitHead":"1b25fe4ecfa3356f31a4952406e9d9a73f0e2cc7","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.1","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.5_1793638131055_0.21497511123709911","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.6","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.6","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"75aed548ff8624812ee07124ee77e7ba5a0e2393","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.6.tgz","fileCount":16,"integrity":"sha512-B1ElJlJB+k5ZVmWq+blPIHy6OTnzG2BQ9IzySElNpJS5CZ+WY0vNqCxcocOPaqiksb9dS1SKowGq9hN6PDuvmA==","signatures":[{"sig":"MEQCICi/lLHmkMkUtRJLY1GXzP9K+5ZF1YsTybiIYaSF+AOAAiBo3MOB+xvSaoFZcMDEMwYurBmMye0S6tDcPdkF5n7Shg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":101165},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./tools":"./src/tools.mjs","./types":"./src/types.mjs","./bridge":"./src/bridge.mjs","./client":"./src/client.mjs","./engine":"./src/engine.mjs","./watcher":"./src/watcher.mjs","./discovery":"./src/discovery.mjs","./package.json":"./package.json"},"gitHead":"75aaaf5d38173576453f01bc037f30ea3f18b08b","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.1","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.6_1793702367294_0.184266069776997","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.7","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.7","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"compatibility":{"dshVersions":">=0.1.2-rc.1 <0.3.0-0","nodeVersions":">=18.0.0 <25.0.0"}},"dist":{"shasum":"ec3e0426c1a1ab4e0f430961193fb4cad4147550","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.7.tgz","fileCount":16,"integrity":"sha512-DL0d8yWRhr3PsPrbEjTS/Fl5GHeuOWKwgrRsFMbTY9+YP0+Wsq+WfPjdwnvx2vvB054bUULDePPQJaRC1XdXUQ==","signatures":[{"sig":"MEUCIEkzh1r96pTFqv1ZwEcDRc5zqIJoZph+QL3H2PtmSyA8AiEAk9NnKeWiilDV6p/WZyl+BQkvOIlSXS+/7DDWywQM6PM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":102274},"main":"src/index.mjs","type":"module","engines":{"node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./tools":"./src/tools.mjs","./types":"./src/types.mjs","./bridge":"./src/bridge.mjs","./client":"./src/client.mjs","./engine":"./src/engine.mjs","./watcher":"./src/watcher.mjs","./discovery":"./src/discovery.mjs","./package.json":"./package.json"},"gitHead":"78bdcf902b8cb123502b3d2e23e81db2c03b1a21","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.2","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.1.2-rc.1 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.1.2-rc.1 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.7_1794464555450_0.262236549507183","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@lovedolove/dsh-codebase-memory-mcp","version":"0.1.9","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.9","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"8ac62430c648a59e1d3740ceffbf23172ff60ae2","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.9.tgz","fileCount":16,"integrity":"sha512-gno52t4DJ1QTnjsZbCKD+lnwMNUnUCmLXB7FIroovY291NRIA/3wl0LQtFYqrkN7xLst5VrRihKmAR9/IkBYNw==","signatures":[{"sig":"MEQCIDzGy2Pd7Om4gUcY/6F5xqdKvTWdiAR00O1pYlZ1ZhGYAiBQ9RX6CNlCzYXgmsheYe3zi3Xw0PGh4yF8T5QnVPst7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":108034},"main":"src/index.mjs","type":"module","engines":{"dsh":">=0.2.0 <0.3.0","node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./tools":"./src/tools.mjs","./types":"./src/types.mjs","./bridge":"./src/bridge.mjs","./client":"./src/client.mjs","./engine":"./src/engine.mjs","./watcher":"./src/watcher.mjs","./discovery":"./src/discovery.mjs","./package.json":"./package.json"},"gitHead":"ef12d7d4fdcf2b2151bce97160cb59d52b6ae92d","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"},"trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"}},"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.2","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"_nodeVersion":"22.23.4","dependencies":{"@deepseek-ai/schemastery":"~3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{},"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.2.0 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/dsh-codebase-memory-mcp_0.1.9_1794469005598_0.8421191577481075","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"_id":"@lovedolove/dsh-codebase-memory-mcp@0.1.10","dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"dist":{"shasum":"e3bc342486eb519dcedf00877a0e9ec0fb0fd46c","tarball":"https://registry.npmjs.org/@lovedolove/dsh-codebase-memory-mcp/-/dsh-codebase-memory-mcp-0.1.10.tgz","integrity":"sha512-uU7l1q5mXctV0ZcqNJj3a88U3f+akW9w2d7KHTyhElB0x5Y9k3RzlC5tWOqLilonxd2hCmkP4b1Kz11fNT8pPg==","fileCount":27,"unpackedSize":637323,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@lovedolove%2fdsh-codebase-memory-mcp@0.1.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCHpv5+bOdj/CMHOeonmZihNc/LGlDSsP4UAbiFV1uvMAIhAI7fXPFB/PUlGvofELUOBMvDGgrlNBakyz2jzFq90CyN"}]},"main":"src/index.mjs","name":"@lovedolove/dsh-codebase-memory-mcp","type":"module","author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"engines":{"dsh":">=0.2.0 <0.3.0","node":">=18.0.0 <25.0.0"},"exports":{".":"./src/index.mjs","./tools":"./src/tools.mjs","./types":"./src/types.mjs","./bridge":"./src/bridge.mjs","./client":"./src/client.mjs","./engine":"./src/engine.mjs","./watcher":"./src/watcher.mjs","./discovery":"./src/discovery.mjs","./package.json":"./package.json"},"gitHead":"533c6ca17bdc1ab7744fd1395b8576edfb65bab8","license":"MIT","scripts":{"test":"node --test test/*.test.mjs","pack:check":"npm pack --dry-run"},"version":"0.1.10","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"57ec80a1-544c-431b-a56e-40adb33269f4"},"approver":{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}},"homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"_npmVersion":"12.2.2","description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","directories":{},"maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"_nodeVersion":"22.23.4","dependencies":{"@deepseek-ai/schemastery":"~3.19.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"devDependencies":{},"peerDependencies":{"@deepseek-ai/cordis":">=4.0.1-rc.1 <5.0.0-0","@deepseek-ai/dsh-skill":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-tools":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-commands":">=0.2.0 <0.3.0-0","@deepseek-ai/dsh-system-prompt":">=0.2.0 <0.3.0-0"},"peerDependenciesMeta":{"@deepseek-ai/cordis":{"optional":true},"@deepseek-ai/dsh-skill":{"optional":true},"@deepseek-ai/dsh-tools":{"optional":true},"@deepseek-ai/dsh-commands":{"optional":true},"@deepseek-ai/dsh-system-prompt":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-codebase-memory-mcp_0.1.10_1794472153289_0.9093145234053015"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-30T16:04:52.595Z","modified":"2026-11-12T08:29:13.679Z","0.1.0":"2026-09-30T16:04:53.134Z","0.1.1":"2026-09-30T17:28:59.237Z","0.1.2":"2026-09-30T17:57:19.951Z","0.1.3":"2026-09-30T18:09:56.362Z","0.1.4":"2026-10-01T11:55:03.492Z","0.1.5":"2026-11-02T16:48:51.163Z","0.1.6":"2026-11-03T10:39:27.382Z","0.1.7":"2026-11-12T06:22:35.544Z","0.1.9":"2026-11-12T07:36:45.814Z","0.1.10":"2026-11-12T08:29:13.391Z"},"bugs":{"url":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp/issues"},"author":{"name":"LoveDoLove","email":"v0130p5100cuboss@gmail.com"},"license":"MIT","homepage":"https://github.com/LoveDoLove/dsh-codebase-memory-mcp#readme","keywords":["dsh","dsh-plugin","deepseek-harness","codebase-memory","codebase-memory-mcp","mcp","knowledge-graph","code-search","ast","graph"],"repository":{"url":"git+https://github.com/LoveDoLove/dsh-codebase-memory-mcp.git","type":"git"},"description":"Codebase Memory MCP bridge plugin for DeepSeek Harness: knowledge-graph code search, snippets, architecture, call-path tracing, and auto-started graph visualization UI.","maintainers":[{"name":"lovedolove","email":"v0130p5100cuboss@gmail.com"}],"readme":"<div align=\"center\">\n\n# Codebase Memory for DeepSeek Harness\n\n**给智能体一张代码地图，而不是一堆 grep。**\n\n[![npm version](https://img.shields.io/npm/v/@lovedolove/dsh-codebase-memory-mcp?style=flat-square&color=blue)](https://www.npmjs.com/package/@lovedolove/dsh-codebase-memory-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg?style=flat-square)](LICENSE)\n[![CI](https://github.com/LoveDoLove/dsh-codebase-memory-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/LoveDoLove/dsh-codebase-memory-mcp/actions/workflows/ci.yml)\n[![M8ven Score](https://m8ven.ai/badge/mcp/lovedolove/dsh-codebase-memory-mcp)](https://m8ven.ai/badge/mcp/lovedolove/dsh-codebase-memory-mcp)\n[![DeepSeek Harness](https://img.shields.io/badge/DeepSeek%20Harness-0.2.x-blueviolet?style=flat-square)](https://github.com/deepseek-ai/deepseek-harness)\n\n[English](README.md) · [中文](README.zh-CN.md) · [白皮书](WHITEPAPER.zh-CN.md) · [文档](docs/install.md)\n\n</div>\n\n![图界面展示仓库图谱](docs/assets/graph-ui.png)\n\n## 问题在哪\n\n`grep` 只能找到文本。它不知道 `Object.handler` 被三个工具调用，不知道 `apply` 是入口，也不知道 `src/engine.mjs` 只被 `src/index.mjs` 导入。每次智能体要回答\"谁调用了这个函数\"，它都得 grep、打开五个文件、然后猜。\n\n这个插件给 DeepSeek Harness 一张真正的代码图谱。它连接 [`codebase-memory-mcp`](https://github.com/DeusData/codebase-memory-mcp)，保持守护进程运行，并注册六个直接回答结构性问题的工具。智能体问一次就能拿到调用链。\n\n## 快速开始\n\n```sh\n# 1. 把插件装进你的 DSH profile\ndsh plugin --profile web add @lovedolove/dsh-codebase-memory-mcp\n\n# 2. 确认二进制在 PATH 上（或者设置 CBM_EXE）\ncodebase-memory-mcp --version\n\n# 3. 启动 harness，守护进程会一起起来\ndsh web\n```\n\n启动时你应该在 stderr 看到这一行：\n\n```\n[codebase-memory] 🔍 codebase-memory UI is live: http://localhost:9749/\n```\n\n在浏览器打开 <http://localhost:9749/>，图界面已经在等你了。先建一次索引，然后就可以问智能体任何符号。\n\n```sh\n# 给仓库建索引（工具本身不会自动建索引）\ncodebase-memory-mcp cli --quiet index_repository '{\"repo_path\":\"/绝对路径/to/repo\"}'\n```\n\n之后直接问，或者直接调用工具：\n\n```ts\ncbm_search   { name_pattern: \".*Handler.*\" }\ncbm_trace    { symbol: \"Object.handler\", direction: \"inbound\" }\ncbm_snippet  { qualified_name: \"app.auth.login\" }\n```\n\n## 你能得到什么\n\n| 工具 | 回答什么 |\n| --- | --- |\n| `cbm_projects` | 哪些项目已建索引，索引有多新 |\n| `cbm_search` | 哪些符号匹配名称、标签或路径模式 |\n| `cbm_trace` | 谁调用了它，或者它调用了谁，可以指定深度 |\n| `cbm_snippet` | 某个符号的精确源码 |\n| `cbm_arch` | 一个目录怎么组织，谁依赖谁 |\n| `cbm_search_code` | 文本搜索，用来找字面量、报错信息、配置项 |\n\n在工具之上，插件还提供：\n\n- **常驻守护进程。** 插件加载时启动，子进程退出后下一次工具调用会重新拉起，插件销毁时一起关闭。你不需要盯着它。\n- **`/cbm` 命令。** 打印二进制路径、图界面地址，以及每个已索引项目的状态。\n- **内置智能体技能。** 排名 600，模型和用户都能调用，让智能体先想到图谱，再想到 grep。\n- **优雅降级。** 二进制缺失时只打一条警告，工具返回降级结果。插件永远不会因为守护进程缺席而加载失败。\n- **可复用的库。** 九个导出子路径，你可以不经过 harness，直接在自己的代码里驱动引擎。\n\n## 工作原理\n\n```\nDSH agent ──▶ cbm_* tool ──▶ engine ──▶ JSON-RPC over stdio ──▶ codebase-memory-mcp\n                                                                      │\nbrowser ──▶ http://localhost:9749/ ──▶ graph UI ◀────────────────────┘\n```\n\n三层结构，每一层都可以单独替换：\n\n1. **插件入口**（`src/index.mjs`）读取配置、启动守护进程、注册工具、系统提示词引导、技能和命令。\n2. **引擎**（`src/engine.mjs`）把 DSH 的参数名翻译成上游参数名，守住仓库边界，在二进制缺失时返回降级结果。\n3. **客户端**（`src/client.mjs`）拉起二进制、说 MCP JSON-RPC 2.0、管理进程生命周期。\n\n设计理由见[架构文档](docs/architecture.md)，为什么边界划在这里见[白皮书](WHITEPAPER.zh-CN.md)。\n\n## 配置\n\n任何部署都可以在 `cordis.yml` 里设置这四项：\n\n```yaml\nplugins:\n  codebase-memory:\n    exePath: /usr/local/bin/codebase-memory-mcp  # 回退到 CBM_EXE，再回退到 PATH\n    uiEnabled: true                              # 默认 true\n    port: 9749                                   # 默认 9749\n    eagerStart: true                             # 默认 true\n```\n\n环境变量在适用的地方优先。完整的查找顺序见 [docs/configure.md](docs/configure.md)。\n\n| 变量 | 作用 |\n| --- | --- |\n| `CBM_EXE` | `codebase-memory-mcp` 二进制的路径 |\n| `CODEBASE_MEMORY_EXE` | `CBM_EXE` 的旧别名 |\n| `DSH_HOME` | DSH 存放状态的位置，包括索引元数据 |\n\n## 作为库使用\n\n```js\nimport { CodeIntelligenceEngine } from '@lovedolove/dsh-codebase-memory-mcp/engine'\n\nconst engine = new CodeIntelligenceEngine()\nconst result = await engine.traceCallPath({\n  repoRoot: '/path/to/repo',\n  symbol: 'Object.handler',\n  direction: 'inbound',\n  depth: 3,\n})\n\nif (result.degraded) {\n  console.error('没有可用的图谱:', result.message)\n} else {\n  console.log(result.raw)\n}\n```\n\n完整接口见 [docs/library-api.md](docs/library-api.md)。\n\n## 环境要求\n\n| 要求 | 版本 |\n| --- | --- |\n| DeepSeek Harness | `>=0.2.0 <0.3.0`（`engines.dsh`） |\n| Node.js | `>=18.0.0 <25.0.0`（`engines.node`） |\n| `codebase-memory-mcp` | 任意近期版本 |\n\n二进制是建索引和查询所必需的，插件加载不需要它。\n\n插件声明了五个可选 peer：`@deepseek-ai/cordis` 为 `>=4.0.1-rc.1 <5.0.0-0`，以及 `@deepseek-ai/dsh-tools`、`@deepseek-ai/dsh-system-prompt`、`@deepseek-ai/dsh-skill`、`@deepseek-ai/dsh-commands` 为 `>=0.2.0 <0.3.0-0`。缺少某个 peer 只会关掉对应功能并打一条警告，不会阻止启动。\n\n## 文档\n\n| 文档 | 类型 | 什么时候读 |\n| --- | --- | --- |\n| [安装](docs/install.md) | 操作指南 | 你只想要步骤 |\n| [配置](docs/configure.md) | 参考 | 你要查一个参数、变量或路径 |\n| [工具](docs/tools.md) | 参考 | 你在挑工具或参数 |\n| [架构](docs/architecture.md) | 说明 | 你想知道为什么这么设计 |\n| [库接口](docs/library-api.md) | 参考 | 你要自己驱动引擎 |\n| [故障排查](docs/troubleshooting.md) | 操作指南 | 有东西不工作 |\n| [白皮书](WHITEPAPER.zh-CN.md) | 说明 | 你要完整的设计论证和证据 |\n| [Whitepaper](WHITEPAPER.md) | Explanation | 你要读英文版的设计论证和证据 |\n| [AGENTS.md](AGENTS.md) | 参考 | 你是在这个仓库里工作的智能体 |\n\n## 开发\n\n```sh\nnpm ci          # 安装开发依赖\nnpm test        # 44 个测试，node --test\nnpm run pack:check\n```\n\n测试覆盖客户端、引擎、发现、工具、监听器、桥接和插件生命周期。其中两个测试会启动一个假的 MCP 服务端，验证真实的握手过程。\n\n## 版本发布\n\n`publish-npm.yml` 在每次推送到 `main` 时运行。它用 `npm stage publish` 把包放进暂存区，这一步本身不会公开发布。需要有人在已登录的 npm 会话里批准暂存的版本。发布说明取自 [CHANGELOG.md](CHANGELOG.md)。\n\n## 许可证\n\nMIT，见 [LICENSE](LICENSE)。\n\n<div align=\"center\">\n\n如果它帮你省下了一次 grep，一个 star 能让更多人找到它。\n\n[![Star History](https://api.star-history.com/svg?repos=LoveDoLove/dsh-codebase-memory-mcp&type=Date)](https://star-history.com/#LoveDoLove/dsh-codebase-memory-mcp&Date)\n\n</div>\n","readmeFilename":"README.zh-CN.md"}