{"_id":"pi-knowledge","_rev":"34-ef68bd781c906756ec9bcb8458d3a5e5","name":"pi-knowledge","dist-tags":{"latest":"0.11.0"},"versions":{"0.1.0":{"name":"pi-knowledge","version":"0.1.0","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.1.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"16ff99207cb1bacadc882f5d36f1f0fa22f6db3a","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.1.0.tgz","fileCount":17,"integrity":"sha512-0JCeQU7aLN1deP5ntVMyho6Y8IQeSmggTrwGVeIVhvoNgOWYnRZVGn57nyDtZF73avbZdVg3HQSuPHTVF1Po2g==","signatures":[{"sig":"MEYCIQDwZgx++T0wkrJqiYCcpS1SMFWMZlN5aJbXUQlf+7xhkwIhAJbLnP4wt9T5aYDaRxHK2bh1T/IGjl4JQyQhuazxQyny","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59124},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"3f0f702265320d4ec890708a555686bcf0599d1f","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ignore":"7.0.5","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.1.0_1781450311386_0.3875169352206196","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"pi-knowledge","version":"0.1.1","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.1.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"73d954da7fa47153f5234552b8d3bd48fca72108","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.1.1.tgz","fileCount":17,"integrity":"sha512-nGw21IywD799+bx9ysQDZfcmR4+XOSG4Shd0/x5aytQSk4uzoh1d7CoOj4N190yB8cLtrULSd/pl05tBNgNCvg==","signatures":[{"sig":"MEQCIBh+SrRmZQRW3TWtWbt0pGNaL78RkTRnXEisOdZ0yA/iAiA0ZXUtHybiwybY+8wgYOlc52mevT90KYILIhowTJFYzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59483},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"ba8a652336bc5268b75edf1f4012e369c2554fcf","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ignore":"7.0.5","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.1.1_1781451202010_0.04263718826630414","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"pi-knowledge","version":"0.1.4","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.1.4","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"615251ec12e4c4487dfa2117d1a1ba7afb8678e3","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.1.4.tgz","fileCount":17,"integrity":"sha512-L1q0/ACITkPKn/QWtR2EaN29SLl7aNJsfz5DgozSCR2MP68q4419IBIpoJuvbVLoEk7eWqI7KAnn0t+WlMJhuA==","signatures":[{"sig":"MEQCICVWX8VQ2JPFpghRzKP9VjimiWqietdoKmbO7Ssz22SZAiB4sHtTQ6uuOfVvSm/j2HMz4ygjdXDEGI0Kx07qQ92pbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63234},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"ed016866ce8be68e1f469c1ce3aaa70abe8cef3c","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ignore":"7.0.5","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.1.4_1781454854203_0.5142869342143694","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"pi-knowledge","version":"0.2.0","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.2.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"f8e230c12bff89d182d01f7e15271e7394654646","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.2.0.tgz","fileCount":17,"integrity":"sha512-y7XeO6nCFFVRu+IIUzQTX5QXFbqS/5tH+4ToQj/c5QIFZqge8MqEqnCg9jWG1yTnTo99VnBMq8B5+gYNr3wi7A==","signatures":[{"sig":"MEUCIG9HYYQE0g9yXM9Q6TfMOG57W2xlccadssE2Mg4t12uyAiEAhpsYQ//c2CuMKH0IVaLu+WPoL03OwMgOyWZ2vTKa0yE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68593},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"7427e81cdf145d8fb15ab109200c6abc11504483","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.2.0_1781457149749_0.7865804158918739","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"pi-knowledge","version":"0.2.2","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.2.2","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"344cb6eff8d8842b5eb87d8068a419e1bba86265","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.2.2.tgz","fileCount":18,"integrity":"sha512-joskMX7LBW0L7bkwmjk1amJcqMkexnricqREyOhCihZPRR0aEgPD7RKx/BiB3QLZeuRmra8C0051ZhLWVKfacQ==","signatures":[{"sig":"MEUCIB+3gwxy4TXikPrcAGuh5MUjP4tAIUmV2HVjXGRl6fuNAiEAjVC5SSUkCwFEC48XTgFPp1JdCGrxXGuhyZQBRlOOGLc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70514},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"5bf6a7d5d6979697bc924982fa7045ba1dcecb73","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.2.2_1781459504029_0.9930490893876878","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"pi-knowledge","version":"0.2.3","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.2.3","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"02a8d8f592d80670a2e4a937b02d31585ece912e","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.2.3.tgz","fileCount":18,"integrity":"sha512-t0etYPBj5NeybefTrrbSstipo3rZJG2qZnPF2A8zTJEsn3CukFeIKfR5osGMMapCdQBdA3TQtZUKy8AJlwtHaA==","signatures":[{"sig":"MEYCIQCExkDX57whuKftJ6NJ0tCdgkZPO4BFsEs0SwKSK3fqsQIhAIOQEeY/ZSPgES7Ef7s3J3GMUyEOmyzDqlpakc7GAXug","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70529},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"1b34b00dbedef40170cb2a23a26ffb1bdc8d61c5","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.2.3_1781491214656_0.8745687252003702","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"pi-knowledge","version":"0.3.1","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.3.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"7cfd003422fced4daf88136d48445691dc392919","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.3.1.tgz","fileCount":18,"integrity":"sha512-1dJr2AWNtDH7944F/ZogR3p3i7uMrBt9RpeT+Azo8LWIWykHbwORNNfo1f7P2pdZCG3w1yCNA3Bq2zNlcJtaKg==","signatures":[{"sig":"MEQCIAQc5OF1FMcwH3dM3o3sg7XKRniyFApx866F2U4bN+qwAiAWDXbzZmAw59EpVp2gItm9oGkxlVkYhYsUfjX1HZ8DJw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80308},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"c94f85d29581eee588e79218dd092cf10c2aaf69","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.3.1_1781507471548_0.2908761089405325","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"pi-knowledge","version":"0.3.3","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.3.3","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"e1bd08b03772594bde24eb04b0d28daeb4df8b43","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.3.3.tgz","fileCount":18,"integrity":"sha512-ML4Y/FIDjMoFF4b4KUuCYeZCnmWKbr1VtNTHz4YRjejaHiMX/8fTv0btbbz1C+geBlyFYKSfqu9yRsQJKtwm4w==","signatures":[{"sig":"MEQCIDUsIbFQWIXN4k/bEhC5xt+7AUbHpVUaBXKY0qwZZ7NRAiAjhOFXV1i0GXBg9n5lURbOxeFMqnp2W1DmKudTxglYqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81418},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"df3ee711df3ae1d9af412d2f094b7c38b3fea939","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.3.3_1781523043833_0.6758016526242734","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"pi-knowledge","version":"0.3.4","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.3.4","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"4a0014c7dd53c4c04c6246118071e9543d387706","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.3.4.tgz","fileCount":18,"integrity":"sha512-p1ypUeC71Z6Hpf1ZiLZiHEtTUzyANT3STVZmLe35m8RiVdhFlua3f9iGMi23NmfV5hNBfzIHapMfPChFbmhJyQ==","signatures":[{"sig":"MEYCIQDNzXB2cWfkNQLl2ZDeLRQNyL7uHNj9PmedoZnGbiuzQwIhAL9W1EPfjQGYLDrpxjc7WmNE37um1U2F8VXPD0u4fChA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82652},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"8170ebbd30b04f5f7a6690eeefc414409327fa0d","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.3.4_1781528259925_0.4270973147202244","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"pi-knowledge","version":"0.3.6","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.3.6","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"a9a30751d1279d3c12f62361de70876fa29c7550","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.3.6.tgz","fileCount":20,"integrity":"sha512-61/ZcoCXYy3So3Di2aKTFtCGo+nwJph5nuOAs3pcnl0qnNKAqw0ZxbO4FGZr4ukwRXzcbmd19VBUFoJYXyEyvQ==","signatures":[{"sig":"MEQCIHdfL8wyQwd6p3KGOozaSIQQ7S0LTcYr5muJMdzz88knAiBG1gIIbuEISfS1lELgVHgsuToxskl6hm2I5UHdpNwsQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112314},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"99dc2819498c23a6542d5f3eb4d867db905da286","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.3.6_1781579456034_0.711558728718598","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"pi-knowledge","version":"0.4.0","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"54015b5d56ac0c4f571d3b1fb2fe19819a525b40","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.0.tgz","fileCount":20,"integrity":"sha512-bAZDjM9ECPnWc7Tf+Xx5WK4eIzmY2MKwK/Xow/zaf9marmcgFLy4ncww4iukiycFEgjtH2BwVllTmKN7tVuSLA==","signatures":[{"sig":"MEUCIA/MKnYWpN4/4KconKZ0jLYRHlh3pjfIIGDOf+V1TXucAiEA9+Xiq5FjQa0OtC4qSAndQ2P1tkOXKQWNmreCw86/yP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":177251},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"529fe298fa3b188fc073cf31cba491d77c4cdd2f","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.0_1781600096585_0.5898188639617177","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"pi-knowledge","version":"0.4.1","keywords":["pi","pi-extension","knowledge-base","vector-search","semantic-search","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"23374ad06e1258ca5f666dad0f2dde03a971f6c8","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.1.tgz","fileCount":22,"integrity":"sha512-L0A1KkVyVG3c/SS4gAdIxXMxROlrZNmK/rQ3d+dsuFhB8BstmT8f9b+3CKWxGQIM/JUnezwP3/oe8ctZspLvvg==","signatures":[{"sig":"MEYCIQC2khMwjO2BHrzwNgn7PyZq9aeyFV2OSC1iTm8wETPfZAIhAMBwYEqB9A8gm7dupWWg+ObAg5aTZnCbPDtOo7cNqENx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179731},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"b4b16ad9ee3efdd2f01ea971b17070ed6e2ca288","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Vector knowledge base extension for Pi — index files, hybrid search, local embeddings","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.1_1781625613814_0.5780896353455844","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"pi-knowledge","version":"0.4.2","keywords":["pi-package","pi","pi-extension","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.2","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"b000fc94f1580005512b36076e7cc7635f38c6b5","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.2.tgz","fileCount":22,"integrity":"sha512-XaZ34fZZSgEU8UzzxTO25RO0K9ag3mOD3FVekFPewKD5Y/JtnAmzzbwLpJFS693NNRoAY4BSaKjVnDR0k8COug==","signatures":[{"sig":"MEYCIQCrJjJWLI2CGnzZDy0zmIdikhbdrLRggjk6KdEectUCyAIhAJKe1Ic1atfqdl31wWcECYqtx2y7HO0Tepqwvnc3uw3q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":181596},"main":"index.ts","type":"module","engines":{"node":">=22.0.0"},"gitHead":"966741367184524e446b66b61090ec41a04bc85e","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","check":"biome check --write --error-on-warnings .","test:e2e":"vitest --run test/e2e/"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.2_1781772189235_0.2976167583600402","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"pi-knowledge","version":"0.4.3","keywords":["pi-package","pi","pi-extension","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.3","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"ba2f0a345168c14f420baeee542d83fc5deec5b4","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.3.tgz","fileCount":40,"integrity":"sha512-SRUQx9u22Z76UcHLRgpGSWvxpg8T1XY6VzEUDmXZW7xvkdeJA4aWA780/6BKnPAO6SzlBoMkgcpLyQKMIgkHJg==","signatures":[{"sig":"MEYCIQCjmtsS9cvojkMDuq+LZzbEus9m/y4qLJS1rhzOr4hIswIhAJMhTASl8aNW26zq1Np967kFVaeEViTMqy0+drus18vQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208677},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"d2c166d1d6f43405979e4847ae2cf1a05d12b002","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.3_1782224660757_0.44433592723413806","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"pi-knowledge","version":"0.4.4","keywords":["pi-package","pi","pi-extension","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.4","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"75b60ceea1d904bb28fc4a3471b69bb11217621e","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.4.tgz","fileCount":40,"integrity":"sha512-NKj4g0qmOsHv3vYR2PQzFxJU3FZRt2XDXgoddLJZNUTgBw44D9AByYnoRdSp+7DIjaJli1cfkbAPaeHqm9wxxw==","signatures":[{"sig":"MEQCIFnO9vQXqOOGUdmWHLrAbpdPrvAnaF2hFok69XW0sjXDAiBNQ2hvb/06cQqsZaFooQn1ZD6hOZQutSL9WNZmBss6/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208723},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"eb538410b7932583335875baaf33c2246699f88f","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.4_1782228297733_0.6806708270137887","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"pi-knowledge","version":"0.4.5","keywords":["pi-package","pi","pi-extension","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.5","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"7dc034af7f3f7683a6f5f4efd515cb43ea5cda7e","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.5.tgz","fileCount":40,"integrity":"sha512-Ox73GrD39tTEnVi/RO3IFKcP/COC35aob9LKvah/Kvge5n08Oq80qzjJoXLJB3F6v9O5tpxbGSiJv1sTU9ENTg==","signatures":[{"sig":"MEQCIFBRDgJ8/yHcvbkgUd6WrV/GKkj4lHW7Z1LpRDRRP8j6AiA9yriAEh1YH5KUZUlhEI3+ozh+fdjTXltzi30gvbxj3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215117},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"810c9e43d6d8185341675c23aa4078f1bb06aacf","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.5_1782231811653_0.2622496644196428","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"pi-knowledge","version":"0.4.6","keywords":["pi-package","pi","pi-extension","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.6","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"689eff8b0fbe727f466393cbddce85b012eedbea","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.6.tgz","fileCount":42,"integrity":"sha512-82Dw9323+C1MYW/L/Te0BcO+sjWB7UEVPNpDc0zmycsgjLG1SLbaQGwetnbQPSxIdQKoheOuLzrN5Z5TilmUhg==","signatures":[{"sig":"MEQCIGH4Sjggxgv9blJ6wYXHE9DtXb3m23L5QNG99u2t3c8KAiAURn4Yd5o8az8sVVFfoArLVlbyKaZ6PDvkYQU07fAzzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":229598},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"1d517e05f6c9bf7bc411775d117123be2f9dc542","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.6_1782439020491_0.2914825283753155","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"name":"pi-knowledge","version":"0.4.7","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.4.7","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"bc802b0997ef283ddd77a8982ec4cfb97ec197c2","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.4.7.tgz","fileCount":42,"integrity":"sha512-Gyub8xamDjdw/5N90jf1LEMMhp8L5bPNJ9Va4rClyLj3QknSnMMYm4hTHVEC+HtiZNEJBTqPd8JY1w2JXwdQ6w==","signatures":[{"sig":"MEQCIFoBOu8kuWAuWdM9sWTqT6duG1sBIFvCUjvtiMNt65s+AiArOqcxSC9hi+WB31jFIa/1d79Z9t6WosdPf2bHPUpr7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":232781},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"fbaaa85481d511343ad0b6faa408ea45567646ba","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.4.7_1783139343553_0.33679198630855","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"pi-knowledge","version":"0.5.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"dd3cdd611fb18bc2661731b11a21d030cbfc6222","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.0.tgz","fileCount":44,"integrity":"sha512-6JiSODbFk6jntrpszvqtT7iUqpI9wV63LoZ9qMgzJ/NvPYNk3YJcDtKctgkAXAMn006yWkqY2pfAD+sbvff+sQ==","signatures":[{"sig":"MEUCIEudrooUFg1exeuU8WKMHjBIgxO0h4TmCpuOT3NVLp1dAiEAgXCUK7uLF3NT/qhkKf3iVJ+riqpvxwtemwQPyQIX010=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":275567},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"b8701768b5a2bef9f7ac022d58af1813680965cc","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.0_1783401032629_0.7131335307577444","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"pi-knowledge","version":"0.5.1","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"429b3a5688246b18806a7c2bf751c6fd47aed277","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.1.tgz","fileCount":44,"integrity":"sha512-pkf+EWO3k+NgTC8RBitJAPoal7FMKVqOQ2yYWSTDs7OaH2JMT7n5xT14xH8HU+gMTJy2ucX2EpKigi0/Bvj1FQ==","signatures":[{"sig":"MEUCIB2g8Fkg4sZC4ZdSuExxW5QyPi7h7WSTpzjuwkdwBsuEAiEAxJ+w4dyfD79ygVH9SnqmJbB6a/YL9QprTkgwsq+uySU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":282624},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"80cbba46dce83d873f7a47afc25dcbeebf7c8534","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"11.9.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.1_1783405960174_0.9983775491084514","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"pi-knowledge","version":"0.5.2","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.2","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"e409249771131363174da4fd5ebfd5079a716fd5","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.2.tgz","fileCount":44,"integrity":"sha512-9+oNfFYueTgJ3vBOaKny0Y/tkukilMevuXwztTM66xcZeYnGuxrldOO5i5DXQANmULS32jwm00hYEl8DM3BMsg==","signatures":[{"sig":"MEUCIHRugE6EnXxAl3MiV/dOuoM7KsX1T/9uF1MmYeZf4JrTAiEAz7MOp/O+IXkfRrOsXkTDazjGFOzkj71rUo8RrHiDvXM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":282756},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"1c6d9e405b06f0250e9da79680d90d2f0070fbae","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.2_1784449297902_0.9635769536232297","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"pi-knowledge","version":"0.5.3","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.3","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"7e3188bef5c58dfdc6836f11c24c7201ab317785","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.3.tgz","fileCount":44,"integrity":"sha512-JEfF/rKO3Pxuz/QVfM9LiifSuR37wPwWbnmVo80qPdz+PPecxelowrs+7G8h7pYG99wnF7TX3G8L680/QB40Fg==","signatures":[{"sig":"MEUCIQDCHkHOovgbdooy1bJnRiN20yaq9PNhOAt+W7PoJYkl/QIgQkT5UivwC++eEGTBimNY9yYbqTmnqoA1N7uoyboISgw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294671},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"361e127e64b95419bf9b5c281c9535d9a384e4f9","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.3_1784797728971_0.6527291755693447","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"pi-knowledge","version":"0.5.4","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.4","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"045c7d34a7cc41ff57fb63122950ee9f35acc99e","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.4.tgz","fileCount":44,"integrity":"sha512-8V6EBPh4Jy8wx8t3mgLIAtl/GJ+h5B/egHReehFnm+VPji4oBd27rrmaF0S2bSKagHZu/W9VyGRztjNxbCuv6g==","signatures":[{"sig":"MEQCIA+1jPUPXS4CghmcGbPk3FdeBu0vp9r1WKoCRJMdiuLxAiBuIU/WYb8mhBS2jbPbMYv7AYJhLTmy4bRU64Haw/lY6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":297704},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"54c6ad870aa5901bd3afa76da7de82eaf8365817","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.4_1784799233190_0.4688992772056588","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"pi-knowledge","version":"0.5.5","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.5","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"fb563530b7a1b812b12b988cfd88bbc275bee2ef","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.5.tgz","fileCount":46,"integrity":"sha512-+bnuR5Nv3TQdleT1ixzBOoDJXeJGE1UPky8e30uBxtoBbEalAlKw9wJh9u3FdzA8lk4ramUWo47iMJM067H+/A==","signatures":[{"sig":"MEYCIQCRKNbHRgOOoZ6kBy5irDEYhPFMUEFm21Wy9fivEazHpwIhANHBDzgPcGaUmucJkZExoCxVSvX6WDJd2zqzdrW2gij8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304873},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"0796b55d07bf546b1eb3186fe363d3cb87ddaab1","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.5_1784804482715_0.24720326979179585","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"pi-knowledge","version":"0.5.6","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.5.6","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"ce3ca13ed172a9a31e4b02a51a1dd6bc50e8bb4b","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.5.6.tgz","fileCount":48,"integrity":"sha512-fS8JXE7hEFbPTm/TOghvXrynzSUD0d81zUbXS/7FbY/QRNkqUUm2WDulRuoycxGhZaX06pBXL+B6b9txUna6Sg==","signatures":[{"sig":"MEUCIBN9/6N+x/RoWB83aBJDlzFfFggJhNSXgVd3ZkM5MdBJAiEA6Om/1rfewGScse5T6zwsRRbW9SvXw2OsuE/CYXXrnBs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":320294},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"859f618ccfe6108844a441d68ffda1c7622ad0af","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.5.6_1784821675041_0.569119542614049","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"pi-knowledge","version":"0.6.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.6.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"80446efc2a7b58510169e44cb886c3350987b6f1","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.6.0.tgz","fileCount":52,"integrity":"sha512-WAVNrHyLpAG17YghY02bekAk9Zd8mx1CMhHIjS5ZZCh9YA5XqqXClc66txxJr30tPBBzgc+RSIo8j22m7mnDUw==","signatures":[{"sig":"MEQCICRENE7QI3n/tUXAtGIs8m+KT4thPBsY57LuZIssEM41AiA0uT7nHHS27HXZ7Mw7Z+bj/adGPsf230/VfbNU0IuJNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":348197},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"945f9cf31a1aa5f944689d0a3146d4ca461c8cda","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.6.0_1784974594356_0.39354273895973435","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"pi-knowledge","version":"0.7.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.7.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"5513ae12812ba2eb6628d53506acce36cac95a9c","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.7.0.tgz","fileCount":54,"integrity":"sha512-MYEtbapcD5BS4OcvV3CRBXHrbZoQyjWe7vrwP2KfIEaM1vzTV32pfc/ywG9uTwt9Xole+8qGOoWO2NkNw6ePGQ==","signatures":[{"sig":"MEUCIQChS8YDZBQEkagi70D+lliklyJLB+IbMtjj6KgVprbzQAIgQLvDsz6OOTBg3RQ+xlRqgugk81PK7UaPw3BW8b5MxRw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":352102},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"c18a6bf4f6468566e8ed878dd971c98c2ccf471d","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.7.0_1785176410620_0.7352826533660626","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"pi-knowledge","version":"0.8.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.8.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"a2ad76b95e961b35cf156bbcf9f27f514f24dadc","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.8.0.tgz","fileCount":54,"integrity":"sha512-EcOCotTd3YbkyklZbbqMjfu/3e3Lo+k/Qb3BFEdZcT9kL/y+jozeuFUQ2q02jMX9Ilad1k30aPZH87UBwd07pw==","signatures":[{"sig":"MEQCIDMbrSnFw1UdlRMKw/iDQTfpRdzL8aMvr90mmC0WqBPYAiAv2pUK40KK0sF5Wqwmnqggclx7q5JZzcmZ52sdcK76FQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353329},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"a66f29ea832d50654ec761e74823585ef510160a","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.8.0_1785817839369_0.1416334105195407","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"pi-knowledge","version":"0.8.1","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.8.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"665ce8cbd78e7a6c0fddfd8b737befb5a219edf4","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.8.1.tgz","fileCount":54,"integrity":"sha512-zVWlB0VfZyJLiXm3pMQO6ZfYuxp3fnVswokXVbXc5xk/SyNSH1JaFcifKWxxKxM3QbBJLle0kfZLnaADSoReKQ==","signatures":[{"sig":"MEUCIQCes058arD3gPfGjTMDEa+prhuRfbzCLo0az+Vzx4hp1AIgba97V4Qn3w3JaNslgI0GpKkyZa876m753FZCT0XkAjU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353932},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"194470645e861da754b0ae0cc7a0f5892c68d661","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.8.1_1786181067755_0.14459211625207957","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"pi-knowledge","version":"0.9.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.9.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"10178fe4d6de880019dbe30c8d3db18b6ddc42bf","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.9.0.tgz","fileCount":54,"integrity":"sha512-8OWI+Mjcpcqy4KjRCNjve9I81BycjW4C+fJpyeAUbhLag0kbTi46NcmCisClMMxYqhBNI0CJUzuV3qKrEBIwyg==","signatures":[{"sig":"MEYCIQCIDx2d+sHwgMYejVN2uIb7rmnWWyI+rtUnnCEcfaIKxwIhAJvX/ZZf2SEqgIz8yCV7XiP4CSu5erJv/tM9lJRuQffw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":377628},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"cb14f343f7b19ea6e3d0644cb4e25cd369430fdb","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.22.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.23.4","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.23.2","tree-sitter-python":"0.23.6","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.9.0_1787712088798_0.34901141476868425","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"pi-knowledge","version":"0.10.0","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.10.0","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"d02e102e9f10617a70376d39854444fa495fe557","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.10.0.tgz","fileCount":54,"integrity":"sha512-rlK7x2kyjjAe27yMD7eQRU9A8nXJ/EYkugUPDucIJf6rF+F1ISNTjuY/PqgAlC4mt6GQZFQWB/dzDiDUvlKWRQ==","signatures":[{"sig":"MEUCIQDndqhZB+nJLSpxZCcZCGKf6oe+orPa587eBx1Bk5fC9gIgCnH3YWVhef0c9+XW5iMXm/5M4zt4Xj+FVg8qXyfZ7ks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":386310},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"4cee9ca916f7cc48d9c8b4af35d5a6c0dd2bc481","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"overrides":{"tree-sitter":"0.25.1"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.25.1","tree-sitter-c":"0.24.1","better-sqlite3":"12.11.1","tree-sitter-go":"0.25.0","tree-sitter-cpp":"0.23.4","tree-sitter-bash":"0.25.1","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.24.0","tree-sitter-qmljs":"0.3.1","tree-sitter-python":"0.25.0","tree-sitter-javascript":"0.25.0","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.10.0_1787816859894_0.10959523241128677","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"pi-knowledge","version":"0.10.1","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.10.1","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"8c6433add5a661745428a33d7281e80fd9c4f4e1","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.10.1.tgz","fileCount":54,"integrity":"sha512-IRA//nryZ0VWT8YbC1XbDlrH3s6K73u8yrduj4rWme7DPvgKbjNVvOFuz7VYtx1xAP8uwnKM2hE4KpDr1WSwxQ==","signatures":[{"sig":"MEQCIDmPEVHsnWxkY4v3jSagIV6psO9cQ+TrG1gj9p+PBooAAiBcIm8HW/wXAcm0x9eM9nusxKmQ+3gCle776i1wE8VqdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDiFr5p2AoTQoLv1f/ngk7Gsy1h5i3l03N2sVVBIM8R4AIhAIIo5QXapEg9NojYKHrIkIfzk2yDG5HpODMAL0Rz2Rpq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389928},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"9d117a3761edd5b15815309c1e9663e1ed5368c8","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.21.1","tree-sitter-c":"0.21.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.21.2","tree-sitter-cpp":"0.23.2","tree-sitter-bash":"0.21.0","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.21.0","tree-sitter-qmljs":"0.3.1","tree-sitter-python":"0.21.0","tree-sitter-javascript":"0.23.1","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.10.1_1788976255440_0.25702171072092184","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"pi-knowledge","version":"0.10.2","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"license":"MIT","_id":"pi-knowledge@0.10.2","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"homepage":"https://github.com/nczz/pi-knowledge#readme","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"pi":{"extensions":["./extension.js"]},"dist":{"shasum":"da7691056cfcdc80d831dbce86e20513d10222c2","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.10.2.tgz","fileCount":54,"integrity":"sha512-3B6cLjXdRay29upXM20Sv0s9dTZq03rA5WquXoDMGE5/EQYjjtQ3mta1MwApLpholLMbGmW4X8xNkj1SEBJmMw==","signatures":[{"sig":"MEUCIBtDxfcf5muCmoleqQkV7b22ZXE5cWmQ0xyAslcD5f0CAiEAw85XTFTfMrDtnBFZEJiYyI4nNkNwS2vX2iuWljW9dQ8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDRpcp8kEQENyES72mzMNgxpOIl2Z+qSlIuiTKq9zhDJAIhAIabmW2fQzkkVcraKPbc8BjgZ/bdaN/m4NuzrdYvrCKU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":391876},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"b4fc548085104b1c72902a7d5f1db91b5c08a15e","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nczz","email":"im@mxp.tw"},"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.21.1","tree-sitter-c":"0.21.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.21.2","tree-sitter-cpp":"0.23.2","tree-sitter-bash":"0.21.0","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.21.0","tree-sitter-qmljs":"0.3.1","tree-sitter-python":"0.21.0","tree-sitter-javascript":"0.23.1","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/pi-knowledge_0.10.2_1789805829599_0.8425726402524281","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"pi":{"extensions":["./extension.js"]},"_id":"pi-knowledge@0.11.0","bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"dist":{"shasum":"7f84b3f274d34e9b803cc5035dddd1a6f02248bf","tarball":"https://registry.npmjs.org/pi-knowledge/-/pi-knowledge-0.11.0.tgz","fileCount":54,"integrity":"sha512-gstcD3BhBglPBczNnFlWZ3OBzzqjCnCZbTWkubdPpZ3o154yWFDAF/EDyv+xfOnKm7t4/hbeGgIXUV+v3YLcZw==","signatures":[{"sig":"MEQCIDc/9UW24YFAdEU53zKHW6X36U1VOpYxRQnKsSNWy1uAAiA0FbW/UBS/uwHIn27cDWH9f0nDdRqF/t7TB1Z9u5XeEQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCLg5rKYgrc51EkOIASX3fuh0HVOKIIGd62kHP3qHYFWwIgNtqFdBwhiEgT0jpCHF9hsWP/VVstaUWeZX/mKN8D7X0="}],"unpackedSize":395182},"main":"dist/index.js","name":"pi-knowledge","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"86f37fd5fde9d7d757414a6866543b961dff1b2a","license":"MIT","scripts":{"test":"vitest --run test/unit/","bench":"vitest bench test/bench/","build":"tsc -p tsconfig.build.json","check":"biome check --write --error-on-warnings .","prepack":"npm run typecheck && npm run build","test:e2e":"vitest --run test/e2e/","typecheck":"tsc -p tsconfig.json --noEmit"},"version":"0.11.0","_npmUser":{"name":"nczz","email":"im@mxp.tw"},"homepage":"https://github.com/nczz/pi-knowledge#readme","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"_npmVersion":"11.12.1","description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","directories":{},"maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"_nodeVersion":"24.15.0","dependencies":{"unpdf":"1.6.2","ignore":"7.0.5","mammoth":"1.12.0","tree-sitter":"0.21.1","tree-sitter-c":"0.21.4","better-sqlite3":"12.11.1","tree-sitter-go":"0.21.2","tree-sitter-cpp":"0.23.2","tree-sitter-bash":"0.21.0","tree-sitter-java":"0.23.5","tree-sitter-rust":"0.21.0","tree-sitter-qmljs":"0.3.1","tree-sitter-python":"0.21.0","tree-sitter-javascript":"0.23.1","tree-sitter-typescript":"0.23.2","@huggingface/transformers":"3.8.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"3.2.4","typescript":"5.9.3","@types/node":"22.19.19","@biomejs/biome":"2.3.5","@types/better-sqlite3":"7.6.13"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-knowledge_0.11.0_1790161996402_0.6502438464150209"}}},"time":{"created":"2026-06-14T15:18:31.303Z","modified":"2026-09-23T11:13:16.677Z","0.1.0":"2026-06-14T15:18:31.524Z","0.1.1":"2026-06-14T15:33:22.178Z","0.1.4":"2026-06-14T16:34:14.339Z","0.2.0":"2026-06-14T17:12:29.900Z","0.2.2":"2026-06-14T17:51:44.166Z","0.2.3":"2026-06-15T02:40:14.798Z","0.3.1":"2026-06-15T07:11:11.685Z","0.3.3":"2026-06-15T11:30:43.974Z","0.3.4":"2026-06-15T12:57:40.115Z","0.3.6":"2026-06-16T03:10:56.209Z","0.4.0":"2026-06-16T08:54:56.745Z","0.4.1":"2026-06-16T16:00:13.954Z","0.4.2":"2026-06-18T08:43:09.371Z","0.4.3":"2026-06-23T14:24:20.930Z","0.4.4":"2026-06-23T15:24:57.895Z","0.4.5":"2026-06-23T16:23:31.838Z","0.4.6":"2026-06-26T01:57:00.646Z","0.4.7":"2026-07-04T04:29:03.700Z","0.5.0":"2026-07-07T05:10:32.802Z","0.5.1":"2026-07-07T06:32:40.322Z","0.5.2":"2026-07-19T08:21:38.062Z","0.5.3":"2026-07-23T09:08:49.099Z","0.5.4":"2026-07-23T09:33:53.333Z","0.5.5":"2026-07-23T11:01:22.886Z","0.5.6":"2026-07-23T15:47:55.214Z","0.6.0":"2026-07-25T10:16:34.493Z","0.7.0":"2026-07-27T18:20:10.841Z","0.8.0":"2026-08-04T04:30:39.565Z","0.8.1":"2026-08-08T09:24:27.895Z","0.9.0":"2026-08-26T02:41:28.988Z","0.10.0":"2026-08-27T07:47:40.063Z","0.10.1":"2026-09-09T17:50:55.560Z","0.10.2":"2026-09-19T08:17:09.696Z","0.11.0":"2026-09-23T11:13:16.494Z"},"bugs":{"url":"https://github.com/nczz/pi-knowledge/issues"},"license":"MIT","homepage":"https://github.com/nczz/pi-knowledge#readme","keywords":["pi-package","pi","pi-extension","omp","omp-sh","ai-agent","coding-agent","knowledge-base","local-first","retrieval-augmented-generation","hybrid-search","bm25","vector-search","semantic-search","code-search","developer-tools","rag","embeddings"],"repository":{"url":"git+https://github.com/nczz/pi-knowledge.git","type":"git"},"description":"Local-first RAG knowledge base for Pi and OMP coding agents with hybrid code/doc search, reranking, diagnostics, and large-project indexing","maintainers":[{"name":"nczz","email":"im@mxp.tw"}],"readme":"# pi-knowledge\n\nLocal-first RAG knowledge base for Pi and OMP coding agents.\n\nIndex your codebase, docs, PDFs, URLs, and notes into persistent knowledge bases that Pi and [OMP](https://omp.sh/) can search across sessions. `pi-knowledge` combines semantic embeddings, BM25 keyword search, code-aware chunking, reranking, diagnostics, and stable large-project indexing so agents can answer from your actual project knowledge instead of guessing.\n\nBuilt as a native [Pi extension](https://pi.dev/docs/latest/extensions) with verified [OMP](https://omp.sh/) compatibility through the packaged extension entry. Designed for local-first project memory, agentic code search, and retrieval-augmented development workflows.\n\n## Why It Matters\n\nAgents lose project context between sessions and cannot fit large repositories into one prompt. `pi-knowledge` gives Pi and OMP durable, searchable project memory:\n\n- Search code and documentation by meaning, exact symbols, or both.\n- Look up lightweight code symbols, Markdown headings, config keys, and environment variables before broader search.\n- Keep private source data local by default.\n- Re-index changed files incrementally.\n- Diagnose stale, stuck, or low-quality indexes.\n- Handle large repositories with persisted progress instead of silent hangs.\n\nUnlike `pi-memory` (which manages the agent's own notes), `pi-knowledge` indexes **your existing files** and makes them semantically searchable by the agent.\n\n## Highlights\n\n- **Local-first project memory**: stores indexes under `~/.pi/knowledge/`; no project files are modified.\n- **Hybrid retrieval**: lexical-anchored BM25 + semantic vectors + normalized weighted score fusion, with semantic mode for vector-only conceptual recall.\n- **Code-aware indexing**: recursive AST chunking for TypeScript/JavaScript, Python, Go, Rust, Java, Bash, GNU C, C++, and QML, with bounded fallback chunks for oversized declarations.\n- **Lightweight symbol lookup**: indexes functions, methods, classes, interfaces, types, variables, route-like handlers, Markdown headings, config keys, and env vars for exact agent lookup.\n- **Better agent answers**: adaptive context windows, diversity reranking, optional cross-encoder reranking, and diagnostics.\n- **Large-project stability**: persisted indexing progress, capped batches, streaming vector scans, and stuck-job detection.\n- **Private by default**: local embeddings run without an API key.\n\n## Feature Comparison\n\n| Feature | pi-knowledge | kiro-cli knowledge | pi-memory |\n|---------|:---:|:---:|:---:|\n| Index arbitrary files/dirs | ✅ | ✅ | ❌ |\n| Multiple named knowledge bases | ✅ | ✅ | ❌ |\n| Semantic (vector) search | ✅ | ✅ | ✅ (via qmd) |\n| BM25 keyword search | ✅ | ✅ | ✅ (via qmd) |\n| **Hybrid search + weighted score fusion** | ✅ | ❌ | partial |\n| **Cross-encoder reranking** | ✅ | ❌ | ❌ |\n| **Adaptive contextual search** | ✅ | ❌ | ❌ |\n| **Diversity reranking** | ✅ | ❌ | ❌ |\n| **Incremental re-indexing** | ✅ | ❌ | ❌ |\n| **File watcher (auto-update)** | ✅ | ❌ | ❌ |\n| **Code-aware chunking** | ✅ (TS/JS/Py/Go/Rust/Java/Bash/C/C++/QML) | ❌ | ❌ |\n| **Symbol/config/heading lookup** | ✅ | ❌ | ❌ |\n| **Local embeddings (zero API)** | ✅ | ❌ | ✅ (qmd) |\n| **Index quality diagnostics** | ✅ | ❌ | ❌ |\n| **Metadata filters in search** | ✅ | ❌ | ❌ |\n| **Progress reporting + stuck indexing diagnostics** | ✅ | partial | ❌ |\n| Cross-session persistence | ✅ | ✅ | ✅ |\n| Pi extension native | ✅ | N/A | ✅ |\n| Context injection per turn | ✅ | ❌ | ✅ |\n| Search result TUI rendering | ✅ | N/A | ❌ |\n| Full tool TUI rendering | partial | N/A | ❌ |\n| RPC mode support | ✅ | N/A | N/A |\n\nTUI rendering currently uses Pi's stable default tool rendering plus targeted result formatting. A fuller custom renderer is intentionally not enabled yet because custom renderers must be width-safe across terminal sizes and Pi TUI modes.\n\n## Research-Backed Retrieval\n\n`pi-knowledge` turns retrieval research into product behavior that agents can actually use:\n\n- **RAG-native project memory**: follows the Retrieval-Augmented Generation pattern from Lewis et al. 2020: keep source truth outside the model, retrieve it at answer time, and inject only relevant context.\n- **Dense semantic recall**: uses multilingual dense embeddings in the spirit of Dense Passage Retrieval (Karpukhin et al. 2020), so conceptual queries can find code/docs even when wording differs.\n- **Contextual Retrieval without remote chunk rewriting**: applies Anthropic's Contextual Retrieval insight locally by embedding file path, file type, Markdown breadcrumbs, and AST-derived code structure such as symbols, scope, parent symbol, and signatures with each chunk. This improves standalone chunk meaning without sending private source chunks to an LLM for context generation.\n- **Hybrid retrieval with diagnosable scores**: combines lexical BM25 anchors and vectors with normalized weighted score fusion. RRF (Cormack et al. 2009) remains the baseline reference, but weighted fusion is used by default because project dogfood showed RRF compressed scores too much for ranking diagnostics.\n- **MMR-style diversity**: uses Maximal Marginal Relevance ideas (Goldstein and Carbonell 1998), file interleaving, vector redundancy checks, and bounded adaptive-window overlap collapse so repeated README or same-file chunks do not dominate top results. Code KBs with AST metadata can also use same-parent/sibling structure during adaptive expansion.\n- **Intent-aware and self-correcting agent UX**: mode selection (`auto`, `fast`, `semantic`, `semantic_hybrid`, `hybrid`, `adaptive`, `deep`), ranking diagnostics, and `knowledge_doctor` turn retrieval failures into concrete next actions instead of silent bad answers.\n- **Confidence gating**: low-evidence hybrid matches can return zero results instead of unrelated chunks, reducing false confidence when the KB does not contain the answer.\n\nThis is intentionally not a heavy ColBERT-style late-interaction index yet (Khattab and Zaharia 2020). The current product chooses lightweight local embeddings, BM25, query-aware ranking, optional cross-encoder reranking, streamed vector scans, and health diagnostics for commercial usefulness with low setup cost.\n\nIn project-level dogfood, these changes improved a real codebase evaluation from early 3.x/5 quality to above 4.5/5 after rebuilds, with fixes for score compression, README repetition, garbage-query false positives, small-module discoverability, source-vs-test ranking, indexing stability, and auto-mode false positives. Existing KBs should be rebuilt or updated after upgrades that change indexing text.\n\n## Quick Start\n\n```bash\n# Install for Pi\npi install npm:pi-knowledge\n\n# Install for OMP\nomp install npm:pi-knowledge\n\n# On minimal Ubuntu/Debian servers, install native build tools first because\n# OMP's Bun-based npm install compiles better-sqlite3 from source.\nsudo apt-get update && sudo apt-get install -y build-essential python3\nomp install npm:pi-knowledge\n\n# Or from source\npi install ./pi-knowledge\nomp install ./pi-knowledge\n\n# Index a directory\n# (agent will call knowledge_add automatically, or you can ask it)\n> Index my project docs at ./docs as \"Project Docs\"\n\n# Search\n> Search my knowledge base for \"authentication flow\"\n\n# The agent also auto-searches relevant knowledge before answering domain questions\n```\n\n## Tools\n\n| Tool | Description |\n|------|-------------|\n| `knowledge_plan` | Inspect an indexing source before writing a KB; reports scannable counts, suggested exclusions, and technical skips |\n| `knowledge_add` | Index files, directories, URLs, PDFs, DOCX, or inline text |\n| `knowledge_search` | Fast, semantic, lexical-anchored hybrid, deep, or adaptive search across one or all knowledge bases; supports file-type and path filters |\n| `knowledge_symbol_search` | Lightweight exact or substring lookup for code symbols, route-like handlers, Markdown headings, config keys, and env vars; fall back to `knowledge_search` for methods or uncommon syntax |\n| `knowledge_remove` | Remove a knowledge base by name or ID after `confirm: true` |\n| `knowledge_update` | Incrementally re-index changed files in a source-backed file, directory, or URL knowledge base |\n| `knowledge_show` | List all knowledge bases with stats |\n| `knowledge_status` | Show engine status with health diagnostics (stale, orphans, coverage) |\n| `knowledge_doctor` | Diagnose health score, skipped files, stuck jobs, stale data, and recommended fixes |\n| `knowledge_configure` | Persist runtime prerequisites such as a Windows `node.exe` path for the isolated local model worker |\n| `knowledge_clear` | Remove all knowledge bases after `confirm: true` |\n| `knowledge_export` | Export a KB to shareable JSONL file |\n| `knowledge_import` | Import a KB from JSONL (re-embeds content) |\n\n### Search Modes\n\n- `fast`: BM25 keyword search for exact symbols, commands, and identifiers.\n- `semantic`: vector search for conceptual matches.\n- `hybrid`: lexical-anchored BM25 + vector search with normalized weighted score fusion. It requires keyword evidence to avoid low-confidence semantic false positives.\n- `semantic_hybrid`: vector search plus optional BM25 weighted fusion without the hybrid lexical-evidence gate; use explicitly for semantic/multilingual queries where lexical overlap is weak but fused scoring is still useful.\n- `deep`: hybrid retrieval followed by cross-encoder reranking.\n- `adaptive`: hybrid retrieval followed by query-time contextual window expansion around seed chunks. It keeps the matched seed, prefers nearby/query-relevant neighboring chunks, and collapses overlapping windows from the same file.\n- `auto`: selects a primary mode from the query shape and retries alternate modes when results are empty or weak.\n- `code`, `config`, `errors`, `docs`, `decision`: intent aliases for agents. `code`, `config`, and `errors` bias toward exact lexical/symbol evidence; `docs` and `decision` keep the intended source type explicit.\n\nSearch profiles tune result count, snippet length, hybrid strictness, candidate breadth, adaptive context, and deep rerank breadth. `profile: \"auto\"` selects a runtime profile from query shape, mode, and KB source type; explicit tool parameters still win over profile defaults. Use `profile: \"low_token\"` for slow local models that need fewer, stricter, longer results in one call; use `precision` for identifiers/errors, `recall` for broad discovery, `long_context` for prose/specs, and `balanced` for compatibility.\n\nMode selection contract:\n\n- Start with `hybrid` for most project questions that contain useful lexical anchors.\n- Use `fast` for exact symbols, filenames, commands, error codes, API names, config keys, or quoted strings.\n- Use `semantic` when the query is conceptual and exact terms may differ from indexed wording; use `semantic_hybrid` when weak lexical overlap should not block vector-backed fused results.\n- Use `adaptive` when the answer needs nearby code, neighboring documentation sections, AST-related sibling methods where indexed, or enough context to make a safe edit.\n- Use `deep` for high-stakes answers, ambiguous top results, or final verification when slower reranking is acceptable.\n- If results are empty or weak but the KB should contain the answer, retry once with a different mode before concluding no answer exists.\n\nSearch results use balanced diversity reranking by default so near-duplicate chunks from the same file do not dominate the top results. Diversity scoring considers lexical overlap, same-file line proximity, overlapping adaptive windows, available embedding-vector similarity, file-level interleaving, and a small KB trust multiplier that favors ready file/directory sources over stale, URL, or imported text sources. In `adaptive` mode, code chunks with AST metadata can prefer same-parent/sibling chunks inside the same bounded file window; this is metadata-driven context expansion, not caller/callee analysis. Use `diversity: \"off\"` only when raw ranking order is needed for diagnostics. Agents can request search diagnostics to inspect mode fallback, selected profile, applied search tuning, ranking coverage, path/source/test boosts, adjusted scores, and provenance such as chunk id, chunk hash, match reason, stale flag, source freshness, and adaptive `source_chunk_ids` where available.\n\nFor best search quality, rebuild or update existing knowledge bases after upgrading. New indexes use contextual retrieval units: embeddings and FTS include file path, file type, Markdown heading breadcrumbs, and AST-derived code structure such as symbol names, scopes, parent symbols, and signatures while returned results keep the original chunk text readable. This improves queries that mention project structure, filenames, sections, classes, methods, or functions, and reduces duplicate-looking chunk hits.\nSymbol/config/heading metadata is also rebuilt during `knowledge_update`; code symbol metadata includes AST-backed methods for supported languages. Older KBs created before this feature may show a doctor action recommending update.\n\n## Embedding Configuration\n\nLocal embeddings are the default and require no API key:\n\n```bash\nPI_KNOWLEDGE_EMBEDDING=local:multilingual-e5-small\n```\n\nOpenAI or OpenAI-compatible embedding APIs can be selected with `PI_KNOWLEDGE_EMBEDDING`:\n\n```bash\nexport PI_KNOWLEDGE_EMBEDDING=openai:text-embedding-3-small\nexport OPENAI_API_KEY=...\n```\n\nFor self-hosted OpenAI-compatible servers, set either `PI_KNOWLEDGE_EMBEDDING_BASE_URL` or `OPENAI_BASE_URL` to the API root that contains `/embeddings`:\n\n```bash\nexport PI_KNOWLEDGE_EMBEDDING=openai:Qwen3-Embedding-8B\nexport PI_KNOWLEDGE_EMBEDDING_BASE_URL=http://127.0.0.1:8080/v1\n# Set PI_KNOWLEDGE_EMBEDDING_API_KEY or OPENAI_API_KEY only if your endpoint requires bearer auth.\n```\n\nAPI embedding failures are surfaced by default so configuration and context-window problems are visible. To explicitly allow query-time local fallback after API failures, set `PI_KNOWLEDGE_EMBEDDING_API_FALLBACK=local`; indexing/import/update document batches still fail instead of creating mixed-provider vector files.\n\nAPI embedding requests are capped at 20000 characters per input by default as a final context-window safety guard for OpenAI-compatible servers. Adjust this with `PI_KNOWLEDGE_EMBEDDING_MAX_CHARS` when your embedding model has a different context window; changing the cap changes embedding compatibility and requires `knowledge_update`.\n\nFor self-hosted servers with smaller request limits, set `PI_KNOWLEDGE_EMBEDDING_BATCH_SIZE` to the maximum number of chunk inputs the server accepts per embedding request.\n\nStored KB metadata includes the embedding model, vector dimension, and a non-secret embedding signature. If the current query embedding is incompatible with a KB's stored vectors, or if an older KB has no signature metadata, `knowledge_search` skips vector retrieval for that KB and reports a warning; run `knowledge_update` after changing embedding providers or upgrading older KBs.\n\n## Configuration\n\nFull configuration details are in [docs/configuration.md](docs/configuration.md).\n\n| Area | Environment variables |\n|------|-----------------------|\n| Storage path | `PI_KNOWLEDGE_DIR`, `OMP_KNOWLEDGE_DIR`, `PI_CODING_AGENT_DIR`, `OMP_CODING_AGENT_DIR`, `OMP_PROFILE` |\n| Model worker and cache | `PI_KNOWLEDGE_MODEL_CACHE_DIR`, `PI_KNOWLEDGE_NODE_PATH` |\n| Embedding provider | `PI_KNOWLEDGE_EMBEDDING`, `PI_KNOWLEDGE_EMBEDDING_API_KEY`, `OPENAI_API_KEY`, `PI_KNOWLEDGE_EMBEDDING_BASE_URL`, `OPENAI_BASE_URL`, `PI_KNOWLEDGE_EMBEDDING_PREFIXES`, `PI_KNOWLEDGE_EMBEDDING_MAX_CHARS`, `PI_KNOWLEDGE_EMBEDDING_BATCH_SIZE`, `PI_KNOWLEDGE_EMBEDDING_API_FALLBACK` |\n| Reranker provider | `PI_KNOWLEDGE_RERANKER`, `PI_KNOWLEDGE_RERANKER_REVISION`, `PI_KNOWLEDGE_RERANKER_DTYPE`, `PI_KNOWLEDGE_RERANKER_REMOTE_HOST`, `PI_KNOWLEDGE_RERANKER_REMOTE_PATH_TEMPLATE`, `PI_KNOWLEDGE_RERANKER_RAW_LOGITS`, `PI_KNOWLEDGE_RERANKER_API_ENDPOINT`, `PI_KNOWLEDGE_RERANKER_API_BASE_URL`, `PI_KNOWLEDGE_RERANKER_API_KEY`, `PI_KNOWLEDGE_RERANKER_API_FORMAT`, `PI_KNOWLEDGE_RERANKER_API_TIMEOUT_MS`, `PI_KNOWLEDGE_RERANKER_MAX_DOC_CHARS`, `PI_KNOWLEDGE_RERANKER_API_RESULTS_PATH`, `PI_KNOWLEDGE_RERANKER_API_INDEX_FIELD`, `PI_KNOWLEDGE_RERANKER_API_SCORE_FIELD`, `PI_KNOWLEDGE_RERANKER_API_SCORE_DIRECTION` |\n| Native lifecycle | `PI_KNOWLEDGE_ENABLE_NATIVE_IDLE_DISPOSE`, `PI_KNOWLEDGE_EMBEDDING_IDLE_MS` |\n| Runtime features | `PI_KNOWLEDGE_WATCH`, `PI_KNOWLEDGE_AUTO_INJECT`, `PI_KNOWLEDGE_STALE_INDEXING_MS`, `PI_KNOWLEDGE_OFFLINE`, `PI_KNOWLEDGE_SEARCH_PROFILE`, `PI_KNOWLEDGE_SEARCH_DEFAULT_LIMIT`, `PI_KNOWLEDGE_SNIPPET_MAX_LENGTH`, `PI_KNOWLEDGE_MIN_HYBRID_SCORE`, `PI_KNOWLEDGE_SEARCH_CANDIDATE_MIN`, `PI_KNOWLEDGE_SEARCH_CANDIDATE_MULTIPLIER`, `PI_KNOWLEDGE_ADAPTIVE_CONTEXT_LINES`, `PI_KNOWLEDGE_ADAPTIVE_MAX_CHARS`, `PI_KNOWLEDGE_ADAPTIVE_NEIGHBOR_TARGET`, `PI_KNOWLEDGE_DEEP_RERANK_CANDIDATES`, `PI_KNOWLEDGE_DEEP_RERANK_TOPK_MULTIPLIER` |\n| Release fixtures | `PI_KNOWLEDGE_E2E_PDF`, `PI_KNOWLEDGE_E2E_DOCX` |\n\nFor Hugging Face Text Embeddings Inference rerankers, use `PI_KNOWLEDGE_RERANKER=api:<model>`, `PI_KNOWLEDGE_RERANKER_API_FORMAT=tei`, and `PI_KNOWLEDGE_RERANKER_API_ENDPOINT=http://127.0.0.1:8080/rerank`; TEI exposes OpenAI-compatible embeddings under `/v1`, but reranking uses `/rerank`.\n\n## Pi and OMP Support\n\n`pi-knowledge` supports Pi and [OMP](https://omp.sh/) extension loading through the packaged `extension.js` entry shim. The entry stays startup-light: install-time validation can inspect the extension without resolving native runtime dependencies, and runtime modules load lazily only when tools or lifecycle hooks need them.\n\nDefault storage is `~/.pi/knowledge` for Pi and `~/.omp/knowledge` for OMP. Explicit overrides are available with `PI_KNOWLEDGE_DIR` and `OMP_KNOWLEDGE_DIR`. Under the default home OMP root, existing legacy `~/.pi/knowledge` data remains visible when `~/.omp/knowledge` has not been created yet.\n\nOMP compatibility covers path resolution, packaged entry loading, native SQLite dependency resolution, isolated model-worker startup, Windows-safe worker transport fallback, and idempotent shutdown. Local embeddings require Node 22+ for the isolated worker; set `PI_KNOWLEDGE_NODE_PATH` to `node.exe` if OMP runs from a non-Node packaged host. Compatibility-sensitive releases should validate both Pi and OMP install/runtime flows.\n\n## Large Project Indexing\n\nIndexing is designed as a stable long-running operation, not a quick background trick. `knowledge_add`, `knowledge_update`, and `knowledge_import` scan directories incrementally, embed and store chunks in hard-capped batches, stream vector files to disk, and report progress with file/chunk counts, chunks/sec, skipped file counts, elapsed time, and file ETA where available. Directory indexing starts with a metadata-only planning scan so large repositories can show total scannable files and skipped counts before expensive embedding starts.\n\nDirectory indexing separates technical skips from user-confirmable suggestions. `knowledge_plan` inspects a source without writing a KB, so agents can show scannable files, suggested exclusions, and technical skips before asking the user to confirm scope. Unsupported binary/non-text files, oversized files, unreadable files, inaccessible paths, and documents that cannot be extracted are skipped for stability. Text files that may be private or low-signal, such as `.env`, credential-named files, generated reports, lockfiles, vendor text, build output text, and runtime/cache text, are suggested exclusions by default rather than permanent blocks. Agents should explain the privacy and search-precision tradeoff, ask the user when the choice is ambiguous, and then use `include_suggested_text` or focused `include_paths` when the user confirms those text files belong in the KB. Ordinary project configuration files such as `settings.json` or `appsettings.json` remain indexable because they often describe real system behavior.\n\nIndexing progress is persisted in SQLite, not only printed as transient tool updates. `knowledge_status` shows the current or last indexing operation, phase, last progress message, last progress age, processed file/chunk counts, skipped count, and add/remove/unchanged counts. This makes long indexing runs distinguishable from stuck jobs even if the user checks status from a later prompt.\n\nUpdate and diagnostics paths are also streaming-oriented: changed chunks are embedded in batches, newly produced vectors are written to temporary vector files, deleted rows are removed in batches, and final vector rebuilds iterate SQLite rows instead of loading the whole KB. Search also avoids loading a full KB vector file or all chunk IDs into memory. Semantic and hybrid modes scan vectors from disk and retain only the top candidate vectors needed for ranking/diversity. `knowledge_status` reports stale files, orphaned chunks, coverage, skipped files, and indexing jobs that appear stuck after an interrupted or crashed Pi process. `knowledge_doctor` summarizes the same signals as a health score with concrete actions. KBs still marked `indexing` or `error` are visible in status but skipped by search, so interrupted work is not treated as a healthy searchable KB. A stuck `indexing` KB should be removed and rebuilt after confirming no active Pi process is still building it.\n\n## Architecture\n\n[DESIGN.md](DESIGN.md) is the historical technical design. For current behavior contracts, prefer this README, [AGENTS.md](AGENTS.md), [docs/configuration.md](docs/configuration.md), and the ADR/pitfall notes under `docs/`.\n\n## Data Storage\n\nAll data is stored globally at `~/.pi/knowledge/` under Pi or `~/.omp/knowledge/` under OMP unless overridden (never in your project directory):\n\n```\n~/.pi/knowledge/\n├── knowledge.db      ← SQLite (metadata + chunks + FTS5 index)\n├── vectors/          ← Embedding vectors per KB (binary)\n└── models/           ← Downloaded ONNX models (~32MB, cached)\n```\n\n- **Backup**: copy the active knowledge directory, usually `~/.pi/knowledge/` or `~/.omp/knowledge/`\n- **Reset**: delete the active knowledge directory to start fresh\n- **Override**: set `PI_KNOWLEDGE_DIR` or `OMP_KNOWLEDGE_DIR`\n- **Project safety**: pi-knowledge is read-only on indexed directories — no files are created or modified in your project\n- **Updates**: extension updates do not affect existing indexed data. Schema migrations run automatically if needed.\n- **Symbol index**: `knowledge.db` also stores lightweight symbol/config/heading metadata used by `knowledge_symbol_search`; it is derived from indexed source. Supported code files use the same AST analysis as chunking, so method symbols can be looked up even when their parent class remains one retrieval chunk. File, directory, and URL KBs with retained source paths can rebuild it with `knowledge_update`; imported portable KBs and inline text KBs should be re-imported or re-added because they intentionally do not store an active local source manifest.\n\n## Development\n\n```bash\nnpm install\nnpm test          # Unit tests\nnpm run test:e2e # Smoke integration tests; PDF/DOCX cases skip unless fixture env vars are set\nPI_KNOWLEDGE_E2E_PDF=/path/to/file.pdf PI_KNOWLEDGE_E2E_DOCX=/path/to/file.docx npm run test:e2e\nnpm run bench     # Indexing/search benchmarks\nnode --experimental-strip-types -e \"import('./index.ts')\" # Startup-light source import smoke\n```\n\nPDF/DOCX fixtures should be real local files outside the repository. Do not commit private fixture files, extracted fixture text, snapshots, or machine-specific fixture paths. A release-grade e2e pass requires both fixture env vars; a run with skipped PDF/DOCX cases is only a smoke pass.\n\n## Release\n\nBefore publishing, update `package.json`, `package-lock.json`, and `CHANGELOG.md`, then run:\n\n```bash\nnpm run check\nnpm run typecheck\nnpm test\nnpm run build\nnpm run test:e2e\nPI_KNOWLEDGE_E2E_PDF=/path/to/file.pdf PI_KNOWLEDGE_E2E_DOCX=/path/to/file.docx npm run test:e2e\nnode -e \"import('./extension.js')\"\nnode --experimental-strip-types -e \"import('./index.ts')\"\nnpm pack --dry-run\npi -e ./extension.js\nomp -e ./extension.js\ngit push origin main\ngh release create vX.Y.Z --title \"vX.Y.Z\" --notes-file /path/to/release-notes.md\nnpm publish\n```\n\nReport any skipped or unverified gate explicitly. Do not describe smoke e2e as complete release-grade coverage.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}