{"_id":"@bd-gongfu-ai/engineering-nexus","_rev":"27-794e51765b08cadf19ab838706268466","name":"@bd-gongfu-ai/engineering-nexus","dist-tags":{"latest":"0.1.25"},"versions":{"0.1.0":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.0","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.0","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"24c298b31484e3ee20f3bf26e8d2030922a8e631","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.0.tgz","fileCount":17,"integrity":"sha512-Y9Hi8ZlK6FTuIG128RmNFk34BDhQEUVlZ2FfkPcd/hTfjCYOO5d5MOh8CSg/OQtOarcAW8TfGVyiITZv6TTIlA==","signatures":[{"sig":"MEQCIFqz3B2pzNMYiM3sictszSmzVpewn/z3Rjx5kExmz7XQAiA5WnaLQeK6v3vXnP0vSJfbRVnYjSS500q4LghHcIIs/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":167682},"type":"module","engines":{"node":">=20"},"gitHead":"a15b4ef1fdb7c7300c88cfba8e12d514d7724907","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.0_1785344761418_0.14313501966152598","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.1","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.1","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"88e40c0c528e267746b6a0d309cf08c8d4e0130e","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.1.tgz","fileCount":17,"integrity":"sha512-BK678mIGTpwgjWJr57mdnnrRxXEwgTQbAkesxTaayzqi79q+PWdvwE9mRk8htKiA3DJYdlwi7tZxihODRXivzQ==","signatures":[{"sig":"MEYCIQDyuuYmZ6HIDgXFlI52tDVDtY2W/5ubbIMNXZxpsxT4/gIhAIN4kiBkep6KdTvFbOKwPTSrGyiJt4XjZ3OmrF1Yae+M","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178758},"type":"module","engines":{"node":">=20"},"gitHead":"6ae2ecd74f52d5e08223795afe1348c2ec272c4f","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.1_1785393493769_0.4110689384676982","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.2","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.2","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"78ef53b9ee668e899cb2dce2acd226c20b53692d","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.2.tgz","fileCount":17,"integrity":"sha512-p9coc725bD2uUS9JSh4+WghVaYofJxGT7DVdkZe931nIh/tZhEON92+lavO11cZ3mHeiczVMrRIj+NbsItztGQ==","signatures":[{"sig":"MEUCIQDgoprQ78kJ9yqPlYHU9jpoPgxsXkDV/FtAatX4NOqmAgIgUeyuVkV1djS0DdL2EUDIRzp9arS7kfF6hHCD0YOJkmE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178727},"type":"module","engines":{"node":">=20"},"gitHead":"a26f83a2a014009de11149eaadd2b505ae29b2bc","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.2_1785397812669_0.7811808466666621","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.3","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.3","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"29b51093653488bb54701b617fdb8fead901c301","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.3.tgz","fileCount":21,"integrity":"sha512-0d5n2o4NzATyD514mhrDgZqqivraEJIR/TJaxBzy54hZCIu95jveh40xNFKLYB6M9HjwkmtCG18+pIzyFPUWKg==","signatures":[{"sig":"MEQCIGzZi92GrCvQmllDdbiSP9Mciuv1Eaxv+yZcqSxKZCMXAiAc0rHC6gVpXssl1mu/3nWteH4VupT12Y9I4RLyZnBXAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":237755},"type":"module","engines":{"node":">=20"},"gitHead":"be4a43b018bc0d2cb20e95d4a1ebd2387a4630fd","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.3_1785487565967_0.038728592268403306","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.4","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.4","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"e70740e7f237cd56bdb10dac9e57c418d08d0db0","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.4.tgz","fileCount":22,"integrity":"sha512-I6UQPRi48Mq77puH8KU7gvg3lLmanSt74HKieVbRNRz2zv2oQii06iHa5ieXEqQNVrZb+UbM5s3Q0fchUfnFOA==","signatures":[{"sig":"MEUCIF6SpDtgKc16GZExqmu1QD8dxYkRm5NBDUXlIyfe2A25AiEA6kaKRz/+WUnoqAPWzH0mWuD7ABDpc6O/zpGVhaDyPeE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254057},"type":"module","engines":{"node":">=20"},"gitHead":"3d7699fb4c7bd609f356d5cb28d387a938ec7df1","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.4_1785503115462_0.2833863538506214","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.5","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.5","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"ee58c90fc81f89773162add9986419a33ed7ac9b","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.5.tgz","fileCount":22,"integrity":"sha512-SAJwhve9y2K977ZwlDThpzMFXWrEIngGv4GbQUe25p+swSPUxPR1RdwT7JDPr6ivZcQJNNUkgWzWY1vRMAigVw==","signatures":[{"sig":"MEYCIQDZQXjR2oQfV7vFBrZjIP1oyjrU+CnpsJLmrPvlF17kCgIhAIR4pih6uqC6HbLP0DES2LuwcLloPjwVrk7TZfyQU59+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254510},"type":"module","engines":{"node":">=20"},"gitHead":"f9d358818039ce5cde818a2ede35e3a0fba13851","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.5_1785508726107_0.62351211243307","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.6","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.6","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"ada238b74b969c3c77e27193ddabbe409cb77dfa","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.6.tgz","fileCount":22,"integrity":"sha512-ApTkb17XQrs/pbXEDQ9FVQ8NT6OECIWC64Rxe8tXZnFT7B5gdY1XhfoarIVugdaHVtiL0E4TvKC9NjAdFIjKsw==","signatures":[{"sig":"MEUCIQCfSmsBIKnS0x/YJ6c8fWKArP/CSd86Z1+xlxjSNmyH5QIgOJF40emZxvvNa2YezJ6JU3X1xEKWyuN5BcaJxTOIhu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":255245},"type":"module","engines":{"node":">=20"},"gitHead":"0f9b9aad129935343686938c909828c040739587","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.6_1785678729838_0.11921497420913196","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.7","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.7","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"746112123268b09655414ed9b51738ae11c40880","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.7.tgz","fileCount":22,"integrity":"sha512-wiiaqcUggNoNJSz4+fY248b3eAwB8wHt9ZeotqYA1Z6ZK8lxELNATRELDpvAzdbGxsZdj6ccU+WwLcImbNghUA==","signatures":[{"sig":"MEQCIEWx5uM7nnQHOwOavuge3+JVZkvBGLfm/CZu1bGwlBu/AiApr3JIACp7Ek2yXoxFwyCySb9RxqrXLBes13loNMfbyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":259226},"type":"module","engines":{"node":">=20"},"gitHead":"d7b5aa1513c8e4b339ff9f1902bca16e8d15e6f7","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.7_1785686662931_0.6143371570743443","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.8","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.8","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"bbad215310f3f0ae4e92f9d00a3f3ff73c740449","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.8.tgz","fileCount":22,"integrity":"sha512-0DhmueX0xRtPk7FGWQmGes1Q/ZsnhvcVYkwwqOiCjtYI4IUS+Xl/KaW6yGkXbsGu+HUVzejYwJOgar1alFH5Vg==","signatures":[{"sig":"MEUCIQCZJVZDtjBt/ZnnjsBbkdc/Imwgup4zGGJjsHcEDGRVLQIgevxCaLTxY5WVCnjjLVZyJkwto46303LrC7EdVRovJhU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268177},"type":"module","engines":{"node":">=20"},"gitHead":"701358ae54343af48c0a94feff9d3dbb5fbbf316","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.8_1785721486881_0.7910184785721048","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.9","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.9","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"64135b9a05c99a159b9a41afb16dc0e1698e8938","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.9.tgz","fileCount":22,"integrity":"sha512-VpLWqM2tfvltjPCh2FmHUCeEY1ptdsyHUTachBc/aktuNvVM5WEozt1bQiYQRS6P1/XIVqCCSCrJfeJlxE80PA==","signatures":[{"sig":"MEYCIQCcLid8X5kmC3IK1U+QOVeDALGqppl+4cdIK/qsqTMrYAIhAIa35vQbtA1H/qk9qtEJaS8J+t1qBeU6ZQsTWvjnclRq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":272562},"type":"module","engines":{"node":">=20"},"gitHead":"19085b8a19001ef80d05f8d4bb325026859d283d","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.9_1785733133320_0.6353863599650709","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.10","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.10","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"801ebdda13d120c55c29fc8687772603d86ea23e","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.10.tgz","fileCount":22,"integrity":"sha512-MaOFlUzYcZWCeuzWanwHSqywibhbR2sGt+5SHqXNhXCcj/ch22/fHUY+mh5U1Zus4WdTF4SYB9wsmELy4D0QGA==","signatures":[{"sig":"MEUCIFdD6MoBO3Ch0pZ+sOVeI/I7267B2nI0ndh8Zp3O9cRrAiEAu6NmjM+XKtmNKlKwlo3GF8IR1/54TW6USjAlYdWw8pc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273557},"type":"module","engines":{"node":">=20"},"gitHead":"bbce3a7c7929c0cc11db55c12065429b0a076d50","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.10_1785743848832_0.7171812512942592","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.11","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.11","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"6c9601b1d846ec52518cab0f0e2f62a73c4e1ed1","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.11.tgz","fileCount":22,"integrity":"sha512-xFLLkPc2RYduf8Hdoi7Wth1drq1cF6yTWAAuuIw3JljCgU/gpGMmPoyvGQXhK60xtPBLVAGuVgbVrG9uSBcclw==","signatures":[{"sig":"MEUCIG7zEKd/wdDZziII60QclLHxneRjjDiXB3IZ6HxopNf0AiEAtCHd4CGXkVranFvNfxhzXyxhmoB7fDgGiO+mUNOpU/k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294223},"type":"module","engines":{"node":">=20"},"gitHead":"fb2cd5a0f1bbc79fb9318591a2d4cb9265e12329","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.11_1785806799178_0.9447404723659032","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.12","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.12","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"d19a8293bcc4bdcc716a2b64c16ad19983f9090d","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.12.tgz","fileCount":23,"integrity":"sha512-3WMSFQmSrMCVrZtvivXDXpLc3AvcQcGp/nEsWAum0eK62YVvY4jDzHCGOqM4lT2XOVczLrQejSBqCI41eGfjWw==","signatures":[{"sig":"MEQCIB/z6o1txvxvyYzyv+VZ4aIxaHBl04V6GBsoCKTr450lAiBBT/CdDc/2bRgqxpjdFm+iwgGExqVV36IsBrT8C2JSbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":317697},"type":"module","engines":{"node":">=20"},"gitHead":"fee3f869310ccf73242b7a6643d4204286fef3d9","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.12_1785819398037_0.4688284127991704","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.13","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.13","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"e829cddb3d089d30efa5b859b335a8eca6b2786a","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.13.tgz","fileCount":23,"integrity":"sha512-Uw9+DW6r5HUAnQR5s3ynFMDtsTikkGc47/0WoJX6gYxsON9UXsXwxUO9nHTzueF2NUA/1BXrmIxP8OboEkewnQ==","signatures":[{"sig":"MEUCIQColqCocPQ6Dvi41OI7X18ew72qhP1ot5xVAzmg34+AaAIgY8zENUORlOAx1DWhMsTrPrba/svLHFb73gQnT4z/fXM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325091},"type":"module","engines":{"node":">=20"},"gitHead":"fee3f869310ccf73242b7a6643d4204286fef3d9","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.13_1785827460667_0.27707758803964877","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.14","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.14","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"942bfe0f5baea2ec10ca442f5e6cdbc4baaf3d55","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.14.tgz","fileCount":23,"integrity":"sha512-6A8qVcG/7Cr1sRhqixC8C42fgCJ7sMvrhZY+Bd4Ab99BJFp+ICcjd/JhCK3L/j1ybJ86glGeIs32m9vwrfaLNQ==","signatures":[{"sig":"MEYCIQDSqxQJccQYiG+luIaP3oA82iBw/9P7fA2tqawRk5MJTAIhAOtcALSuShPf/otxNDLFGpPox2Bm2MZa+K1W2lM4CIEu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327234},"type":"module","engines":{"node":">=20"},"gitHead":"994d4897870bcea7c007e76e2be8d87136a9b6af","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.14_1785894741265_0.13251427674436167","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.15","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.15","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"fd7cfbfbee9eeac37846f83e95f6692f335778b7","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.15.tgz","fileCount":23,"integrity":"sha512-GTLTaTdseFDtOo6hYbvAnHjMOfW2ey/sKKMGl3qy3T0sef/sOhBbBJZDGLljPvVMCB7fISDII5jLbeM/eKhcvA==","signatures":[{"sig":"MEQCICwTAZgunGDlh5YxMZy7yGVIJ+vewF4YkE9P4mR/iHxMAiB/aV+AKGSuCTJzxK393nsSVWTJztkLyBX3wJen93RIsg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327592},"type":"module","engines":{"node":">=20"},"gitHead":"07b47bd56f9c1a69581d4b0440e19121f1bfc0fc","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.15_1785921578340_0.21572962674230434","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.16","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.16","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"e4cf3a69c496300fff6f4077163cbd250ba94477","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.16.tgz","fileCount":23,"integrity":"sha512-RokUhbiXyDISxa39nHc2yXzSbwhmkhS99k3glVAOQoljexjgqZ6xxA0Tu/z6bq8vjn0Hj1sikZSWe6KcYWYhiA==","signatures":[{"sig":"MEYCIQD01TVwLpU4Jr/Wet92ZiTyMtMWJPeFG+qSCpuCC98h1QIhAIPDus3v/RZITTvsswOktU/rL0AuHsz4D7kVsQilvcoE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327900},"type":"module","engines":{"node":">=20"},"gitHead":"e9d3b14c311bca0d06c19a74981935fee6ff8fd1","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.16_1786009541723_0.676741804488117","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.17","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.17","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"5cbd22f620b85f56c22090fccfd69897915cef48","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.17.tgz","fileCount":23,"integrity":"sha512-C++2+xhM+lNEIiqKTExU1Iu5YZbg9qV1X/LY07TE35MTtZw4Q6rIF77tedSuQtwmeCWn9oqG9BYEora8uecYWQ==","signatures":[{"sig":"MEUCIGjAFTCTWQaZvIAsiQlImLaTYnt/6aa0HwRXTRsCPDITAiEA58Bv4dxhj3sLy3XMCp6E1WcAzsrqzDTkqTSi8fLdOjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328051},"type":"module","engines":{"node":">=20"},"gitHead":"42f7baa4b3e8b4dcb57761da81ddc57df1e93e0b","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.17_1786010826265_0.7752820177676796","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.18","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.18","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"a6e6990cf4500f66048b57ffb423b1363727ce4c","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.18.tgz","fileCount":24,"integrity":"sha512-ETC4pLCrN9ZUz2QylBfzWhMyniGWvQYhmPdbf4ozxW56OdLtWsAp7jTxFJwBMr+IKcgF97fCxGWeqFR5JJtR1Q==","signatures":[{"sig":"MEQCIBFJHNDR7vR77K1VlDGJoMmalyhjwIOpY8sA3m2k5eqZAiBOyBOOI54DG0/kYBwQCwGpiGyWEKKDE+dfCSGlt9l+ZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":346465},"type":"module","engines":{"node":">=20"},"gitHead":"f53c59edea7ed43d1d3d7b1a7de7069cafa37ba6","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.18_1786019916832_0.8609827926127787","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.19","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.19","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"b16a37993c39d3d3a2cdd5d2a4067e1660e72fb6","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.19.tgz","fileCount":24,"integrity":"sha512-4+ywa1LwL8cv2t1aYLmPgHhvyYnElb3YOHTeL9ZzLI28/1pISMx/aBJ9IND9VtXvW8mzWlFGK9Zo5gO6VqdKxA==","signatures":[{"sig":"MEYCIQDjiAZ7fxzstHe+jRKMdGzglL1YXq7EbFb3O2KJZlBkbwIhALNNaFTsw4fkZtMz/2d+FreIdF4v64ZovtwN/MOIgF9F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":345170},"type":"module","engines":{"node":">=20"},"gitHead":"6800ec40db87c61ea039244cbf448146102c7d4e","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.19_1786203868302_0.6551038977450203","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.20","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.20","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"fbeba9b58b3e54c3e5df54ddebfa4bf531d3dda6","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.20.tgz","fileCount":25,"integrity":"sha512-N6SJ1DUFdMkUb9gJOyrNk/jv63MOIxRNTTgBDRStWd3aEOBEBHR0xnfHfXX8ZLeFudSlvsnwPcvH+uVEzh+eTw==","signatures":[{"sig":"MEYCIQCQUNLqIYhy2FXP75NomrBkFuf0mHM59bTH3GpJ1oiixAIhAJ8RAFeu/RCdQueKYpEbk6qGbHV51+8f/lNegACWDhGX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":351225},"type":"module","engines":{"node":">=20"},"gitHead":"6800ec40db87c61ea039244cbf448146102c7d4e","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.20_1786275056662_0.5312738673929347","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.21","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.21","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"aa9021f787c803e4a6f4f30f1dacf698dd473c21","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.21.tgz","fileCount":26,"integrity":"sha512-LPMuvY5tMpYj1w5xF0Uj+hkds0Mfg5vubPqkFfK/n2euBHk7AUNUDb1Zz1Yx9I+OBXbrnjjMBXtyUvGS2zvuow==","signatures":[{"sig":"MEUCIAbCTrOoc4eXEmgWidlrSaxE6Ql5NkzRFOSnowaZ116LAiEArosZlKtvfq4Cj9+SlsJ9xZv9x5/eB8CxAakh+vSbNsQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336315},"type":"module","engines":{"node":">=20"},"gitHead":"c3d11d8d7a04b9bc6c915b9e70c65f7c0381551c","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"optionalDependencies":{"better-sqlite3":"^12.4.1"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.21_1786280335583_0.6252923973222762","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.22","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.22","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"7bea9e79c9b6bf7f96b66230b3b348194b6d4002","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.22.tgz","fileCount":26,"integrity":"sha512-VAtT8YaRjxBLJWh4GoH5fgzAgz8iaqxo8TnxsNFJlFaHYY2fxsjw8iSxT2yh5tZGF1ycFCG/cPssKGmxqfUrKg==","signatures":[{"sig":"MEQCICfE9BDRzTwhUYr6RcM1Hqv27hu1QRmD0CPvSPhLmZJMAiBYWizXv2fnMmYO0YfRU0O9nRrkqCiAiAF/8NZHN4WQlw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":356789},"type":"module","engines":{"node":">=20"},"gitHead":"af08dbb08c0966f7f2bffd6b66c3f0aefc0d5736","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"optionalDependencies":{"better-sqlite3":"^12.4.1"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.22_1786440837699_0.09174159301632678","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.23","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.23","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"c8":{"all":true,"src":["src"],"exclude":["src/tests/**","src/types.ts","**/*.d.ts"],"reporter":["text","json-summary","lcov"],"extension":[".ts"],"reports-dir":"coverage","exclude-after-remap":true},"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"416ae5738af0942aee557541642deb2e8ebc8166","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.23.tgz","fileCount":26,"integrity":"sha512-h2vaGCnEYkzVcPTUB9Ftaxpw3v6SaVAbg90dIK7JbygyOl12QOqL1grtQySUq4W3k7euZdYDad/w3rChHRAofA==","signatures":[{"sig":"MEUCIAdBpCwZH7L+uNsUslq4xVx3oxWQpXVEwKGq/sYO9laVAiEAtUTo3DBfCtlF7mQvuUUNxxkPr6vZPr0FnbknRhYkuK4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368008},"type":"module","engines":{"node":">=20"},"gitHead":"bf8d815419fc49f78ea7f2d448aea71e946d5495","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","test:coverage":"npm run clean && tsc -p tsconfig.json && c8 node --test dist/tests/*.test.js","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"c8":"10.1.3","typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"optionalDependencies":{"better-sqlite3":"^12.4.1"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.23_1788006991739_0.5244810563615077","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.24","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"license":"UNLICENSED","_id":"@bd-gongfu-ai/engineering-nexus@0.1.24","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"c8":{"all":true,"src":["src"],"exclude":["src/tests/**","src/types.ts","**/*.d.ts"],"reporter":["text","json-summary","lcov"],"extension":[".ts"],"reports-dir":"coverage","exclude-after-remap":true},"bin":{"engineering-nexus":"dist/index.js"},"dist":{"shasum":"3dbac67b89d636858798bf6b4474249b9426bf3d","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.24.tgz","fileCount":26,"integrity":"sha512-Qw0Zg2kpDIfM9eEP0MonL2utGqckAT9oFv0O8znZ6jyaHNhHUPwoEmRIwK/TwyH5TwGuC6b+sSrJ6kDMzL/EGw==","signatures":[{"sig":"MEQCIH9D4a4uOJFH4muGsMXtRHejb+tBmIMpFAPqfsUKtsGiAiBA9ASnlVFt6Lt6qq0CZLpSfujh46Insv2fbTP44cbXWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":374395},"type":"module","engines":{"node":">=20"},"gitHead":"16ee4c5ab3f4beda2ff4585a0fc04704439e820f","scripts":{"test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","start":"node dist/index.js","prepack":"npm run build","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","test:coverage":"npm run clean && tsc -p tsconfig.json && c8 node --test dist/tests/*.test.js","prepublishOnly":"npm test && npm run test:package"},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"_npmVersion":"10.9.4","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^3.25.0","proper-lockfile":"^4.1.2","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"c8":"10.1.3","typescript":"^5.8.3","@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4"},"optionalDependencies":{"better-sqlite3":"^12.4.1"},"_npmOperationalInternal":{"tmp":"tmp/engineering-nexus_0.1.24_1788625300818_0.6345889756755114","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@bd-gongfu-ai/engineering-nexus","version":"0.1.25","description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","type":"module","bin":{"engineering-nexus":"dist/index.js"},"scripts":{"clean":"node --input-type=module --eval \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true });\"","build":"npm run clean && tsc -p tsconfig.build.json","test":"npm run clean && tsc -p tsconfig.json && node --test dist/tests/*.test.js","test:coverage":"npm run clean && tsc -p tsconfig.json && c8 node --test dist/tests/*.test.js","test:e2e":"npm run build && node scripts/e2e.mjs","test:package":"node scripts/package-smoke.mjs","prepack":"npm run build","prepublishOnly":"npm test && npm run test:package","start":"node dist/index.js"},"engines":{"node":">=20"},"publishConfig":{"access":"public"},"keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"dependencies":{"@modelcontextprotocol/sdk":"^1.30.0","proper-lockfile":"^4.1.2","zod":"^3.25.0"},"devDependencies":{"@types/node":"^22.15.0","@types/proper-lockfile":"^4.1.4","c8":"10.1.3","typescript":"^5.8.3"},"c8":{"all":true,"exclude-after-remap":true,"src":["src"],"extension":[".ts"],"exclude":["src/tests/**","src/types.ts","**/*.d.ts"],"reporter":["text","json-summary","lcov"],"reports-dir":"coverage"},"license":"UNLICENSED","optionalDependencies":{"better-sqlite3":"^12.4.1"},"_id":"@bd-gongfu-ai/engineering-nexus@0.1.25","gitHead":"182f57b800aee901658e21d28be6d6db54bda228","_nodeVersion":"22.22.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-CW1HVfbnnwhK4+238eCP4uR1LtUk6ZRG5vFZOb9Dyuh4u+D0BlbR9Sa3waXKjKc4F62436nT72814W0KyuyVFA==","shasum":"bd86e139fa0156cc09abef7c3ca41b5caf4d794b","tarball":"https://registry.npmjs.org/@bd-gongfu-ai/engineering-nexus/-/engineering-nexus-0.1.25.tgz","fileCount":26,"unpackedSize":381536,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDT/zyDR6L5tUDU4QfaDaZOFrj7PkDHmrkY35e0A5523wIhAIrX3u4KNKialqnaj086uD2OBMun6iA5mWsWPX0rvk33"}]},"_npmUser":{"name":"wyj580231","email":"wangyuejun86@126.com"},"directories":{},"maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/engineering-nexus_0.1.25_1788743600789_0.1881609827750621"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-29T17:06:01.217Z","modified":"2026-09-07T01:13:21.125Z","0.1.0":"2026-07-29T17:06:01.615Z","0.1.1":"2026-07-30T06:38:13.945Z","0.1.2":"2026-07-30T07:50:12.822Z","0.1.3":"2026-07-31T08:46:06.099Z","0.1.4":"2026-07-31T13:05:15.617Z","0.1.5":"2026-07-31T14:38:46.248Z","0.1.6":"2026-08-02T13:52:09.982Z","0.1.7":"2026-08-02T16:04:23.081Z","0.1.8":"2026-08-03T01:44:47.048Z","0.1.9":"2026-08-03T04:58:53.482Z","0.1.10":"2026-08-03T07:57:29.030Z","0.1.11":"2026-08-04T01:26:39.318Z","0.1.12":"2026-08-04T04:56:38.185Z","0.1.13":"2026-08-04T07:11:00.826Z","0.1.14":"2026-08-05T01:52:21.408Z","0.1.15":"2026-08-05T09:19:38.492Z","0.1.16":"2026-08-06T09:45:41.869Z","0.1.17":"2026-08-06T10:07:06.421Z","0.1.18":"2026-08-06T12:38:36.983Z","0.1.19":"2026-08-08T15:44:28.458Z","0.1.20":"2026-08-09T11:30:56.815Z","0.1.21":"2026-08-09T12:58:55.760Z","0.1.22":"2026-08-11T09:33:57.834Z","0.1.23":"2026-08-29T12:36:31.897Z","0.1.24":"2026-09-05T16:21:40.966Z","0.1.25":"2026-09-07T01:13:20.927Z"},"license":"UNLICENSED","keywords":["mcp","engineering-intelligence","ai-analytics","gongfu-ai"],"description":"Gongfu AI Engineering Nexus for privacy-safe engineering insights","maintainers":[{"name":"wyj580231","email":"wangyuejun86@126.com"},{"name":"jiucaili","email":"460453303@qq.com"}],"readme":"# Engineering Nexus MCP\n\n`@bd-gongfu-ai/engineering-nexus` 是一个本地 MCP 服务，用于采集 AI 开发工具和 Git 的聚合使用指标，并将结果上传到已配置的数据服务。\n\n它只处理统计所需的元数据，不上传对话内容、代码内容或 Diff。\n\n## 支持范围\n\n支持以下数据来源：\n\n- Codex\n- Claude Code\n- Cursor GUI\n- Cursor CLI\n- Git\n\n可采集的聚合指标包括：\n\n- AI 会话、AI 对话和 AI 交互数量\n- Token 使用量和模型分布\n- Skill 调用数量\n- AI 代码新增与删除行数\n- Git Commit 数量、代码新增与删除行数\n\nAI 代码变更和 Git 代码变更是两个独立指标，不会将 AI 代码行与具体 Commit 进行关联。\n\n## 运行要求\n\n- Node.js 20 或更高版本\n- `PATH` 中可以使用 `git`\n- Cursor SQLite 优先使用 Node.js 22.5 及以上版本内置的 `node:sqlite`；较低版本由包内可选依赖 `better-sqlite3` 兼容，无需额外安装系统 `sqlite3`\n- 由服务提供方获取 API URL 和 Access Token\n\n## 快速安装\n\n通用 MCP JSON 配置：\n\n```json\n{\n  \"mcpServers\": {\n    \"engineering-nexus\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@bd-gongfu-ai/engineering-nexus@latest\"],\n      \"env\": {\n        \"ENGINEERING_NEXUS_API_BASE_URL\": \"https://example.com/api\",\n        \"ENGINEERING_NEXUS_ACCESS_TOKEN\": \"your_access_token\"\n      }\n    }\n  }\n}\n```\n\nCodex TOML 配置：\n\n```toml\n[mcp_servers.engineering-nexus]\ncommand = \"npx\"\nargs = [\"-y\", \"@bd-gongfu-ai/engineering-nexus@latest\"]\n\n[mcp_servers.engineering-nexus.env]\nENGINEERING_NEXUS_API_BASE_URL = \"https://example.com/api\"\nENGINEERING_NEXUS_ACCESS_TOKEN = \"your_access_token\"\n```\n\n安装后建议先调用 `check_connection`，确认服务地址和 Access Token 可用，再调用 `sync_now` 执行一次同步。\n\n## MCP 工具\n\n- `check_connection`：检查服务连接和 Access Token 是否有效\n- `nexus_status`：查看本地采集状态、来源可用性、待上传数量和最近错误\n- `sync_now`：立即请求执行一次采集与上传\n- `preview_cursor`：只在本地预览 Cursor 聚合数据，不上传、不推进正式采集进度\n- `verify_local`：扫描本地证据、完成正常同步，并与服务端聚合结果进行比较\n- `prepare_recollection`：创建当前用户数据的重新采集准备请求，不直接删除数据\n\n## Cursor 本地预览\n\n无需配置服务地址和 Access Token，即可预览本地 Cursor 数据：\n\n```bash\nnpx -y @bd-gongfu-ai/engineering-nexus@latest preview-cursor \\\n  --start-date 2026-08-01 \\\n  --max-sessions 500 \\\n  --max-ms 30000\n```\n\n预览仅返回会话、对话、交互、Token、Skill 和代码行数等聚合结果，不修改正式采集状态。\n\n## 本地数据核验\n\n可以通过 CLI 核验指定时间范围内的本地数据与服务端聚合结果：\n\n```bash\nnpx -y @bd-gongfu-ai/engineering-nexus@latest verify-local \\\n  --start-date 2026-08-01 \\\n  --end-date 2026-08-07 \\\n  --timeout-ms 120000 \\\n  --json\n```\n\nCLI 退出码：\n\n- `0`：本地证据完整且结果匹配\n- `1`：本地证据完整但结果存在差异\n- `2`：参数无效、证据不完整、连接失败、鉴权失败或超时\n\n## Cursor Token\n\n检测到 Cursor 后，MCP 会自动配置 `afterAgentResponse` Hook，用于采集 Hook 安装之后的准确 Token 数据。现有 Cursor Hook 会被保留；网络失败时，尚未确认上传的数据会继续保存在本地。\n\nHook 安装之前的历史 Cursor Token 无法恢复。当前版本不采集 Cursor 代码采纳率。\n\n## Git 数据\n\nGit 指标来自 AI 会话工作区内仓库的本地分支、`origin` 远端跟踪分支和本地标签，不要求 Commit 已经推送。采集只执行本地只读 Git 命令，不运行 `ls-remote`、`fetch`、`pull` 或 `push`，因此不依赖网络、VPN 或远端凭据。\n\n采集器保存每个仓库已经确认处理的 ref tip，并用 Git 图差集发现后续新可达 Commit。大历史按固定快照有界分页，只有当前页被服务端接收或判重后才推进进度；分支删除、rebase 或 force-push 不会回删已经观察到的历史 Commit。\n\ncheckpoint 还绑定不可逆的作者指纹。修正仓库本地 `user.email` / `user.name` 后，即使 ref 未变化也会从固定起点重扫；本地状态不会保存姓名或邮箱明文。修改 origin URL 不触发历史重扫，避免同一物理历史按新旧仓库标识重复累计。\n\n作者配置允许只设置一项：`user.email` 非空时优先按 email 匹配，否则按 `user.name` 精确匹配。两项都未配置时跳过该仓库，不报失败；后续补充任一身份后会从固定起点扫描。\n\n浅克隆的边界也会写入进度。仓库 deepen、unshallow，或已保存的 ref 对象被 Git GC 后，旧分页位置会失效，采集器将从当前本地 refs 幂等重扫；已经上传的 Commit 由服务端去重。本地对象库中已经删除且此前未处理的 Commit 无法恢复，也不会补造。\n\npartial clone 不会触发 Git 的隐式 lazy fetch。Commit 已存在但行数所需 blob 尚未落地时，该 Commit 暂不上传伪造零值，也不阻塞其他 Commit；采集器保留本地修复项，待对象由正常 Git 操作补齐后自动补发。`verify_local` 在修复项未清空时会报告本地证据不完整。\n\n每个仓库共享固定墙钟预算。单个 Commit 先读取准确的新增、删除和文件总数；文件数量、结构化 Diff 字节或剩余时间超限时，采集器仍上传准确总量、推进主水位，并将 SHA 持久加入非阻塞文件明细补采队列。后续追赶周期在默认 100,000 个文件和 64 MiB 结构化 Diff 的独立共享预算内连续补采多个 SHA，同时受 Commit 数与单仓库 deadline 约束；可分别通过 `ENGINEERING_NEXUS_GIT_REPAIR_MAX_FILES` 和 `ENGINEERING_NEXUS_GIT_REPAIR_MAX_DIFF_BYTES` 调整。完成状态同时检查指标与明细待补 SHA，既有未完成 Git session 也会独立加入候选，因此旧版本误标为完成或已失去 AI workspace 枚举的 checkpoint 升级后仍会自动恢复。指标补采若只恢复摘要，会继续转入明细补采队列。待补队列清空前 Git backfill 保持未完成；有修复进展或仅耗尽时间时按短间隔继续追赶，整轮无进展或仓库暂不可用时按仓库失败退避，并从上次 SHA 后轮转重试，避免永久超限项造成快速自旋或饿死队尾。对象已被 Git GC 时会移除补采项，避免永久阻塞。\n\n完整 Git Commit 事件超过 800 KiB 上传限制时，文件明细按稳定顺序确定性分块。服务端按仓库、Commit SHA 和文件路径幂等合并，Commit 数量及总增删行不会因补采、分块或重试重复累计；只有全部分块确认后才推进对应 checkpoint。\n\n只上传 Commit 数量、代码新增与删除行数和必要的文件级统计，不上传 Commit message、Patch 或文件内容。\n\n## 离线与恢复\n\n服务暂时不可访问时，待上传事件会保留在本地。网络恢复后，MCP 会在后续采集周期继续上传，不需要重新安装。\n\n可以调用 `nexus_status` 查看待上传数量和最近错误，调用 `sync_now` 请求立即重试。\n\n### 主实例健康与接管\n\n同一用户环境中同时启动多个 MCP 客户端时，只有持有本地 `collector.lock` 租约的实例运行调度器；其他实例保持 `slave`，不会并发采集或上传。主实例会在共享 owner 记录中发布调度启动时间（`started_at`）、调度状态、周期序号、最近周期开始/完成时间和最近错误。\n\n`nexus_status.main_instance` 中的 `health_status` 取值包括：\n\n- `healthy`：owner PID 存活、锁租约新鲜且调度心跳在允许窗口内更新\n- `stale`：PID 和租约仍存在，但调度心跳已停止推进\n- `unknown`：兼容没有健康字段的旧 owner 记录\n- `unavailable`：owner 进程已退出或锁租约不可用\n\n从实例不会直接删除锁。检测到 `stale` 后，主实例会停止后续调度并在 owner token 匹配时释放租约，由存活的从实例通过原子锁竞争接管；接管后会继续处理本地上传队列、失败重试和已排队的同步请求。单纯的 `/ingest/batches` 网络失败只进入现有失败队列和固定周期退避，不会触发主实例接管。\n\n从实例调用 `sync_now` 时，结果为 `status=queued`，并返回独立 `request_id`；这表示票据已持久化，不表示本次同步已经完成。票据由当前或后续兼容主实例在一个有界周期内消费，成功提交后删除。`nexus_status.sync_requests` 会提供 `pending_age_seconds` 和 `wait_reason`（例如 `stale_main`、`waiting_for_main` 或 `waiting_for_compatible_main`），避免重复调用 `sync_now` 产生无效请求。\n\n## 升级\n\n配置使用 `@latest` 时，MCP 宿主会在下次启动时解析 npm 最新版本。运行中的进程不会自动替换；新版本发布后需要重启 Codex、Cursor、Claude Code 或对应的 MCP 宿主。\n\n升级不会删除本地原始日志或已保存的待上传队列。\n\n## 隐私边界\n\n上传数据不包含：\n\n- 提示词、回复或其他对话正文\n- 文件内容、代码内容、Diff 或 Patch\n- 绝对路径\n- 工具参数或工具执行结果\n- Commit message\n- Access Token、Git 凭据或包含凭据的 URL\n\n上传前会按字段白名单清理事件，只保留统计所需的标识和数值。\n","readmeFilename":"README.md"}