{"_id":"@eleboucher/pi-memini","_rev":"55-5a4e2a361ba36383f0ea12966d79148a","name":"@eleboucher/pi-memini","dist-tags":{"latest":"0.7.32"},"versions":{"0.4.23":{"name":"@eleboucher/pi-memini","version":"0.4.23","_id":"@eleboucher/pi-memini@0.4.23","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"4ea2067a8c1027d4ddf7365aa934e9d9f6f13a20","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.4.23.tgz","fileCount":4,"integrity":"sha512-ooHh9uUPmoi5j/VvbcBjymaU1Eli3ENJF30wS53ced2agPKnUQXVq5JLq4cDhXrlCX6Qn6MUt4mfLB7+vtYcdQ==","signatures":[{"sig":"MEUCIQC/Rq902VU7t25hHIZK1pVDurkpwPde1J119YNnO3jB8gIgZjbGMUUcNgZeC1t/tCPVRFqvTJlK07/jORx0UQkUaQM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31421},"type":"module","gitHead":"8ecb2c27ead1020bb93b150e6fa13263a692035a","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.4.23_1782662943747_0.40908566161118176","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@eleboucher/pi-memini","version":"0.5.0","_id":"@eleboucher/pi-memini@0.5.0","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"c2fe8ad15ab274fb139cd4c90dcb6c0cc6f43876","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.0.tgz","fileCount":4,"integrity":"sha512-Q5O7VQVgLOewb6mdtVcKEYzvPGKxYeKVoSfpKKEvs4+CMy618X5c3/mt2/TzgShPkGeH4u0lkPieJfGLXbO12A==","signatures":[{"sig":"MEUCIAhTd/X1t7rMZjdBeGoaKK6oTVrW9vkbzVnRYQzR7qSyAiEA+TCOeLeIzbEVDMtWS7mHlACYoarRKU7uusR7ofW7exw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31420},"type":"module","gitHead":"b779b00562f4e3f559bfa8124ff3cf735a13c144","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.0_1782748458425_0.5681959913451071","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@eleboucher/pi-memini","version":"0.5.1","_id":"@eleboucher/pi-memini@0.5.1","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"fab5abae928ab8aef7ccb9f7d5b8b082144595c3","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.1.tgz","fileCount":4,"integrity":"sha512-iHSFIXWY6pWI2KpKQyOS/N1+ZjDhtYJj34920919TRQner3G3os/mxR7LIJOb7SNoZDDG0FZW1JQb+2Kz3Ab8g==","signatures":[{"sig":"MEUCIQCHhT1c4IIcxzv/FAQYu5s8GMs4HibinBHIY6iz1LvqHAIgIrtlmKmm2nCf05hew5DFlUjKI6BYFyVOtV0SugfgxFQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31420},"type":"module","gitHead":"f7cc93a654351d437c0bc3114d2178027358eff4","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.1_1782822497757_0.10032237838134161","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@eleboucher/pi-memini","version":"0.5.2","_id":"@eleboucher/pi-memini@0.5.2","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"afd4a6480c11653a16d74e8f580ed96716c4903e","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.2.tgz","fileCount":4,"integrity":"sha512-ENax+Xt10p3WLKwjzeXL6azQc/xLdpnWjHetkIg3K/pGKJQpmH5WUici4HNqo4yJaiAUmnesWps7oQ2VmJailg==","signatures":[{"sig":"MEUCIHGnFj41YuKnvM952ikcPXu1K0u999zb8Kp3Q2EbY2UTAiEApFEmx2kA8SwB++D/A/b4eQDOvAOoAY1bvFTwGS/n3hk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31420},"type":"module","gitHead":"0075c97edb8ba284951312f61ab4645ebf5cfeec","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.2_1782855420140_0.09347396337939662","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@eleboucher/pi-memini","version":"0.5.3","_id":"@eleboucher/pi-memini@0.5.3","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"3c2444ac55f2ffa5d19ce11ebecab9a14ee2d7cf","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.3.tgz","fileCount":4,"integrity":"sha512-Aqxchi+wzp+ht/M/RJ2ayc1WfRNPn9CAzA7nh2VOMQiCMK241YQPQzPzCHwV+SgUZUr/tOcXZfYwDznLdCo1aA==","signatures":[{"sig":"MEQCIAZLq1TvESoae1jaQ3vpQUZj9u0ngnV57sQkErAfS3mdAiBtE60SSIMrLOcnHb7ND4v4TA31r8fPp8X/KHhcgPVq2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31420},"type":"module","gitHead":"304d563f331397328b1b8cc3ec58bbeda21590c8","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.3_1782986559588_0.07550787324204622","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"@eleboucher/pi-memini","version":"0.5.4","_id":"@eleboucher/pi-memini@0.5.4","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"f99be8721e3dfd3a0739657377e3c7bcba4b1d44","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.4.tgz","fileCount":4,"integrity":"sha512-KCcsNeYoxNqYtNSEHDSWsNgiy4bunnCj/sMdJRO518w8YOOzLO0/6Rmw3D6qUYyiH8Tfm8kZ5T/tHycH0tx8pw==","signatures":[{"sig":"MEYCIQDMGaLdQPB4zA43oXGrmkxrd/RtPPHd8MC/WTP6+kjxLgIhAKU0tEUPC0fwvtYKOMFDXMQSIO1CXjU51CgV6XYnWKjC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31613},"type":"module","gitHead":"2feb3f387f835691722c743f010d892c05d5ff7b","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.4_1783079946501_0.7236905211876195","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"@eleboucher/pi-memini","version":"0.5.5","_id":"@eleboucher/pi-memini@0.5.5","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"0add0e4145ecce46ca9b0c8b779d2fa73eccb247","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.5.tgz","fileCount":4,"integrity":"sha512-WWo/KGnBgI6PEPtFgmmL9VTmR2lgBQIT7/W8kiAKwUPj8mqKqeirz2LGwecWyb2J62CUEWGoaISP/BBXYctKfw==","signatures":[{"sig":"MEUCIQC5WBpw1IC/Q/+KwKq7jcJ/e8G1PGdM9j2ASGPWkzwufwIgcc+TvDMZN+HbU/eUPOe9O/ernr2f1MCo7Wq1hJHAY2s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31613},"type":"module","gitHead":"ec2fc5f5cbc50f80c5fe61470ad697c76d1fe1dd","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.5_1783175427650_0.2934710667863978","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"@eleboucher/pi-memini","version":"0.5.6","_id":"@eleboucher/pi-memini@0.5.6","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"058e85c83c7a288d24ad5da95661e6b30148f15a","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.6.tgz","fileCount":4,"integrity":"sha512-tzYfeH9nsz4FHkqZuf5zK7k23ed/gWOG+7jkJ4uBdlyqTdiuV+6FqRD7EDdRrfbDh1YPUTFM0nrFfSdfvXVrQA==","signatures":[{"sig":"MEYCIQDdz4TqXk9fuGmP3b3q2xp+OExeO4gUqVrNmiv94GXFxAIhAMWV2Hvjucg3W2KvOmnq9ZOwvMUuZ010qBSmPTL+5ViD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31613},"type":"module","gitHead":"9de2a099ad45b03565a43899b1d4079e3ecc385b","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.6_1783177871009_0.9971056188760521","host":"s3://npm-registry-packages-npm-production"}},"0.5.7":{"name":"@eleboucher/pi-memini","version":"0.5.7","_id":"@eleboucher/pi-memini@0.5.7","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"0b37d2e0fed4ded2101409efb07a439a76287734","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.7.tgz","fileCount":4,"integrity":"sha512-FpKGTKCw5Tf6YC5RoXddQ7WUv9QSzSSxLpVKCMC3rKET2nWOu+vbxUdSXJoRjajwg0uOcyAxN4n1oj+d4rGHeg==","signatures":[{"sig":"MEUCIQCcvkFaplDeFnkXY786/5CpiDwlMiu7HRMmdscGcBogRQIgG/T2HSZPqdtHS6QebIXqAfellcEiFHCNKGinKM5kzGo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31613},"type":"module","gitHead":"3b39b826691f0b19723791501cef09c833a83ff2","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.7_1783196796700_0.37111098787037355","host":"s3://npm-registry-packages-npm-production"}},"0.5.8":{"name":"@eleboucher/pi-memini","version":"0.5.8","_id":"@eleboucher/pi-memini@0.5.8","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"b5a6ad79410ec166c7c47fbfdf200be27a0b5c9c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.8.tgz","fileCount":4,"integrity":"sha512-BhAmqznYtdf1kGGjVD437t5Q/iUVekSWm3asP/ZcPyRWcaPfjV13IKMHh/qLCuquATve/2xfq/qr+oVtbxjMXA==","signatures":[{"sig":"MEQCIGxTfxG5MCdrA4VchCEXHjERZ1YBM4d1FfZ41ILUZN5EAiAZrRxHch1Jqr3+x1RH/Wv0DDnaWAELHz3l+ARx6/sOew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33025},"type":"module","gitHead":"47bbb56e597f82e9fc1431aa9b901867623af171","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.8_1783287668057_0.7193953476292414","host":"s3://npm-registry-packages-npm-production"}},"0.5.9":{"name":"@eleboucher/pi-memini","version":"0.5.9","_id":"@eleboucher/pi-memini@0.5.9","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"7f9a415daf5c1c34203708ad8c3dd4440071639c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.9.tgz","fileCount":4,"integrity":"sha512-ZvmWQpSRFlmbgarUth7p9bIs6bsHs7Jxat0xjmloRrZfQUmk6RVHwqIRTrUpzXCLmEhJaUrlmoJL0M9W2Q9PIw==","signatures":[{"sig":"MEYCIQDkpiKPpjPkrJG6KG/WlgalVBbK2WYS38bD6F4RSLSwvwIhAIrE7Vak/l7LYzy5dPF7pTrxmEIb7LGY0j9LBM8wD4ds","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33295},"type":"module","gitHead":"d684ede870759795a76e920cca73e16c1637a086","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.9_1783357192234_0.09173781824125915","host":"s3://npm-registry-packages-npm-production"}},"0.5.10":{"name":"@eleboucher/pi-memini","version":"0.5.10","_id":"@eleboucher/pi-memini@0.5.10","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"bf86277cf19c2ce99da1cc5f14b753fc7c8706c9","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.10.tgz","fileCount":4,"integrity":"sha512-9gyEq0gYvmIkn1tm079udcd7jA2BsmOrntvUlxexhUDFKVefhfc4iP3/wmADR2/ovjZIWjA4b3iBm4NyLxnW3Q==","signatures":[{"sig":"MEUCIQCpn8pMOc6Jbb3GhElnFvHXTxc9HVQ5y/CJGPjGuyWESgIgYog6QP0xfOQ4WrkPTnwPQRXp9aMxEH98bzxxbR2JCXY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33296},"type":"module","gitHead":"14ba7ec850dd4fc24f41ffc9cf2810e0b537850a","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.10_1783431061102_0.19809932745378545","host":"s3://npm-registry-packages-npm-production"}},"0.5.11":{"name":"@eleboucher/pi-memini","version":"0.5.11","_id":"@eleboucher/pi-memini@0.5.11","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"ffc956ea5a00208a0c51ad1e4876026ce5d568a2","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.11.tgz","fileCount":4,"integrity":"sha512-We/nbuw/Yxk2wproCHS4SN324YXFQ6U9ewwaj+un6I7bhLB8QVNnbNIYtFOOV9RWONc61eJoR0Nprtex/BO/iw==","signatures":[{"sig":"MEUCIF5JfKeA9LlkLyqNBiOJ0+zsxKiX5JXMCIDAyGooT6qOAiEAzMNes83ILMOLZ248TtUf2KbW2K+VCx5DUddVejQlWdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33296},"type":"module","gitHead":"59ab9fcfdbb896292fbb615afb86c65df2278f4f","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.11_1783458737865_0.7808410971017181","host":"s3://npm-registry-packages-npm-production"}},"0.5.12":{"name":"@eleboucher/pi-memini","version":"0.5.12","_id":"@eleboucher/pi-memini@0.5.12","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"7b50516cd90c1e79dede52e2af1482c6e467164c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.5.12.tgz","fileCount":4,"integrity":"sha512-tP9+fbuSXZV1ZSl47EFfUXtcUcXnrRMYjEWdwbALQRRtOzrRH9MnU744Gt88Mwb6Fixx1gLThPgtbPo2b5yx3A==","signatures":[{"sig":"MEUCIEeE5KHpLoGdOj3bCcOMcgTAJnHtqV6fY1ZSTSbyEjhCAiEAubP427VuEV/8Y8VJQ16Rvp4CuotwL6zv/Q7b6ZqwZlY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34740},"type":"module","gitHead":"39ff7b7af59f69e39588f556bf504d9317216da5","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.5.12_1783540879602_0.608313594770441","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@eleboucher/pi-memini","version":"0.6.0","_id":"@eleboucher/pi-memini@0.6.0","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"2e17e8157e099f0771a47e6dc3f476724db38a68","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.0.tgz","fileCount":4,"integrity":"sha512-L0NWq1pOkqQ9PyPREQSTyBHk7u8SadwOVxP5jGW1kPoqJr9cg7c/BOpOOk75UZ6PdkgnPQsxKh9sK4SKg9izNQ==","signatures":[{"sig":"MEQCIDHFfEbJbUIyHiWFuuuE07jfvAAFg7wjuiYd7FqT5+K6AiB5d+1/TPJH+F3SY8hN8EgnLqVboawHyVyZaLvnjm17oA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36238},"type":"module","gitHead":"61dfe679afe59da01a41f537e6929defce2a495a","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","@memini/namespace-resolver":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.0_1783668106038_0.8196087706003492","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@eleboucher/pi-memini","version":"0.6.1","_id":"@eleboucher/pi-memini@0.6.1","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"4643d1fbab7eaa279b3ebfcaafed1b7292bd9db7","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.1.tgz","fileCount":4,"integrity":"sha512-xZ7Lx6BdNOxtjWLAuAE5tCuMpWi5Gcilq81J9xb5rQt9sNwq6Am+nZr4tWUZB4puLBXeQlQ0lnuoCeh5NjXhsg==","signatures":[{"sig":"MEUCIQD1WAcSFSVp//OGjrVXFe1qfTZ8CXfdJrsJDXHWdSWzfgIgPyIunn/5LvTR02h39jpaJfmRrg3UHe4zsftfkRgNTP4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36238},"type":"module","gitHead":"bc8c68d62ee4077eb158519a7addf9c108619aff","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","@memini/namespace-resolver":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.1_1783671130703_0.8106402969601467","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@eleboucher/pi-memini","version":"0.6.2","_id":"@eleboucher/pi-memini@0.6.2","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"ad6da454b300dcf7845b79ad081fa82b9eb2ad90","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.2.tgz","fileCount":4,"integrity":"sha512-QNbjf8AKT0stpi3R5Vr2vnUhf0SIgDD8mn33HuM0XyF2D7LTCb0QrCTsPzNFPkNZQY2eVpOx8bw35GZTpYgIxg==","signatures":[{"sig":"MEUCICS9lEONmha7hGkGLw32reLEaJF44WTCY0pIvohudrN/AiEAz1Z3kdD3BDPIJmT7SonXfW8APDcWE8TZ3EsOOMoM84M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36238},"type":"module","gitHead":"6ccb69103e82645bf3592ff7e0517d76d15c6c5f","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","@memini/namespace-resolver":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.2_1783674520694_0.9003250644868739","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"@eleboucher/pi-memini","version":"0.6.3","_id":"@eleboucher/pi-memini@0.6.3","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"b76007c3cd6f68490b4657e4e4be8a550d273f55","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.3.tgz","fileCount":4,"integrity":"sha512-LIKEYZPQLV/MlfeoN8B42MOMGArlcVkNWruZ9yV6bpbJFjhi/Mig1DJUt/t+dRUdQG0loa7MKwpcIzRe5lLxBw==","signatures":[{"sig":"MEUCIQDoNqvhQokToeVWL98aKLMHBep/cP8KoTUQaiA+ie4regIgfz7DFZecK8IwHczKmfWL2ASSHokAvrxTd7uGIU6N9No=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36238},"type":"module","gitHead":"b78f44f4ee8a9eaf704b76a94f83e5eac1a32e9c","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","@memini/namespace-resolver":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.3_1783685227612_0.44727908739379085","host":"s3://npm-registry-packages-npm-production"}},"0.6.4":{"name":"@eleboucher/pi-memini","version":"0.6.4","_id":"@eleboucher/pi-memini@0.6.4","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"c90a6cba58425f0dcea27d6f15aad3806a724474","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.4.tgz","fileCount":4,"integrity":"sha512-WR+NBjy573L4H4KnSRo4Ej0em4amlq4b9Tzot1EGqCa7jaNbKZC8Ou4+W9yhZxZia1RxMuHB38Tj4s8HuxYd1Q==","signatures":[{"sig":"MEUCIHuvYZjtq5pSYDhKml64URl55wIwzNW/Sg0BjBeU8r/lAiEA+IdZ7ksEACqHxRU6cuXEY9O+kdhul6rKbcMh0kQqVm4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36238},"type":"module","gitHead":"48a2e947f93356342c656a187550fd22265b7fbe","scripts":{"test":"npx tsx --test test/helpers.test.ts","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38","@memini/namespace-resolver":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.4_1783699964088_0.9931975389997132","host":"s3://npm-registry-packages-npm-production"}},"0.6.5":{"name":"@eleboucher/pi-memini","version":"0.6.5","_id":"@eleboucher/pi-memini@0.6.5","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"4d79d15bad031d46b8b7d7802f701e7412149351","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.5.tgz","fileCount":3,"integrity":"sha512-rNQG0I6d9sr+DqtofeXoCZ8Nh78CZOo0xd07m87Q/YcnKDjvZNMJ3dRvVy6umDalG8A88NdSk3V81C3Vwa24yQ==","signatures":[{"sig":"MEUCIFfBeL/zV+OSS9+t0459Ty0FYfV+QA2gOMs8Xn5c0TVCAiEA0F9mECEFj36FCwjBe0ppwzD7lXuPMRTANOJA8jQtgw4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30535},"type":"module","gitHead":"2823194c7899e59c51d09ca4ee75c6de64a393ea","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.5_1783718974724_0.5664947467353143","host":"s3://npm-registry-packages-npm-production"}},"0.6.6":{"name":"@eleboucher/pi-memini","version":"0.6.6","_id":"@eleboucher/pi-memini@0.6.6","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"a1b93b6c2da8e61e0bbc82719cb2f173f60d6faf","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.6.tgz","fileCount":3,"integrity":"sha512-Lzk1YhBlF8+xuFjpKc22XzZWENn5jky+ZxnQKqKBgvsUHwLMuYSbqHot2r72CZP2lJjIPSanZOYB5S87J+ppmg==","signatures":[{"sig":"MEQCID3ldvepr8DfWG47LQDQ8XZQtAxfp/AaTAtXpPUSzv9BAiB1rh0pxIBU6bhigjr4RkVY0wjvVUPd+/j+xOPwjJmw3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31068},"type":"module","gitHead":"4d006974f12122e60ceae3d25ac8921534983a18","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.6_1783790490893_0.03393698762353248","host":"s3://npm-registry-packages-npm-production"}},"0.6.7":{"name":"@eleboucher/pi-memini","version":"0.6.7","_id":"@eleboucher/pi-memini@0.6.7","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"f8f6e6acaad06937cdeb9fcdd500e42dc3b548ca","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.7.tgz","fileCount":3,"integrity":"sha512-BfUwnVwRfNUUk6BWYioQlcWZFgETfTwyUUO9x3sx8tx16rruDfxEGK+tysDezE83u8u4bQwI1I4rQ7BEs/TaAA==","signatures":[{"sig":"MEQCIH79BFSCPqom6aQ8lGg7vGvHsMqXFwa/J0dJ7i0+bkSAAiBugU9jzbJ21HlXtFAvuNmfp4h1DH6pNJoW27nZneKnDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31068},"type":"module","gitHead":"256f9437163a2aaa0008696f9a11bbbe33c95813","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.7_1783804018840_0.8160148064933208","host":"s3://npm-registry-packages-npm-production"}},"0.6.8":{"name":"@eleboucher/pi-memini","version":"0.6.8","_id":"@eleboucher/pi-memini@0.6.8","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"075853df7dbd32ffab2465b13b3c86fbea469818","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.8.tgz","fileCount":3,"integrity":"sha512-rV568ZCkyGLio1I6AO73wGOmLHjDYARZ5LIhGgqEf5hwjCvrp9dxPOWp0JsIYr1zlncw8DA4rhDOFwLsC+3lJg==","signatures":[{"sig":"MEUCIDnELGzt25plbtXgwhhMrhMSBJ4O4sUdrNsJt/IEIIYMAiEA2Oz/f3bxIb0wWRzpz3ItVV72dfV3tqUH1VL8+5PslCU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31068},"type":"module","gitHead":"81a27898bfb628b54d1e08318572b594072a404c","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.8_1783858928624_0.25698972185953917","host":"s3://npm-registry-packages-npm-production"}},"0.6.9":{"name":"@eleboucher/pi-memini","version":"0.6.9","_id":"@eleboucher/pi-memini@0.6.9","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"705f1df0dcd26f71fa5480ff9547ef2441881407","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.9.tgz","fileCount":3,"integrity":"sha512-nq5WbkLRaR6+BLNMkORVvWUnGi2iln59SR1iGOdcbA4eGKxFvfN0ITB5KcHYq5aQiz2pzPxdoZqVEU2i65T08Q==","signatures":[{"sig":"MEUCIQCbOYtVE9kodj0xIPcXiwz1Rv2kgcKv2O9D2TAecQTT7QIgNqRQUopni7sMCDD4xRil2TrsMVMAmYRhkzI01FAIPkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58773},"type":"module","gitHead":"512fcb0ccb34f6a4b3f7f52a7e78892d440d353f","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.9_1783927838183_0.05485766208531384","host":"s3://npm-registry-packages-npm-production"}},"0.6.10":{"name":"@eleboucher/pi-memini","version":"0.6.10","_id":"@eleboucher/pi-memini@0.6.10","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"c79d5ba6b6a64bec5e57c24e36f23c068d0934f2","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.10.tgz","fileCount":3,"integrity":"sha512-yv2oPJCnUnqn7wfL4WgBjnvuGg+nhFmAVtBUAxGUuMsREjK+uVRy6sdHb3lrD615US0q8QvGIqZ6SfN8UPZ7rA==","signatures":[{"sig":"MEUCIQDIKVQXLQ7PY9xCdxc3gAZvbsrj44435um8nGwPbJIMswIgJ2DRXWXSPkqNl4kPXAXGqs0f1sQ/SVY925T1jsvqIAs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58774},"type":"module","gitHead":"8686dc6c298440137ca2d9fd1ea20e89536fdba3","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.10_1783966347560_0.37823927395784973","host":"s3://npm-registry-packages-npm-production"}},"0.6.11":{"name":"@eleboucher/pi-memini","version":"0.6.11","_id":"@eleboucher/pi-memini@0.6.11","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"c544ddf4e04a7dfd4edc658a16dc09e545f57b97","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.11.tgz","fileCount":3,"integrity":"sha512-i9ML5g+XFdy8q2OsAjqQYkpzor/7jU9UPeK/QyYfLdMorJU/jh9ovDu6hz+k5KDYffe9iKYMsCgCJZN67bMlrA==","signatures":[{"sig":"MEUCIQCvy4NoY2PDtNoi5Lx1piE3bgQ41O1soZkDdr82tA5MnQIgFZlDZDoj6MJVvdXSsTsYs2zSMXEgqMcZ8xsWmVEkaxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60207},"type":"module","gitHead":"aab022c300f51ed4b15eee047d9debeb28416ac8","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.11_1783971066463_0.8024648271972981","host":"s3://npm-registry-packages-npm-production"}},"0.6.12":{"name":"@eleboucher/pi-memini","version":"0.6.12","_id":"@eleboucher/pi-memini@0.6.12","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"9fa17c41fe56f4f581aa5712ec90f2582c6a27a9","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.6.12.tgz","fileCount":3,"integrity":"sha512-OVS/2TCXZrH02R8Jj7iZt/saM/0mz2MM8oI29mVI23vaXZ/emCck6GRwn+ijNohgTknaPfmWzIdKBY4ePOuWeA==","signatures":[{"sig":"MEQCICCbL//UD+4Wn4aHV33tEG8/NJe9anvOEzSNHHGta++0AiB+xdDPVNaLEKkf3jxKXc8skHcIYD7YACjFvRT3Tnx95Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60207},"type":"module","gitHead":"94a97bf483dcf032f9a8c8f15dfe3367666086de","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/namespace-resolver=../../../packages/namespace-resolver/src/index.ts --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.6.12_1783972497543_0.9281702827188796","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@eleboucher/pi-memini","version":"0.7.1","_id":"@eleboucher/pi-memini@0.7.1","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"5020bb193c8cd56131a000464c2e28e15c2ff178","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.1.tgz","fileCount":3,"integrity":"sha512-fPCcJlmVQxOGV6WkVp6NYF3D6KvJ2wA/A9et8Ki2SR4lfzkB6XA7Pe9gXvkzzo9N0ZfNIFV8xRCUvAcVq5ZR7g==","signatures":[{"sig":"MEUCIQDtiOseVANL6UYJn2inGHaz0lVnXpz3jiV1ru/zg5XkuAIgHjoLzMiOyAT7F403r/LHmHv0GEwdXPviKQDc0aUzxOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59236},"type":"module","gitHead":"fd9652cf43c1d3655f8226df1ca2acd6bd64e1ec","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.1_1784037517687_0.5958515695857873","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@eleboucher/pi-memini","version":"0.7.2","_id":"@eleboucher/pi-memini@0.7.2","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"985bb7f91c0cbdbac31119611f47c3a34c1f4e1a","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.2.tgz","fileCount":3,"integrity":"sha512-AMWQLr/k9rSGxgB9TPwpc7bjCPKiLwyaeigS8vwWQNeq4QH8dQsGKwB8WO6kczCkozVQmoOpP9zjrEezIoEivw==","signatures":[{"sig":"MEUCIFwVmeuykOPAIYzoFt8OL//NEvUPNooCS6Z4a9pIS32tAiEA/ghR7QgnbR22dyVzdF4cde8awgnNKKAd6LXc68YmYM8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60181},"type":"module","gitHead":"81bfc8cabd41ee1e1c6f2e0bca0cd9a3df0fc1f3","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.2_1784061058639_0.3246227394540475","host":"s3://npm-registry-packages-npm-production"}},"0.7.3":{"name":"@eleboucher/pi-memini","version":"0.7.3","_id":"@eleboucher/pi-memini@0.7.3","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"ca420d8bd8e3ad5631e0d684957532bb25320655","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.3.tgz","fileCount":3,"integrity":"sha512-ssFBRNYQmNQrYIuyUFFMTK4w9lC3jGVMEnoakJube1YiaAyFlEEZ0UKhb8qtoIb4Q7G1xN6IU+Y/3XFY5OMh1A==","signatures":[{"sig":"MEUCIGul8Zx7POdc7YHIJNtGalD3XAgLHcFuGSYwVSYBsxh/AiEA3n+HP4gBRW+yhgR3ni7du7xfBBVArTP8OrKAYKEWzoE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62232},"type":"module","gitHead":"47bc3669c712203942140ef554873af7425b0661","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.3_1784210561259_0.5109098401421057","host":"s3://npm-registry-packages-npm-production"}},"0.7.4":{"name":"@eleboucher/pi-memini","version":"0.7.4","_id":"@eleboucher/pi-memini@0.7.4","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"12dbd4ac59bbca5ca07fc93f8334da3190adfa8c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.4.tgz","fileCount":3,"integrity":"sha512-3dnzQPq34Gb9f9IX0IeE/1+cDrhsfdM37XUrRXhSSc1ncBnjk9jQQq/MgYYX4U0GWs+oR5oWqpubzLbUUp6FBw==","signatures":[{"sig":"MEUCIQCHhhScTOEdT4uHNVy0MSvG4ctHJf7BaD0alyPubEESaQIgcD4PYcV/yqiD0ajVZWbH07jnRoDyaPjwLzGJJT/j0FU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62245},"type":"module","gitHead":"20beb8ae56f287fda9e9060e0a720e5828fa9cb6","scripts":{"test":"node --test test/bundle.test.mjs && npx tsx --test test/helpers.test.ts","build":"esbuild src/index.ts --bundle --platform=node --format=esm --target=node20 --external:typebox --external:@earendil-works/pi-coding-agent --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","typecheck":"tsc -p tsconfig.test.json"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"typebox":"^1.1.38"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-coding-agent":"latest"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.4_1784322737958_0.055313959418020975","host":"s3://npm-registry-packages-npm-production"}},"0.7.5":{"name":"@eleboucher/pi-memini","version":"0.7.5","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.5","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"8c0b60d2f4a74d8a0cdae25ade42366a8d7d5b0e","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.5.tgz","fileCount":3,"integrity":"sha512-v7IC/fyxuIbhY/fI2piLYGSfhF1sUDsra6DE8XlcDk+1VDsIV/ZEK/PF2eXyilE4HBf2z1b0TT8IyFLTQdorFA==","signatures":[{"sig":"MEUCIGTrPZO8eciqqOopDfK1hsX1pkJ3DDm960HKW4mAAgIQAiEA+59Xg/0Q3HhF6G6B+h/uxSBjEhyMweD6KhSQu22Nv5M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108262},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"7f829a65e6795606f4806020c8e5b58e86f55d90","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.4","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.6","@earendil-works/pi-coding-agent":"0.80.6"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.5_1784387636861_0.22152543157168747","host":"s3://npm-registry-packages-npm-production"}},"0.7.7":{"name":"@eleboucher/pi-memini","version":"0.7.7","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.7","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"b988aa24da2c152ddead960c3940b4d3469b0f95","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.7.tgz","fileCount":3,"integrity":"sha512-78iF5R2Av0abZBbeaMr94TeFB2HCXB6sY6ugOa1DJif4NskimVMPeymDUzjDpUn8S89NNf9NQd5j7WnsMRAsgQ==","signatures":[{"sig":"MEUCIQDfU9uMl8Kbp6PeDPO63/sL87qDjSUEJSpJ9yn3DG+kBAIgU3DfPanhJ8hFwphblHYj3xjQBCDM6vIBI7HuCb2Krpk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":108617},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"be62c54b511b8a23b3524d1c431ba52956c36e03","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.4","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.6","@earendil-works/pi-coding-agent":"0.80.6"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.7_1784477674762_0.5024588679457118","host":"s3://npm-registry-packages-npm-production"}},"0.7.8":{"name":"@eleboucher/pi-memini","version":"0.7.8","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.8","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"ef1ddad6325dee54da401af76e747261c78275e4","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.8.tgz","fileCount":3,"integrity":"sha512-wZq9l9AqS7DJbwPrEeAUdq2+GIGj8RTN+pTG4oD0HG3TvZ8x2rb9LK53QXSWHvWhnPX4YjIhiOV+4EDxYUrL1g==","signatures":[{"sig":"MEUCIBtZMg5rgPT3FCXLpgAsy7N64U4dcqNxu1kciRhPH+bIAiEAiu0XM2kZVZGoDbk0TjAHjhADTixBoMaFgkKaP910chU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111449},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"b74dd2af2ce2126ebc7afa8e931c98f01fe25981","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.4","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.6","@earendil-works/pi-coding-agent":"0.80.6"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.8_1784481498266_0.39656092434387324","host":"s3://npm-registry-packages-npm-production"}},"0.7.9":{"name":"@eleboucher/pi-memini","version":"0.7.9","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.9","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"9da5253fb3934f4393ab461db1ef58fccf1d5088","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.9.tgz","fileCount":3,"integrity":"sha512-phdjJNrqA/rT0IJSSTyaBFh51Za7D79rsEX64JkUPnP92yBw9nCTFshXr9sTiNSmGDz5wBArPPkSvfA8V1l67A==","signatures":[{"sig":"MEUCIQDOzY84zNoArHWq3eO1Jg4zsNvOyRtFxkvlUHQRH9hRegIgSLzmhCzjgWTPNr80Z1w8X0P0It8IHgiOrt+YJcO3FrA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111451},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"8706142773da5c71ceaa9d5fc7f246baaed4a004","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.9_1784529837578_0.24340228691780674","host":"s3://npm-registry-packages-npm-production"}},"0.7.10":{"name":"@eleboucher/pi-memini","version":"0.7.10","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.10","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"f98a155120adf1d60a448389b9423508685642c7","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.10.tgz","fileCount":3,"integrity":"sha512-GiGMFYKsGliR3FA+u77zMiEpnvEvTcDPyXOdYtm9tje3yFgyJeBS2aqHE00hzmaA/pKMaCQ4HTSIPOA8wP9M/g==","signatures":[{"sig":"MEUCIC2OSqumE3sohZP6mE0Q6/8fC89INTjidBWRC7nlAo/9AiEA/ch8nimCyhVrgCwwl/3qhOUGjgRFQGhIuxUZvG2e4dQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111452},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"c3366eb42456561813f9b738f12049aab45c2831","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.10_1784534344057_0.33141710379235567","host":"s3://npm-registry-packages-npm-production"}},"0.7.11":{"name":"@eleboucher/pi-memini","version":"0.7.11","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.11","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"0ff1b73d00c06128c15cbf4bf282f86e96dcaaaf","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.11.tgz","fileCount":3,"integrity":"sha512-Sj3koK1uZhmM2VVJBAnKMeGL2tPV5goTjEYgnA0VdjQoItC0aH+B4lcHEtNAaLWKSc4rK5QwcFX2Id9/J7AN1Q==","signatures":[{"sig":"MEQCIDdnx/L+CuuywFI7kBPcx8KDAFoAcyYApaHLDB6w8XNcAiAYReKtxKRGOp/Uex6idarvU6b18bPN1ZkhX+wbs5O9XQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111452},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"7edefda2188973fab69232bd1967b8a3f8c4a2ed","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.11_1784725417744_0.08926188495484144","host":"s3://npm-registry-packages-npm-production"}},"0.7.12":{"name":"@eleboucher/pi-memini","version":"0.7.12","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.12","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"340622495775551d7398e20e5fb307807deb5c9e","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.12.tgz","fileCount":3,"integrity":"sha512-MYZkKfJ9K8jqGkoc0qHWSzqky7MA7z2pjpN7dmv3VWLzRUxhhzm5XwvoLTxGUFTNOfX9qKIJj1fdY3CeU9RBUA==","signatures":[{"sig":"MEUCIC1XdwKB9Vpx4aYBCga5FLD+4B4GYZg0tO9nedelhBarAiEAqGIDVyTWG7U1rJq3JS1aIfl5VdJJM1CSWbH5wjmHMZ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111452},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"28dc42ef650731eb5dcc00f3fc587ea853fcc890","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.12_1784746945195_0.07293054735189908","host":"s3://npm-registry-packages-npm-production"}},"0.7.13":{"name":"@eleboucher/pi-memini","version":"0.7.13","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.13","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"6646ed2c4b1a6eabf08db330c58647d028cd548c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.13.tgz","fileCount":3,"integrity":"sha512-0tCnHg+SH1pNbxE6UXBOObwqWhjgesTWJwZbOoSr/X62aghNyoIUVIBLoYihir3ZuIUQPWeQKEs+f/Va3XMgGw==","signatures":[{"sig":"MEUCIHkEchLTC0ygiAZjJK8a7OJZ+SNs9l9SA4E4nzMXT89GAiEAle6SHuIt193b4wuddjQwDKeKKrGW8xtJh4HSAzPnqFE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111452},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"a0b83af90c1057340fcd692fe35ea9d23a938ee6","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.13_1784929186498_0.597696287717536","host":"s3://npm-registry-packages-npm-production"}},"0.7.14":{"name":"@eleboucher/pi-memini","version":"0.7.14","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.14","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"25df530dafa3ae9c06cffc1e908eb99db15a814c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.14.tgz","fileCount":3,"integrity":"sha512-zSy0ILoqA/vTpm8DEEsgBerIh+CD6SlW54sgE9pB0zNZAzN3qQDthYdIaU516Iw4tqPyIci6sVJw9NtUzrg5JA==","signatures":[{"sig":"MEUCIFIlzRHVF4EG8qtIK5zD7yJ3/yo8lRHkTmLOeRtkBdXzAiEAj6hajpddIUUSbsxmYWxEzVtWlYHHkvs8+JyMvA034rU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111452},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"dd4f60f897bf709f71d6b2011b54fedaac25f14d","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.6","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.80.10","@earendil-works/pi-coding-agent":"0.80.10"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.14_1784931160808_0.4454742569102468","host":"s3://npm-registry-packages-npm-production"}},"0.7.15":{"name":"@eleboucher/pi-memini","version":"0.7.15","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.15","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"59b139097d7550edd42cfd097fcc11aceb165a8c","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.15.tgz","fileCount":3,"integrity":"sha512-fFnH0PwBntS3vk6VsFQq7Jod7ZXh8A383KAktxcFA4Y+Y0YygSG+yIGkNUtDTCDDp3hNljiiTyITutYhiCdrbA==","signatures":[{"sig":"MEQCICFE0iyAIc1EqjZZlaxKeIzzg+2ys+VqOg30iOjot7SRAiA0mU+vtdqDEXWLD1hcPaG0ty9ZDObMjLAbJkebs4e3tA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111450},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"55ed6b05a702388d6f968fe1ae80a9101f9a8ae1","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.8","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.82.1","@earendil-works/pi-coding-agent":"0.82.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.15_1785253959040_0.6977361519300374","host":"s3://npm-registry-packages-npm-production"}},"0.7.16":{"name":"@eleboucher/pi-memini","version":"0.7.16","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.16","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"0f1d7b3d0f5156ad0de24fab7926ee5e3205418d","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.16.tgz","fileCount":3,"integrity":"sha512-4WZn+gdBYQ//Yl/gcyEo6C9PQD/w4ICm8zDjfciq/pWjsS9aBJ9qqKWwtfhw/EK/y2B9kfiglTYOgtb1KUg/iw==","signatures":[{"sig":"MEYCIQDri3KgKdtZcEHkhgoiNWw48lKGoTZGfZ9zr4K6eCIXmwIhAL+7JjJtZwyf0pd/UVwt7isfSLumC3hyZtShi4FyYAgg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111646},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"a0966b737c844b2e020fba97ab957b6d04e13a5b","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.16.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.18.1","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","esbuild":"^0.28.1","typebox":"1.3.8","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.82.1","@earendil-works/pi-coding-agent":"0.82.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.16_1785700817185_0.11646990888953734","host":"s3://npm-registry-packages-npm-production"}},"0.7.18":{"name":"@eleboucher/pi-memini","version":"0.7.18","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.18","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"3deee4ca78a3d8fb42c3f3b4399b812792ecdeb7","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.18.tgz","fileCount":3,"integrity":"sha512-gafluMJUTsC2Jv0bRFkWuDSSlTci2RNCg4bwBQ7jgkd4dxCn88H1XywT3oBxQQMmw7QbsH6iJDgfCF2Fywcptg==","signatures":[{"sig":"MEUCIQDQ81lLYWOE78fg60HdWFNb/TLpjXiVaX1ta75E26LwJQIgWLM6hv9RePAgal2flcvIkazgSabzWBaCFiL9eXJtkec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111859},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"6d20e0217cbe29c9d68543bad37d3f5d9b65aa03","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.17.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.4","esbuild":"^0.28.1","typebox":"1.3.8","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.82.1","@earendil-works/pi-coding-agent":"0.82.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.18_1785961044046_0.10796639660197971","host":"s3://npm-registry-packages-npm-production"}},"0.7.19":{"name":"@eleboucher/pi-memini","version":"0.7.19","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.19","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"fdc5e8916f3c74b125963b1d966d1483383aa6f8","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.19.tgz","fileCount":3,"integrity":"sha512-Ad0LhS9DyJ2DNFL6EKqyZaG8spOw4hSlJw6QoI60EjkYkuixYdvS6LtuUqlT11Y1QU3feZBfKB6Yif3pKFUaRw==","signatures":[{"sig":"MEUCIE2sxsSzg+DkMaMtPj9LAS5rp1COYVlaLp1w7D2A88qeAiEAz7/8kCI7Blt0KaNIdiZvlfCwis+Yy0eRuJELQ0Cszg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111860},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"5865c5a9b57f525e17a9a5eb7344615295df2993","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.17.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.4","esbuild":"^0.28.1","typebox":"1.3.14","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.84.1","@earendil-works/pi-coding-agent":"0.84.2"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.19_1787400986386_0.8072984234636047","host":"s3://npm-registry-packages-npm-production"}},"0.7.20":{"name":"@eleboucher/pi-memini","version":"0.7.20","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.20","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"c12870d45166b16b9a1e78257d2cb9c848b611aa","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.20.tgz","fileCount":3,"integrity":"sha512-52Q8gSm/RcfYKBgxiL0FMWxhMZtMPsA1C6kYYekDJoczTYItU0ee5zNIRV/hgNo+cvDP1DQBAoGAIWoApunM8Q==","signatures":[{"sig":"MEUCIHQTgFHl2FGNbMpXgi7eDYx4i5+hRwwQ3m4MZM3wuHGrAiEA/JbO2asaAsaHZj6PMoWYdX8mRyvdskD/STGo9HAIaBs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111860},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"341565533757d3e39dc07c26e965b4d14a9df442","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.17.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.4","esbuild":"^0.28.1","typebox":"1.3.17","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.84.1","@earendil-works/pi-coding-agent":"0.84.2"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.20_1787599125394_0.4918929623392847","host":"s3://npm-registry-packages-npm-production"}},"0.7.21":{"name":"@eleboucher/pi-memini","version":"0.7.21","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.21","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"46a9f11f2b74749889374481deee6fa3f1413750","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.21.tgz","fileCount":3,"integrity":"sha512-QWTNd8j07j34nvpiwKThwLwJ+0W6Xz+MoftoTRFAcRiLu8O9WBIjyykYCqzMyaNwsiTFKjPTiy5VOX0XLuYzUg==","signatures":[{"sig":"MEUCIE9Pdgdqdj/FPWPtqu7WiNG74hH9ZwUUEcPSON+FxfxtAiEA5niR3IayySXA5ztOCCPns06vKqovcrj5Ri2tckzf+FQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111860},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"d23b9289aeadd85c36b7cb3ce0f583330fd61b0b","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.20.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.4","esbuild":"^0.28.1","typebox":"1.3.17","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.84.3","@earendil-works/pi-coding-agent":"0.84.2"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.21_1787918586554_0.07606244747171775","host":"s3://npm-registry-packages-npm-production"}},"0.7.22":{"name":"@eleboucher/pi-memini","version":"0.7.22","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.22","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"991483b805e748cd237453ec8b3623795c9b0e09","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.22.tgz","fileCount":3,"integrity":"sha512-4BYlNA4gBkcpVXcYe33aZv+8F1uLg9EB2+jWnFie+FKhqtw8Ef8Tx1bkJSj2jJBBmfg/9x4GR6qRKiM9TLxo4g==","signatures":[{"sig":"MEUCIGLBfDct2suwYSd5HEg0QOg68b2uolCA/Bs/VTk8NcVZAiEAuieRLdO08B8z9yn5PW+g2mHnri8TODc2YM6NFqXOYAk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111861},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"318467e2d30ea5a6d6d09840ec1b35080068dda7","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.20.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.17","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.84.4","@earendil-works/pi-coding-agent":"0.84.4"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.22_1788177914108_0.3798142178400976","host":"s3://npm-registry-packages-npm-production"}},"0.7.23":{"name":"@eleboucher/pi-memini","version":"0.7.23","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.23","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"77d1ca668a5166719b47b7770e0eabdecc5c7543","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.23.tgz","fileCount":3,"integrity":"sha512-+/e7MMMOUGb1KLHQdgmJjKr66XaBUfsAdDWSuLbeMdo3jkoBi/dSQpko8XUI4ICgumKVrmYC4MMXMNMZIciZEw==","signatures":[{"sig":"MEUCIAvDcqnFlU58Em+/8xvkX+QrEf5sfR9vuQp0LTDRHit7AiEAkw5JN4AlxRk+KlA3pxV1ISy9n5IOADKLaY/BcnZF9YQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111861},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"ac091864cdd9d2dbe41b7ec5211f2e087c4375d4","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.20.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.17","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.84.4","@earendil-works/pi-coding-agent":"0.84.4"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.23_1788439638242_0.4655169850680385","host":"s3://npm-registry-packages-npm-production"}},"0.7.24":{"name":"@eleboucher/pi-memini","version":"0.7.24","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.24","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"0838d0761712ca0e49396d7617f16d84bc748a98","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.24.tgz","fileCount":3,"integrity":"sha512-CtdPUtfqLEY9+PNdlijz9HG27Jv6ICZKJHW8X/e5svlEJX5HvX/Xs/PQvYbkvf6iHnkPBWKZcQ4OLVxpg70OTQ==","signatures":[{"sig":"MEUCIAyPqOPNma4A2PkTRWewG+pQIONe1HNaG7y/lW/hLrwQAiEArkvorU15zAhP27NeL4fvXULQ51MFjR6gWGx7etvq3eo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"4d0a77f0aefcb9fed4fcdd16109c2cc99daed2b4","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.24_1789043260508_0.9448379447908752","host":"s3://npm-registry-packages-npm-production"}},"0.7.25":{"name":"@eleboucher/pi-memini","version":"0.7.25","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.25","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"820891a155f6379caa895822cb7125a0f24c4ab0","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.25.tgz","fileCount":3,"integrity":"sha512-vKf5lFA4wVu1EmqPu/EZ4CWTfa0CKj+c+LPG99aXut1AlPKDDY49Y06RjSIC1tt2TXIoKQpbMzsAMl+g5L4RZA==","signatures":[{"sig":"MEUCIFQgIijHBhXViNd9n5TQ3ASSRBuiJ+cMbKIqLxR7gf+rAiEA7NGOVWiqu4yGWRqWRiCrJWw4c2lHz/z0Jkc6kvD6hMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"1fee6b043a18e1f132ec3ae53baa08b286d66a43","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.25_1789128574951_0.23349019610801713","host":"s3://npm-registry-packages-npm-production"}},"0.7.26":{"name":"@eleboucher/pi-memini","version":"0.7.26","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.26","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"6b7a93f08676ea57a810632b58ffca81598c914b","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.26.tgz","fileCount":3,"integrity":"sha512-IcZcMf9WRTogMPq0SYZgQTEav34wJOYhLz/jdAPxZRhFzegGNv4PqiNz77UMt1q2pGnlFnLJGA675oxNuenUXg==","signatures":[{"sig":"MEUCIHPhzh07WeQ/uHN7xbwPHdvZbX4WmpplQWd9Uul9qIJZAiEAwXrOoSpoM9V16zoIk1ZEU11LG+G7i77rQ9Og4X1gVHs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"f5021ab9fc8ad18c3d6f3288ea2aab6b2e0d4046","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.26_1789238604916_0.813767455103515","host":"s3://npm-registry-packages-npm-production"}},"0.7.27":{"name":"@eleboucher/pi-memini","version":"0.7.27","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.27","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"7771303e5f8a3d9cc619a1c033d7629415ac1689","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.27.tgz","fileCount":3,"integrity":"sha512-m3ECEsns+I/oAr8jX6n+z48+n5a0glJazh3VibNsFNk/IK7xJkbshVtVCrXKUsLKU4VJl3B78kRlu30GTMyEiQ==","signatures":[{"sig":"MEQCIEFnmSBYtp7C95COBps/9SdJsbeYG7VDqFNVaGrKfIn5AiA4pJnmKf+bhjN5ypZ1ELeH1A2oRo7N+Dw6kpiCuXEC6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"0f6b52c443cee082529129ea5fa7c93de71ad144","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.27_1789242097075_0.10153510823088463","host":"s3://npm-registry-packages-npm-production"}},"0.7.28":{"name":"@eleboucher/pi-memini","version":"0.7.28","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.28","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"21ebe2149230caa267493b5d6f78caaba4ac76b1","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.28.tgz","fileCount":3,"integrity":"sha512-eJvNM+irOw+GYeu4ZIbtrCfGgib0K6mUxowTnyNhWS9WBAVj4TuwlxqL93hpfkpWHJdU1gURifGSANnbmvphTQ==","signatures":[{"sig":"MEQCIGImI2E1duJNO2NwlaolFa9EpV00+pUBQPpSyQlP+PKVAiBl44MAm/dGMTYkDyFT5/ElgIKLvT9sh+BO332V+htwkA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"fb8f913832519528c0e5a4afa1b06109d28a601e","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.28_1789255448906_0.2481240601347281","host":"s3://npm-registry-packages-npm-production"}},"0.7.29":{"name":"@eleboucher/pi-memini","version":"0.7.29","keywords":["memini","memory","pi-extension","pi-package"],"_id":"@eleboucher/pi-memini@0.7.29","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"pi":{"extensions":["./dist/index.js"]},"dist":{"shasum":"48819cfb7c5e2b769976822e89f2e45956962fa7","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.29.tgz","fileCount":3,"integrity":"sha512-ZSKqhRoOaC2o2sgiUip9OV7bRs1HP/H3LWeFhYxiF1kKHfzAwRQ3F1LvcvHeMszI3KCmGDc9gPn/yiF2XxM1PQ==","signatures":[{"sig":"MEQCIEQmoIp+N+5fq587uB8QW6X2dq8C17eYBVfEHeqULIbMAiBEmQYfRWojdhkEcfm8J41WVVPOdnVhDXWs9v0aguZunQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":113982},"type":"module","engines":{"node":">=22.19.0"},"gitHead":"a62f19e3ffd4cd3158c5f5d8b12c99b96dd110a0","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-memini_0.7.29_1789323639918_0.24149036760934428","host":"s3://npm-registry-packages-npm-production"}},"0.7.32":{"pi":{"extensions":["./dist/index.js"]},"_id":"@eleboucher/pi-memini@0.7.32","dist":{"shasum":"599cdb845e84fdcb4e2bf839bf20e43e9d337366","tarball":"https://registry.npmjs.org/@eleboucher/pi-memini/-/pi-memini-0.7.32.tgz","fileCount":3,"integrity":"sha512-J1RCWx+9rZu11mCFfp5Ea4whVNT964WTD7tMqjjiA0RQ5XquAL5WjBTvePEUKvZiyu12h3rYaorXrtYCc+6IYg==","signatures":[{"sig":"MEUCIQDVU7SKlwbJRPbhA9Tw3kXQTxQg8R7bRksSHWrrXGsN3gIgCt/sbz5K8NZEZXYnidrGYr5TlVOZ11+rPYjOtgOvUp8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAGXS2+DeQlLJOraXOkklBPs4w2mYRFukfqeuE52agv3AiEA/XcejfnO+fyLklFMufikvS0yBZ6ZXdg4kD1RWNjYrEY="}],"unpackedSize":113982},"name":"@eleboucher/pi-memini","type":"module","engines":{"node":">=22.19.0"},"gitHead":"87851be0b87fc153662ea7b5d414c0f03eff3eed","scripts":{"test":"npm run typecheck && npm run build && npm run test:unit && npm run test:package","build":"npm run clean && esbuild src/index.ts --bundle --platform=node --format=esm --target=node22 --external:typebox --external:@earendil-works/pi-coding-agent --external:@earendil-works/pi-tui --alias:@memini/client=../../../packages/memini-client/src/index.ts --outfile=dist/index.js","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","prepack":"npm run typecheck && npm run build","test:unit":"node --test test/bundle.test.mjs && tsx --test test/helpers.test.ts","typecheck":"tsc -p tsconfig.test.json","test:package":"node --test test/package-install.test.mjs"},"version":"0.7.32","_npmUser":{"name":"eleboucher","email":"erwanleboucher@gmail.com"},"keywords":["memini","memory","pi-extension","pi-package"],"_npmVersion":"11.19.0","description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","directories":{},"maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","esbuild":"^0.28.1","typebox":"1.3.28","typescript":"^5.9.0","@types/node":"^24.0.0","@earendil-works/pi-tui":"0.85.1","@earendil-works/pi-coding-agent":"0.85.1"},"peerDependencies":{"typebox":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-memini_0.7.32_1789831787092_0.5426047667845404"}}},"time":{"created":"2026-06-28T16:09:03.601Z","modified":"2026-09-19T15:29:47.342Z","0.4.23":"2026-06-28T16:09:03.881Z","0.5.0":"2026-06-29T15:54:18.646Z","0.5.1":"2026-06-30T12:28:17.910Z","0.5.2":"2026-06-30T21:37:00.267Z","0.5.3":"2026-07-02T10:02:39.728Z","0.5.4":"2026-07-03T11:59:06.653Z","0.5.5":"2026-07-04T14:30:27.794Z","0.5.6":"2026-07-04T15:11:11.134Z","0.5.7":"2026-07-04T20:26:36.827Z","0.5.8":"2026-07-05T21:41:08.214Z","0.5.9":"2026-07-06T16:59:52.403Z","0.5.10":"2026-07-07T13:31:01.247Z","0.5.11":"2026-07-07T21:12:18.000Z","0.5.12":"2026-07-08T20:01:19.799Z","0.6.0":"2026-07-10T07:21:46.160Z","0.6.1":"2026-07-10T08:12:10.851Z","0.6.2":"2026-07-10T09:08:40.851Z","0.6.3":"2026-07-10T12:07:07.742Z","0.6.4":"2026-07-10T16:12:44.245Z","0.6.5":"2026-07-10T21:29:34.920Z","0.6.6":"2026-07-11T17:21:31.030Z","0.6.7":"2026-07-11T21:06:58.976Z","0.6.8":"2026-07-12T12:22:08.784Z","0.6.9":"2026-07-13T07:30:38.301Z","0.6.10":"2026-07-13T18:12:27.722Z","0.6.11":"2026-07-13T19:31:06.622Z","0.6.12":"2026-07-13T19:54:57.700Z","0.7.1":"2026-07-14T13:58:37.819Z","0.7.2":"2026-07-14T20:30:58.803Z","0.7.3":"2026-07-16T14:02:41.391Z","0.7.4":"2026-07-17T21:12:18.086Z","0.7.5":"2026-07-18T15:13:56.990Z","0.7.7":"2026-07-19T16:14:34.908Z","0.7.8":"2026-07-19T17:18:18.394Z","0.7.9":"2026-07-20T06:43:57.697Z","0.7.10":"2026-07-20T07:59:04.167Z","0.7.11":"2026-07-22T13:03:37.863Z","0.7.12":"2026-07-22T19:02:25.461Z","0.7.13":"2026-07-24T21:39:46.623Z","0.7.14":"2026-07-24T22:12:40.938Z","0.7.15":"2026-07-28T15:52:39.178Z","0.7.16":"2026-08-02T20:00:17.316Z","0.7.18":"2026-08-05T20:17:24.194Z","0.7.19":"2026-08-22T12:16:26.539Z","0.7.20":"2026-08-24T19:18:45.535Z","0.7.21":"2026-08-28T12:03:06.684Z","0.7.22":"2026-08-31T12:05:14.237Z","0.7.23":"2026-09-03T12:47:18.380Z","0.7.24":"2026-09-10T12:27:40.644Z","0.7.25":"2026-09-11T12:09:35.091Z","0.7.26":"2026-09-12T18:43:25.048Z","0.7.27":"2026-09-12T19:41:37.211Z","0.7.28":"2026-09-12T23:24:09.030Z","0.7.29":"2026-09-13T18:20:40.041Z","0.7.32":"2026-09-19T15:29:47.193Z"},"keywords":["memini","memory","pi-extension","pi-package"],"description":"Shared cross-session memory for the Pi coding agent, backed by a memini service.","maintainers":[{"name":"eleboucher","email":"erwanleboucher@gmail.com"}],"readme":"# memini + Pi\n\n[Pi](https://pi.dev) is an open-source coding agent with a first-class\n[extension API](https://pi.dev/docs/latest/extensions). Pi has no built-in MCP\nclient, so memini ships a native Pi package in [`plugin/`](plugin/). It adds\nautomatic session memory, native `memory_*` tools, lifecycle persistence, and\ncompact transcript rendering without an MCP adapter.\n\n## Install\n\nThe package is published as\n[`@eleboucher/pi-memini`](https://www.npmjs.com/package/@eleboucher/pi-memini)\nand requires Pi 0.80.6 or newer (Node.js 22.19 or newer):\n\n```sh\npi install npm:@eleboucher/pi-memini\n```\n\nUse `-l` for a project-local install. Pi records global packages in\n`~/.pi/agent/settings.json` and project packages in `.pi/settings.json`.\nEquivalent manual configuration is:\n\n```json\n{\n  \"packages\": [\"npm:@eleboucher/pi-memini\"]\n}\n```\n\nProject-local packages load only after the project is trusted. Run `pi config`\nto enable or disable installed resources.\n\nFor development, load the built extension for one run:\n\n```sh\nnpm --prefix integrations/pi/plugin run build\npi -e ./integrations/pi/plugin/dist/index.js\n```\n\nPi also auto-discovers source extensions placed in\n`~/.pi/agent/extensions/` or `.pi/extensions/`; those locations can be\nhot-reloaded with `/reload`.\n\n## What the extension does\n\n### Automatic memory and lifecycle\n\n- **`session_start` / `session_tree`** reconstruct branch-local suppression and\n  capture state, then inject one bounded layered briefing when the active model\n  context does not already contain it. Startup, resume, fork, and reload do not\n  duplicate an intact briefing.\n- **`before_agent_start`** searches for the submitted prompt and injects useful\n  matches as untrusted, read-only context. Blank text, command-shaped prompts,\n  and steering text shorter than 12 characters are skipped; search queries are\n  capped at 2,000 characters.\n- **`agent_settled`** captures the final successful user/assistant turn only\n  after retries, overflow compaction, and queued continuations have settled.\n  Repeated settled events for the same assistant entry are idempotent.\n- **`session_before_compact` / `session_compact`** optionally checkpoint bounded\n  state-changing activity, clear context-coupled suppression, and queue a fresh\n  briefing without starting an extra turn.\n- **`session_shutdown`** optionally records a bounded activity digest for real\n  shutdown/switch/fork events. Reload is skipped because the session continues.\n- **Branch-aware dedupe** persists in Pi custom entries only after the matching\n  recall/tool-result message is finalized. Automatic briefing and prompt recall,\n  plus explicit recall/briefing/list/get/history/answer results, share one cooldown\n  state; successful updates, deletes, and ID upserts make corrected content eligible immediately,\n  even when sibling tools complete concurrently.\n  Set `MEMINI_INJECT_DEDUPE=0` to disable exclusions, filtering, and recording\n  together.\n\nThe server-authoritative namespace from `POST /v1/handshake` scopes automatic\nand explicit requests through `X-Memini-Namespace`. Automatic lifecycle work\nno-ops while authority is unavailable; explicit tools retry the handshake once\nand then return an actionable error rather than request a locally guessed partition.\nA compatibility retry drops `exclude_ids` only after a server explicitly rejects\nthat field with HTTP 400; timeouts, throttling, and unrelated failures do not disable it.\n\n### Native tools\n\nPi registers these tools directly with `pi.registerTool`:\n\n| Tool              | Purpose                                                                                      |\n| ----------------- | -------------------------------------------------------------------------------------------- |\n| `memory_briefing` | Read pinned context, durable facts, procedures, recent work, and nested-project rollups.     |\n| `memory_recall`   | Hybrid semantic/keyword recall with filters, time travel, scope, exclusions, and provenance. |\n| `memory_list`     | Browse and page newest-first memories without a search query.                                |\n| `memory_remember` | Store or upsert an atomic memory, including validity, confidence, metadata, and visibility.  |\n| `memory_get`      | Fetch one complete memory DTO.                                                               |\n| `memory_history`  | Read a memory's supersession history oldest-first.                                           |\n| `memory_update`   | Partially correct content, summary, tier, level, tags, metadata, importance, or confidence.  |\n| `memory_forget`   | Permanently delete a memory.                                                                 |\n\n`memory_answer` is added dynamically only when authenticated\n`GET /healthz?verbose=1` returns the literal boolean\n`deps.llm.configured: true`. Missing, malformed, false, unreachable, or\nunrouted capability evidence leaves the tool unadvertised.\n\nThe REST-backed answer tool intentionally omits MCP's `reasoning_level` because\nthe current `/v1/answer` REST request does not accept it. REST briefing also\ndoes not expose the service's truncated-child count, so Pi preserves every\nreturned child rollup but does not fabricate `children_note`.\n\nRead results include namespace/provenance evidence. For inherited or personal\nmemories, copy the returned `namespace` verbatim into get/history/update/forget;\ndo not invent namespace paths. Writes choose semantic `visibility` instead.\n\n### Compact rendering\n\nAll explicit tools keep their complete structured JSON in the tool result sent\nto the model and stored in the session. Their TUI renderer shows a concise\nsingle line when collapsed and, with Pi's tool-expansion key (`Ctrl+O` by\ndefault), a bounded human-readable view with at most eight memory/source items\nplus kind-specific answer, acknowledgement, merge, and child-rollup details.\n\nAutomatic briefing and recall messages likewise remain persistent model\ncontext while registered message renderers keep the normal transcript to one\nline. Rendering never truncates or rewrites the model-facing payload.\n\n## Configure\n\nThe extension has two configuration layers:\n\n1. **Transport and identity** come from the environment of the Pi process.\n2. **Behavior settings** resolve as **environment override → handshake server\n   setting → built-in default**. This lets one server set team defaults while a\n   local environment can override a specific knob.\n\n### Transport and identity environment\n\n| Environment variable      | Default                 | Effect                                                                                                   |\n| ------------------------- | ----------------------- | -------------------------------------------------------------------------------------------------------- |\n| `MEMINI_BASE_URL`         | `http://localhost:8080` | memini REST base URL.                                                                                    |\n| `MEMINI_API_KEY`          | unset                   | Bearer token.                                                                                            |\n| `MEMINI_REQUIRE_HTTPS`    | off                     | Set to `1` to refuse a bearer token over non-loopback plaintext HTTP.                                    |\n| `MEMINI_HOME`             | unset                   | Personal namespace sent as `X-Memini-Home`; unset means no personal read leg.                            |\n| `MEMINI_NAMESPACE`        | unset                   | Declared namespace fact and offline machine-local fallback; a server pin still wins.                     |\n| `MEMINI_NAMESPACE_PREFIX` | unset                   | Prefix applied only to derived namespaces, online and in degraded fallback.                              |\n| `MEMINI_AGENT`            | unset                   | Optional per-agent namespace suffix fact.                                                                |\n| `MEMINI_TIMEOUT_MS`       | `30000`                 | Per-request timeout in milliseconds.                                                                     |\n| `MEMINI_FALLBACK`         | on                      | `0`/`false` makes automatic lifecycle transport failures surface instead of degrading to warnings/no-op. |\n\nThe initial handshake sends git remote, repository root, cwd basename, and the\nidentity facts above. The server resolves pins and other server-side policy and\nreturns the authoritative namespace. The result is memoized for ten minutes;\nsetting or clearing a pin invalidates it immediately. If the handshake is\nunreachable, Pi derives a namespace only for diagnostics and marks it degraded;\nautomatic memory traffic pauses and explicit tools refuse to route until server\nauthority is restored.\n\n### Behavior settings used by Pi\n\n| Environment override                 | Built-in default | Effect                                                                                        |\n| ------------------------------------ | ---------------- | --------------------------------------------------------------------------------------------- |\n| `MEMINI_RECALL`                      | on               | Automatic prompt recall.                                                                      |\n| `MEMINI_CAPTURE`                     | on               | Settled-turn capture.                                                                         |\n| `MEMINI_RECALL_LIMIT`                | `3`              | Maximum automatic recall hits.                                                                |\n| `MEMINI_INJECT_RECALL_MAX_TOK`       | `250`            | Recall injection token ceiling; `0` is unbounded.                                             |\n| `MEMINI_INJECT_RECALL_MIN_SCORE`     | `0.5`            | Minimum automatic recall score (composite post-rerank scale); `0` disables the floor.         |\n| `MEMINI_INJECT_DEDUPE`               | on               | Shared cross-surface suppression state.                                                       |\n| `MEMINI_INJECT_COOLDOWN_MS`          | `1800000`        | Time cooldown for repeated injection; `0` disables this dimension.                            |\n| `MEMINI_INJECT_COOLDOWN_PROMPTS`     | `3`              | Prompt cooldown; `0` disables this dimension. Both cooldowns at `0` suppress for the session. |\n| `MEMINI_INJECT_LABELS`               | empty            | Comma/pipe-separated automatic bullet labels: `tier`, `confidence`, `age`.                    |\n| `MEMINI_INJECT_BRIEFING_PINNED`      | `5`              | Startup pinned-memory cap.                                                                    |\n| `MEMINI_INJECT_BRIEFING_FACTS`       | `5`              | Startup durable-fact cap.                                                                     |\n| `MEMINI_INJECT_BRIEFING_PROCEDURES`  | `5`              | Startup procedure cap.                                                                        |\n| `MEMINI_INJECT_BRIEFING_RECENT`      | `3`              | Startup recent-memory cap.                                                                    |\n| `MEMINI_INJECT_BRIEFING_MAX_TOK`     | `600`            | Whole briefing token ceiling; `0` is unbounded.                                               |\n| `MEMINI_SESSION_DIGEST`              | on               | Pre-compaction and shutdown activity checkpoints.                                             |\n| `MEMINI_MIN_CAPTURE_CHARS`           | `0`              | Minimum settled user-text length required for capture.                                        |\n| `MEMINI_CAPTURE_USER_MAX_CHARS`      | `1000`           | Per-turn captured user-text cap; `0` is unbounded.                                            |\n| `MEMINI_CAPTURE_ASSISTANT_MAX_CHARS` | `3000`           | Per-turn captured assistant-text cap; `0` is unbounded.                                       |\n\nAn already injected memory stays suppressed while **either** configured\ncooldown still holds and may return only after both lapse. Explicit read tools\nuse conservative suppression until a correction evicts the stale entry.\n\n## Slash commands\n\nType commands with the leading `/` in Pi's editor:\n\n| Command                         | Effect                                                                                                                |\n| ------------------------------- | --------------------------------------------------------------------------------------------------------------------- |\n| `/memini:status`                | Show effective settings and provenance, resolved namespace, connection status, read set, redacted auth, and warnings. |\n| `/memini:namespace`             | Show the current server-resolved namespace and pin provenance.                                                        |\n| `/memini:namespace <namespace>` | Set this project's server-side namespace pin.                                                                         |\n| `/memini:namespace --clear`     | Clear the server-side pin and return to automatic resolution.                                                         |\n\nCommand diagnostics are persisted as TUI-only custom entries and never enter\nthe model context, including server-authored pin notes and read-set labels.\n\nPins are stored by the memini server (`PUT`/`DELETE /v1/pins`) and keyed by the\nproject's git remote and/or repository root. They follow the project across\nmachines and beat `MEMINI_NAMESPACE` deliberately. Pin writes require a\nreachable server; `MEMINI_NAMESPACE` remains the offline local override.\n\n## Build and verify\n\nFrom the package directory:\n\n```sh\ncd integrations/pi/plugin\nnpm ci\nnpm test\n```\n\n`npm test` is the standard verification path. It type-checks source and tests\nagainst Pi 0.80.6, builds `dist/index.js`, runs bundle and helper/lifecycle/tool\ncontract tests, packs the publication artifact, installs it into a clean\nconsumer, and imports the installed ESM with only Pi-provided peer modules.\n\nUseful focused commands:\n\n```sh\nnpm run typecheck\nnpm run build\nnpm run test:unit\nnpm run test:package\nnpm pack --dry-run\n```\n\nThe package's `prepack` hook repeats typecheck and build so a direct `npm pack`\nor publish cannot ship stale source. `@memini/client` is bundled into the\nsingle extension file; `typebox`, `@earendil-works/pi-coding-agent`, and\n`@earendil-works/pi-tui` remain host-provided peers as required for Pi packages.\n\nRelevant cross-integration parity checks from the repository root are:\n\n```sh\npnpm --filter @memini/client test\nnode --test plugin/scripts/_test.mjs\n```\n\n## Alternative: MCP wire\n\nPi can reach memini's `memory_*` tools through a third-party MCP extension, then\nconnect to `http://<host>:8080/mcp` or `memini mcp` (stdio). The native package\nabove is preferred because it also provides automatic recall/capture, lifecycle\nstate, capability gating, and compact rendering.\n","readmeFilename":"README.md"}