{"_id":"@matthewfl/pi-contemplator","_rev":"35-00659415255337f0a5d1a0299e48d607","name":"@matthewfl/pi-contemplator","dist-tags":{"latest":"0.4.0"},"versions":{"0.0.1":{"name":"@matthewfl/pi-contemplator","version":"0.0.1","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.1","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"d83b44a3cd3323e7accd9bc116b9f5817b83edd1","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.1.tgz","fileCount":47,"integrity":"sha512-TF3Z5aeRZJBuzQZnpYCxoO4nnmkUORlpTV2sFi+oIB/963oYHwMlA0eNZPjw8uO99xBjVEATZcFoypCf9JWU8w==","signatures":[{"sig":"MEUCIQC9y4TsSTlbv4ZBmY2iTyLj+tPq53J87YxNi/Gqk8OhgAIgNPWyGz9lY/+suQQUC9SzrFLNzaEdtkYDCjbltY3BZfo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":341649},"type":"module","gitHead":"885e876902a927d352e7c3e60e30c42875279322","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.1_1786381532386_0.11045357312368442","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@matthewfl/pi-contemplator","version":"0.0.2","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.2","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"74e04f31533f0d8a0e1f80c16ca3ed3373f1bcc6","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.2.tgz","fileCount":47,"integrity":"sha512-Vzx0luEY3nIvLFqZdRhWct1fd6GSlLQXhRiYHT4uMD2ImLD+JxmHvX/W4VfoJ4RGu76HzfUXfJvWtwGUbO8Hig==","signatures":[{"sig":"MEUCIQDPo4x1gBuT2t72CuU0sClN2fQdGH9T0r7DOahjWR7eUAIgNX62sP0FwnY9tAXLieG2tC2gwZEaceRLUAvePqb3Ur0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344779},"type":"module","gitHead":"341b794e9895aed3c1f2dbc434fb08b5974fb32e","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.2_1786393410038_0.5465960579022766","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@matthewfl/pi-contemplator","version":"0.0.3","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.3","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"803bc29de42326e1272d5e32e6e7780c12196dfb","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.3.tgz","fileCount":47,"integrity":"sha512-teGkNAZr/myMw7seMsuXS0BM+QvQSpNopBD/MpecWBr+6Uhi3EFzgEybYZlVEsHeKHr3J51pwUuh4Z/FO/2ymg==","signatures":[{"sig":"MEYCIQCDdoSQ4P/85QP+0Pe9XJUDI9JKXmErSN7fJFYyZ/eOpgIhAPu0ry6SAvdrbaYxOF7gHC76eFeNR9aVf/pYdpGyJ0Ki","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":345538},"type":"module","gitHead":"e791b6031916f731ce6b9603ac0e586011b44442","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.3_1786463740169_0.12924787610390065","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@matthewfl/pi-contemplator","version":"0.0.4","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.4","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"6c00220466dfffcecf647936dab46ad3e9a344f1","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.4.tgz","fileCount":47,"integrity":"sha512-jRIpvMXK+kEtPvl0zauNIwrp35Kb6TTEubxFvW9WYppKefezX8ZtDwm7TeGGt2E+nOxo+gi33I9FU7D/y7N2AA==","signatures":[{"sig":"MEUCIQC5wVWgAMW5KrIlhr2JtIHntcRToshUI6HP80OwWJcfogIgG1Ctt4pYL+bT42UduQWFSM0fZGxiq+n0LxLJXnbQxQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":348827},"type":"module","gitHead":"d2d7376b947de4becac8249733a12eaeb20dc2d6","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.4_1786498110622_0.07388406367115508","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@matthewfl/pi-contemplator","version":"0.0.5","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.5","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"cc51ed08cd0220ded364f2c4f4d60e389326522c","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.5.tgz","fileCount":47,"integrity":"sha512-twD2t6eOJ4Y3rWqgMXsITyo11qtgyEIcwO7rnAQT1cFYuibkhzZdSQrV3UXdtrxBfOs+kq3jPqv83YX6CQcfrA==","signatures":[{"sig":"MEUCIFpD/kSCgURT8/2Sfs9ptreqmZWjS4+QLoA/9h8aVDZfAiEAoXxC+gZusJ67WvTLvDzFKmVXZ9etdg9Gxqa4Djnw/SI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":359798},"type":"module","gitHead":"2a93bea40f0f470b4f452dd218be89bdb67a940f","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.5_1786547134259_0.14002524508048464","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@matthewfl/pi-contemplator","version":"0.0.6","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.6","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"bdc03d34fc9eb85ee67a56764048bdf6b806ce75","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.6.tgz","fileCount":47,"integrity":"sha512-b/FwtiRJ37jzv8X89YluxGLE9h7fCtNW1fbnKnmLTueL/BEDRyyHyc7vSKdb137FgQj4rpVb+5Qwus9/Ht/y6Q==","signatures":[{"sig":"MEYCIQCxVxM6fvgYvZ4dnaKUelNmhRTEa5ElZrGAMPnC4aFYOAIhALwXlD6BxXJvS+wRWZS54S2inUEvYSM/6Ad3Y24KKoDR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":360348},"type":"module","gitHead":"529110b36b8681bbe038504ceea6cd44c772096d","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.6_1786550542848_0.4332129706948986","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@matthewfl/pi-contemplator","version":"0.0.7","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.7","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"bc073903b1b4e5b699c5ad31b35e20a6b39e3efd","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.7.tgz","fileCount":47,"integrity":"sha512-sy1WM+qOL04p/XWv9iQ4HN6Cn1iL/N4Q2N5CwK56rzK2fDs/4evw/x7dSgKWh9Ufw4ZE0cs2ZW1JkPjOFjZAiA==","signatures":[{"sig":"MEUCIBeNAckhFIcuCBigUA/B5zItEBIbw81tggjaUQXDDsYaAiEAvbljduB83e+T/noJJv04rot2foZsf9UUNQTgSdMDLa4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":361982},"type":"module","gitHead":"e07ff872d2bb2540fbaef292548a408daa440dcc","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.7_1786573211932_0.8176699081224938","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@matthewfl/pi-contemplator","version":"0.0.8","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.8","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"1633eab2673c7353f10843f40dd958b7cf2e6ded","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.8.tgz","fileCount":47,"integrity":"sha512-vRccqXNUXu2ndxkusiJMMtIItXG3uNk7w9l5DJ97PrJqr2KODyUrEfC1WCgv6G3K5FGL6WF80Sr98iqWMhJURg==","signatures":[{"sig":"MEUCICdjJ5+viPtj4X8X9In8MPM8PjDOjWkerjJlV12Q/3i1AiEA6tMFv7DCMB09smaeLHxgh8YzTc1/NXUoRG0g2vrdKvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":363128},"type":"module","gitHead":"ebea61af0ed46ddedfcd18e38f46384c2a979452","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.8_1786752226645_0.6963942865258024","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@matthewfl/pi-contemplator","version":"0.0.9","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.9","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"639c9d8bf3fdfb5ebc82af02924667f2ba352e5c","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.9.tgz","fileCount":47,"integrity":"sha512-xq+/0oD37D6xzTa6iZiGw1b4jdeEQhnNKEHVW6Xe/5r4kZ5IZkxKEX4Cios8c/61BSrEibnHGS+t9avLhZyn/g==","signatures":[{"sig":"MEUCIGMnYFM4AnSl4KeYTUSRWrqAselQRb2Sfk5wEtKRc4ERAiEAscHMzmcYHPQtkJN3eiGg1oym8fgmf4PVzM6lJr3gWc8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":363478},"type":"module","gitHead":"916d87b847ec6a6e22edb0bacb1ae800a1f47192","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.81.0","@earendil-works/pi-tui":"^0.81.0","@earendil-works/pi-agent-core":"^0.81.0","@earendil-works/pi-coding-agent":"^0.81.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.9_1786753562006_0.544731596873206","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"@matthewfl/pi-contemplator","version":"0.0.10","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.0.10","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"48af4e905b6101e0ab2f3d1d4c3819c78fbf645f","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.0.10.tgz","fileCount":47,"integrity":"sha512-biA9rY18NH3EhJUUbBKRGXKtgF8jB7MPIYxm1UvA5qK1s4ofz3D9LGHFV400r6VBiP/YZPwrGUsexHZTZI1WLw==","signatures":[{"sig":"MEQCIDlTNO8S17n6XIsWOsUrHKoLdf+iFiTVi/ZApQk1s4ZLAiAxYlckovUggVaLRI7albMJ6BxLpM4mVtgLV8eG16iyXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":365860},"type":"module","gitHead":"7ea4c23026f40989ef1787aec04b52f12edec535","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.2","@earendil-works/pi-tui":"^0.84.2","@earendil-works/pi-agent-core":"^0.84.2","@earendil-works/pi-coding-agent":"^0.84.2"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.0.10_1786764530420_0.4543745263609651","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@matthewfl/pi-contemplator","version":"0.1.0","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.0","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"f14e8813b303eb7646caf700ee9052c7a46ea450","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.0.tgz","fileCount":48,"integrity":"sha512-7hywwzm+qMAA4i624CKuWFhF7gPqsgjiHifNjKsjek3kf8Tp5hfVhlzaMACex8ZI6qDqauli4yY0C5w3IPDn3w==","signatures":[{"sig":"MEUCIGZivrqhq5wZYjLqhcznOiKmspAmoHe0tnoBx7eFy+1yAiEAzOU0QwjCMdvS6UxOuVza8tHpxfYqU9vK8GV/B3bXxl4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":395505},"type":"module","gitHead":"6088dff24976af344d27df19bfd316eb61578868","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.0_1787613714734_0.8734940835145022","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@matthewfl/pi-contemplator","version":"0.1.1","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.1","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"402dcdbd2ba7ea314d69b347445418f71328a6aa","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.1.tgz","fileCount":48,"integrity":"sha512-TxH/77Rrc8BII91RUArqUsrFF0CuBvaNP05M8AkCiQ1N1uhqWmP6oBUNj2DQ2F7ygpXD8SuetkNWyWH1AS4gWw==","signatures":[{"sig":"MEUCIFLRKsV/Qi9M9mJ9E0JWNbVe3pL5qCa0+7YmmjKhpXjqAiEA0X+GYyyey5mDIK2coTGdvXRHvoI8wJqE/SB5qOsWM44=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":400968},"type":"module","gitHead":"92acfd7947ae77900159cb33c19a4e29766a8a67","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.1_1787674251486_0.056128592343594796","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@matthewfl/pi-contemplator","version":"0.1.2","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.2","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ce3aa614bce3b35d0f5cc07cb025dd079b9ee6e9","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.2.tgz","fileCount":49,"integrity":"sha512-BMd3rbMJOYsr6YDAP/vZweoiH+WC6iOysBnY/bT7IvUwmM2R8dySdAgyhI/0h/N7mNGbri85EadI6D4fQ7dHaQ==","signatures":[{"sig":"MEYCIQDKv36dOk6mhf3lwGirbMc3SwYjEpQAxBHjL+ZKLBfUewIhAOtaNRf4535iccYActGo9v3+tbqQSDwZ9ZDzhGQ7SZK8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":410203},"type":"module","gitHead":"778f0147c11b8518a177c390c23fb29beee52562","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.2_1787676830160_0.5276645089095642","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@matthewfl/pi-contemplator","version":"0.1.3","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.3","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"0082a597a5c5ecaa6a488551e5d3eb6965cfac15","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.3.tgz","fileCount":49,"integrity":"sha512-+BrQw5JONwOy3+cU2STc8TJYsg+A2W6ENSMWA3BvRKQK8ULjDVatwbKTS+9Kepk4VRZ0oJa/HneluBut5RDmYQ==","signatures":[{"sig":"MEUCIQDvc8sPR50vc1XuXtodFEtd4DR35sFZMi+k1leZItNs5gIgCFFz95X4cEMh/LJiFBKYzQC4AJJq44tf+4bFlwR7fSw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":412023},"type":"module","gitHead":"84ccd8702ec38183be70aa297bbf998984743116","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.3_1787678703328_0.05372279467426577","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@matthewfl/pi-contemplator","version":"0.1.4","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.4","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"5817228e141a64e059aca5cee039ef661f953334","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.4.tgz","fileCount":50,"integrity":"sha512-nSpLP85MrB5CLjlDjDHKOwLc8ztwgLddKzSSYPHmBBEmAaK4i1Zc/+n7a3sKYY25kzQnrhJdb7PuQgjcMFPmNA==","signatures":[{"sig":"MEUCIQCXxCaRCRW4JpS/ifrehCIkYgwKXEUwo8Gd7CfyHL1qegIgXpzSqrNXlrTGuxbAFHNErCLdunXMu+N3Gt5QkBy05/Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":419124},"type":"module","gitHead":"a19fce837c0c8fb9f838e7303508a68f9b6084d5","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.4_1787691077486_0.48132460944988","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@matthewfl/pi-contemplator","version":"0.1.5","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.5","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ee68497938dba815d34e2fa46f2f77fbd2e04984","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.5.tgz","fileCount":50,"integrity":"sha512-J9knKuSeRJLsJCMqo3hBnolrMyEPPo6PJiLb+aW7C4XOuOlh7Ylry3ZD2aMp0O/8NclZaHV9vlDAuseM3zWWpw==","signatures":[{"sig":"MEYCIQCP4M4SBfAydPZWc8gmUEsjLiNq7XxMzntnFVbw4//J4AIhANudLAHvHvDorhFZGp/r0WsgSNu04C6uY/fveNcdXKoC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":421068},"type":"module","gitHead":"55f021c69591b1c16f09843f7738848a45573fe1","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.5_1787848601911_0.9152087312336632","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@matthewfl/pi-contemplator","version":"0.1.6","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.6","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"2e38096f5bd875c19763f9f12cec16bac46eec7b","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.6.tgz","fileCount":50,"integrity":"sha512-2JcWnOqiXSf7uAtUNV5mruOMx4LJ+rfA/Zn32texF6sB/85m9Z4aumBeFuunNKR9hmo9ObZVEJfEAR+W1qefTA==","signatures":[{"sig":"MEQCIFPqzhKr7AcGBX/baWnJaPBzZEoYqxiuiYnV7gmPaxCIAiAhJzDRttNzVZUdFJMhB6TQmzS6pD6OCsW7Nm/T3tNU3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":423948},"type":"module","gitHead":"5c27787135b720844ff78b8bb88d6f52c464d092","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.7.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.3","@earendil-works/pi-tui":"^0.84.3","@earendil-works/pi-agent-core":"^0.84.3","@earendil-works/pi-coding-agent":"^0.84.3"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.6_1787951257779_0.39947906297552027","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@matthewfl/pi-contemplator","version":"0.1.7","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.7","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"d5d062df5f8012cf7d6dea54158a6a5a5c458776","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.7.tgz","fileCount":50,"integrity":"sha512-QKu2EyjBUYbjLQ+uTc64BKvEoFUOu2Wr/9DIsFInN+JOji8ra19ESiuA39FMejDSzEa5EcYzJ31LaVO7x2fSVA==","signatures":[{"sig":"MEUCIFIzP6dJzPkJaU0FPdXuj8WXxPSt9+xrBfq5hjFMx5ayAiEApW13Fwex5WN1Bms2DFEwHh5rryd0E3saRQjE7NgCxTU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":421817},"type":"module","gitHead":"487252bd5caf5ebe560d686c223e43da60b6d63c","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.7_1788200973253_0.8190854821932783","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@matthewfl/pi-contemplator","version":"0.1.8","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.8","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"4f667fb7091887b1d0f4528922170ce986ce49c0","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.8.tgz","fileCount":50,"integrity":"sha512-uKqYMErXJZ37qdm39wuxSgtqw9wqq6AqVsY2NcbugeDm1xxRNTpwlYtKmwtSPwXI1JBIHahQ6Pyl1xUR4zHouQ==","signatures":[{"sig":"MEUCIQCPGxj5VG2X9Geg63cvD/ZvBIEabr5cx9taDQ5JslmLdAIgEx2iuUhoWyI0alXE2yy85cF9buzjQycveF1m2iR478Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":430441},"type":"module","gitHead":"93740e67e94befd7767b49ae851b450b180a13a2","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.8_1788203628069_0.5674195057159566","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@matthewfl/pi-contemplator","version":"0.1.9","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.9","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"9983fb7b99d740a0987837f95d2f6aa783b7f522","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.9.tgz","fileCount":50,"integrity":"sha512-Qyb6ZD+nds/nXjNtjjmFdzGvemrzQWay4PpeRfg1Qg6vPZFGIH+P/8BmYNaSqzkfFUhW5OAC/7X2OtjtgGx7Rw==","signatures":[{"sig":"MEYCIQDcKVVezRYVvrhi8BACsYJBZKi3ZNbk55UD2hkHGAYIpAIhAOFU7wLmKmukFq2LMhtj8VKSbZMVaiHpp+nDsIm1cdNZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":432336},"type":"module","gitHead":"26cb5e7cf8174e1d95fafc9596ee2aa6c2c7e473","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.9_1788362157604_0.5844834671667267","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@matthewfl/pi-contemplator","version":"0.1.10","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.10","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"2f604445e009e453befde2934bcac74dd6cf1f2f","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.10.tgz","fileCount":50,"integrity":"sha512-0GPMUeNmJykaLBjXBsw4lmaGDzjWsOmMWVctAC7gzGSS/u5Lv4JKaeKVMf7E1DSFuVZqjWirZTbnS4c52Yanfg==","signatures":[{"sig":"MEQCIHKmjUOWXPF4p4Swss9PVd/7T9Bk9Wral/9BMa698yfTAiABoQ40ZsoApg6kaHMwFM4x1xdnoIG3nCvKpARt89Rezg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":432798},"type":"module","gitHead":"8f74a07d2e0f571f21bad29b7453eaa5876f1e30","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.10_1788364025437_0.37151594796597665","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@matthewfl/pi-contemplator","version":"0.1.11","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.11","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"7fd578a27376807bd264419ec6061ac127f0c21c","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.11.tgz","fileCount":50,"integrity":"sha512-WqV0zEdJ0p2lZv6rQ095OG5uMYQyZjtLyBVA16s/0vii0O6K33AYBMjCveNIrbFl0EXON3jfTdjtAU+yPYjiog==","signatures":[{"sig":"MEUCIQCIDazQAo44vAHQY4K+FOtJo1hMQ5r/42ZSnYcXgvToqwIgZMxRZaOSqJVs7CP/uGmjjNBCRYq/hFvfSQ+y5epwvg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":437024},"type":"module","gitHead":"24dd4680de3e99ed02fb502d7b6efdafeb5dd310","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.11_1788365493271_0.7399858029071538","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@matthewfl/pi-contemplator","version":"0.1.12","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.12","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"861d0d361a526e9db3ecb4c483ccb53240c07c58","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.12.tgz","fileCount":50,"integrity":"sha512-L+3WOH2RE++ixoAajmiAkgGb72qxnS6CD1G+Tlzt1pLvhHR1EoI5eA1+N1XJvlUgSiaKrXUqEGaaqF+dW2g6gA==","signatures":[{"sig":"MEQCIEeJQ1/LOcKsfY/g3ZxrFvuGihu6yh5RHEt4es0/s39iAiBYut/RxfPkaCd7/KsxIvkxUuyFSrnc3rX42DbBPhmwdA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":440045},"type":"module","gitHead":"c3980498b30a2f0300c0be9df1bb7b07399765ff","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.12_1788367364452_0.04779737716695531","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@matthewfl/pi-contemplator","version":"0.1.13","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.13","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"d23212498b88f08f51c5f273651fb140cfcfac16","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.13.tgz","fileCount":50,"integrity":"sha512-mDfuKNs0FB3z4J76hKh1CJSX4hyxjCorY4UMdax+mjnND0jcRBWwuLZsK9Z1kY4L1NRcCmYos0Z9sTJ4oXBpRA==","signatures":[{"sig":"MEQCIHsQhXXv8VXsv5Wb7IESEGeJeKUDMzzTdpc0yESf4X5EAiBduXIDZIs0xlHq3O6LmFtiyK32QBSzYD+Ks8BkZjhEqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":442674},"type":"module","gitHead":"38f8b0259ba9fc54afe1c1b8024c5fcccbb1427e","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.13_1788370814191_0.5536395946295896","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@matthewfl/pi-contemplator","version":"0.1.14","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.14","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ebba134f0bd7c624510ffc729df920ed8f29e7ac","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.14.tgz","fileCount":50,"integrity":"sha512-Hypth3ZzNwzzDykTquCPCf7yx57b526JBwXBwyMYDVCEiHe+YUj1Bcm1xfcDvuH1oxkOxfy9cryaawmZDCEVYA==","signatures":[{"sig":"MEQCIFfAMB76WosY/jD5Vxu670ThcuTDRHxAfvU297/C3AQeAiB0cSQ8yiKuaOFUIFDZXNJYP03UYn53jF/0ptjaR59eVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443807},"type":"module","gitHead":"8ac9fb44788c124d6c6e8d7746c2fb520fdc2f58","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.84.4","@earendil-works/pi-tui":"^0.84.4","@earendil-works/pi-agent-core":"^0.84.4","@earendil-works/pi-coding-agent":"^0.84.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.14_1788374043164_0.6077813290951968","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@matthewfl/pi-contemplator","version":"0.1.15","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.15","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"b638d4002cc060c57e8a393f6a2ee7bdd1c60ae6","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.15.tgz","fileCount":50,"integrity":"sha512-5oMFABbp9mVvhzUSq5WcME874VUC7Tr6pQXdJwk+0vaNW6I/+9cGFkPyYlEV+hvB/HXZWIban6NAdfHcUGxUkA==","signatures":[{"sig":"MEYCIQCdQyoE5A2BEaA7Yon+PDZUM+9RKe4JsmFmVfNBZAyGSgIhAKD7OAGVStVRpYBTTcqOLSxlPj9D9lvy7sAhfqb/EyGN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":445541},"type":"module","gitHead":"af00a983756fac3d7e717a0219606e8c99de2580","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.0","@earendil-works/pi-tui":"^0.85.0","@earendil-works/pi-server":"^0.85.0","@earendil-works/pi-agent-core":"^0.85.0","@earendil-works/pi-coding-agent":"^0.85.0"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.15_1788546690752_0.4851412454519537","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@matthewfl/pi-contemplator","version":"0.1.16","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.16","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"1494429b38b3c5ee21e1796e1c99363cb39ba1b6","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.16.tgz","fileCount":51,"integrity":"sha512-rbWJ8W0a6+5mbxEnDf96FxjU8ez57aBsqJsWoeP7t03i0cPtx7MYwK5KJZixJ8uN9BHD0Ulhx5X48tLz6lGMmQ==","signatures":[{"sig":"MEUCIHeWUCur2jsPSvyI84ymnVFhnW5Q7T9Ks2JM/fY1lU9FAiEAxnLgMILGkk8ClsVmmBGMHK++UpWm3w67Dfp7q/rqv14=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":445615},"type":"module","gitHead":"7f5067777bb2f99b45be33f9dadefe08e91f14cc","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","@earendil-works/pi-server":"^0.85.1","@earendil-works/pi-agent-core":"^0.85.1","@earendil-works/pi-coding-agent":"^0.85.1"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.16_1788895486443_0.6742949096294337","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@matthewfl/pi-contemplator","version":"0.1.17","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.17","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ccb208c11b962d051b63214b7036c9376e2655f9","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.17.tgz","fileCount":51,"integrity":"sha512-p+MzoWOU+Q+E2hghjjqzd2sChLpKEGMXE7RjLoS4JK1jKYceTsVw69UMYvv17BszuaOhZHcpYRnf5eDT78KZxw==","signatures":[{"sig":"MEUCIFOLq8/sFlqqFd7JTk0Mu6qXZEqFQAOzChI4a45ixbHEAiEAwBEk11x5w0y1Tc34EeKornLTUoARq8JmTTlZHEMUucs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":446103},"type":"module","gitHead":"6cda3e77c91075b81cec80691017ef4821bbda77","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","@earendil-works/pi-server":"^0.85.1","@earendil-works/pi-agent-core":"^0.85.1","@earendil-works/pi-coding-agent":"^0.85.1"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.17_1788896214940_0.18729232483433145","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@matthewfl/pi-contemplator","version":"0.1.18","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.18","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"e90b07b4952cde08f74ee74db1cc506eab758341","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.18.tgz","fileCount":51,"integrity":"sha512-MKmrBo0KoCxIzQc7QDVnHvrrvnQe0tcOdaosZaTMjiW3dbHdgf35T2dWNOLdMysiAeNYBxh05w9ly3RHjnByNQ==","signatures":[{"sig":"MEYCIQD8g3zrlthE3E7CWgA//xXXENsEzQbpsA6SJC7MmY26GQIhAM4ufRAetU5Xw9V+ImYLl9UkKvAqyDh6wAoRWFpugUQ0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":446185},"type":"module","gitHead":"362d6d32754b7caac1454944300d8f28ac3dc130","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","@earendil-works/pi-server":"^0.85.1","@earendil-works/pi-agent-core":"^0.85.1","@earendil-works/pi-coding-agent":"^0.85.1"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.18_1788904240231_0.8309775331700568","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@matthewfl/pi-contemplator","version":"0.1.19","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.19","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"7f591f5184c458d7598905fea7436eeb383a1a06","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.19.tgz","fileCount":51,"integrity":"sha512-/KQSPHuoeDEi8UadLwV3QK60T/pQb7Bfmx76u/XoZwsqlAi4DvmF88ibW2Kk9oXR+EZ9vDhxw01sjMy5KGiKMw==","signatures":[{"sig":"MEUCIAcr3ueDw7aQjyYU2mn+3vsh4q/wpXgSKWAj7HnFUxoNAiEArdY6agCVarLyoj2+uEfJPe26rQZB6dn1FJyLzD/lTgk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":448664},"type":"module","gitHead":"eb630857e479ce112efccee63b1bfcd4b2d2ec5a","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","@earendil-works/pi-server":"^0.85.1","@earendil-works/pi-agent-core":"^0.85.1","@earendil-works/pi-coding-agent":"^0.85.1"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.19_1788989563462_0.24838437724294393","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@matthewfl/pi-contemplator","version":"0.1.20","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.1.20","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"04c379be9c2b18e8aec380ebf59f87f9925574ad","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.1.20.tgz","fileCount":51,"integrity":"sha512-GBHvrwHJHX/YHs0ZYNlaRGfTHIHRuOvA48vvSgKEbhv4jZKKlC4sJpYTZh3v/ovUD7NLbLxwYRP0o+MQmHyi/g==","signatures":[{"sig":"MEQCIDxdUphswC41OgJtTE8S57u6RQdQQMfmSoe09ouYE9QeAiAoupCsdRgvMxK2R5CN6PGge4aOPtEdX2rVI+eauz/htA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":448859},"type":"module","gitHead":"d303aa0ab021f258f4b72b53902103407451f914","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.8.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.85.1","@earendil-works/pi-tui":"^0.85.1","@earendil-works/pi-server":"^0.85.1","@earendil-works/pi-agent-core":"^0.85.1","@earendil-works/pi-coding-agent":"^0.85.1"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-agent-core":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.1.20_1789161497940_0.7122167920438895","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@matthewfl/pi-contemplator","version":"0.2.0","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.2.0","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ea306f3175ab0944019191cdaea8fd9671f5b314","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.2.0.tgz","fileCount":51,"integrity":"sha512-MfyvxvNiSbVo6b2tq5d2fuG/27rKg6tCkWZBTTA3QBAGyg7RtN20XpzkAhfTFkF+rRELysR7WzMxeonZefQL4A==","signatures":[{"sig":"MEUCIDADiY8kkEEB31lj97SN7xs0clKydRdJ4JMVOfaIsAHKAiEAgYZQFPdv/WvMCjKL92F5ZqG1JF1gukqneI4hpzbYKdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBsq8n9msU2uXTJmLyySG9teqnHNSJ4yQHu9ecDO0JS+AiEAoGWnOiz1gEQPF+sh1UQjdI11adtXZtjIl58+nxVlKmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":449460},"type":"module","gitHead":"6842b72ace728558a3032dd1a16b8ffe3fb1926b","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.86.0","@earendil-works/pi-tui":"^0.86.0","@earendil-works/pi-server":"^0.86.0","@earendil-works/pi-agent-core":"^0.86.0","@earendil-works/pi-coding-agent":"^0.86.0"},"peerDependencies":{"@earendil-works/pi-ai":"^0.86.0","@earendil-works/pi-tui":"^0.86.0","@earendil-works/pi-agent-core":"^0.86.0","@earendil-works/pi-coding-agent":"^0.86.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.2.0_1789933370797_0.47933588118564785","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@matthewfl/pi-contemplator","version":"0.3.0","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.3.0","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ca073e2dc439fef4cb9c72a3a1293f8f39c57de8","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.3.0.tgz","fileCount":51,"integrity":"sha512-Y8Y57ohLvqwki+pYbnvDSEiJ5JxDCsV4nXUTi4Zn1xJINFcH79WV3LUicJH0sXYe4yU0ycAuP3L9cHDSnV20bw==","signatures":[{"sig":"MEUCIDRit0wOS/z/NxV214zHQhftF7p3Q7DnbOaPU+f7BDGsAiEAsktvVu1uB+bYZ4Y2vJJeUd5tvsWElNFr5AAJfZ5nCKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBl8yfAk023iXGtOu+h9YD7hdfNT4EpJp3qWfOs50sHbAiEAhdJlLRoxBa0iuepxJJzV38O0X3yZzXz0C1UR9MIucsw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":450045},"type":"module","gitHead":"01fc3fceee75df4c182fa083fa10eb388ec002df","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.87.0","@earendil-works/pi-tui":"^0.87.0","@earendil-works/pi-server":"^0.87.0","@earendil-works/pi-agent-core":"^0.87.0","@earendil-works/pi-coding-agent":"^0.87.0"},"peerDependencies":{"@earendil-works/pi-ai":"^0.87.0","@earendil-works/pi-tui":"^0.87.0","@earendil-works/pi-agent-core":"^0.87.0","@earendil-works/pi-coding-agent":"^0.87.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.3.0_1790027849500_0.6835228947130947","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@matthewfl/pi-contemplator","version":"0.3.1","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"author":{"name":"matthewfl"},"license":"MIT","_id":"@matthewfl/pi-contemplator@0.3.1","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"homepage":"https://github.com/matthewfl/pi-contemplator#readme","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"be4fca5c035b628482ecdb857508810abd582f89","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.3.1.tgz","fileCount":51,"integrity":"sha512-UTl9blBcpztdy8OtPmsD+6AVOd/7nH485PqzilH8T2oVIJKrMDVPqUaXwcIV2r5/wqM7cmm4GNVabKGOSH47WA==","signatures":[{"sig":"MEYCIQCC7/aXW4Q7l9N33pgW+7MGtGVsq8MzcLqN+cBldyiBzAIhALf5A+F1xy7BAIfy3AlDmgnFJc+5I8RBHZm5HMjBUM//","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHBRSW8+pZFjCSmBE1dLNAbXJx0Spc4gs+1ewv8NO5smAiBTPAB1TMpvS3vcLhjGvJbeGPHHtXoXJVqtwghczOgnAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":450444},"type":"module","gitHead":"0d7e191236ffe22094483da32bbf1e734088a809","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"_nodeVersion":"26.9.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^0.87.0","@earendil-works/pi-tui":"^0.87.0","@earendil-works/pi-server":"^0.87.0","@earendil-works/pi-agent-core":"^0.87.0","@earendil-works/pi-coding-agent":"^0.87.0"},"peerDependencies":{"@earendil-works/pi-ai":"^0.87.0","@earendil-works/pi-tui":"^0.87.0","@earendil-works/pi-agent-core":"^0.87.0","@earendil-works/pi-coding-agent":"^0.87.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-contemplator_0.3.1_1790029339206_0.9905478584236536","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"pi":{"extensions":["./src/index.ts"]},"_id":"@matthewfl/pi-contemplator@0.4.0","bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"dist":{"shasum":"4f75dbc0e7bc548de3f7089b0770ea0d7019b83d","tarball":"https://registry.npmjs.org/@matthewfl/pi-contemplator/-/pi-contemplator-0.4.0.tgz","fileCount":51,"integrity":"sha512-vB9NFylCUDOaUhXpZ6YJxzU54PP5l8IstlH3YwtLLTq3o03+Iz7c66uNZ3uIxhRapswAMljSKh9PuYOpixhExw==","signatures":[{"sig":"MEUCIBh9IMLYqWyxTSn4jtE+l3b2vBfMeKzOtTvB4CGyirHnAiEA8Mrxgv1I+AR0/yVixMNSuc410/BbYD8vy01VZYQ6fAo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDx8aQ+XatOoct/Be4niyuB7Ns/Z6fASJa3+78Ij8g/LAIgDSB3X190LG2VguTKdn+fi49uMa9vSihakpuMBhdFVf4="}],"unpackedSize":459761},"name":"@matthewfl/pi-contemplator","type":"module","author":{"name":"matthewfl"},"gitHead":"affd3d694fc12c418a11126400fc9b8d77d087a5","license":"MIT","scripts":{"test":"npm run test:unit && npm run test:e2e","test:e2e":"node tests/e2e/rpc-contemplator.mjs && node tests/e2e/rpc-contemplator-active-time.mjs && node tests/e2e/rpc-contemplator-history.mjs && node tests/e2e/rpc-summarizer.mjs && node tests/e2e/rpc-delivery.mjs && node tests/e2e/rpc-restore-review.mjs && node tests/e2e/rpc-compaction.mjs && node tests/e2e/rpc-compaction-resilience.mjs && node tests/e2e/rpc-memory-edges.mjs && node tests/e2e/rpc-observer-length.mjs && node tests/e2e/rpc-routing-isolation.mjs","test:unit":"vitest run","typecheck":"tsc --noEmit"},"version":"0.4.0","_npmUser":{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"},"homepage":"https://github.com/matthewfl/pi-contemplator#readme","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"_npmVersion":"12.0.2","description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","directories":{},"maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"_nodeVersion":"26.9.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typebox":"^1.1.38","typescript":"^5.6.0","@types/node":"^22.0.0","@earendil-works/pi-ai":"^1.0.0","@earendil-works/pi-tui":"^1.0.0","@earendil-works/pi-server":"^1.0.0","@earendil-works/pi-agent-core":"^1.0.0","@earendil-works/pi-coding-agent":"^1.0.0"},"peerDependencies":{"@earendil-works/pi-ai":"^1.0.0","@earendil-works/pi-tui":"^1.0.0","@earendil-works/pi-agent-core":"^1.0.0","@earendil-works/pi-coding-agent":"^1.0.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-contemplator_0.4.0_1790955226983_0.9441746570044023"}}},"time":{"created":"2026-08-10T17:05:32.229Z","modified":"2026-10-02T15:33:47.534Z","0.0.1":"2026-08-10T17:05:32.550Z","0.0.2":"2026-08-10T20:23:30.282Z","0.0.3":"2026-08-11T15:55:40.334Z","0.0.4":"2026-08-12T01:28:30.799Z","0.0.5":"2026-08-12T15:05:34.417Z","0.0.6":"2026-08-12T16:02:23.012Z","0.0.7":"2026-08-12T22:20:12.090Z","0.0.8":"2026-08-15T00:03:46.787Z","0.0.9":"2026-08-15T00:26:02.181Z","0.0.10":"2026-08-15T03:28:50.571Z","0.1.0":"2026-08-24T23:21:54.918Z","0.1.1":"2026-08-25T16:10:51.655Z","0.1.2":"2026-08-25T16:53:50.334Z","0.1.3":"2026-08-25T17:25:03.504Z","0.1.4":"2026-08-25T20:51:17.635Z","0.1.5":"2026-08-27T16:36:42.070Z","0.1.6":"2026-08-28T21:07:37.936Z","0.1.7":"2026-08-31T18:29:33.393Z","0.1.8":"2026-08-31T19:13:48.215Z","0.1.9":"2026-09-02T15:15:57.754Z","0.1.10":"2026-09-02T15:47:05.593Z","0.1.11":"2026-09-02T16:11:33.455Z","0.1.12":"2026-09-02T16:42:44.580Z","0.1.13":"2026-09-02T17:40:14.339Z","0.1.14":"2026-09-02T18:34:03.329Z","0.1.15":"2026-09-04T18:31:30.909Z","0.1.16":"2026-09-08T19:24:46.586Z","0.1.17":"2026-09-08T19:36:55.084Z","0.1.18":"2026-09-08T21:50:40.368Z","0.1.19":"2026-09-09T21:32:43.617Z","0.1.20":"2026-09-11T21:18:18.093Z","0.2.0":"2026-09-20T19:42:50.879Z","0.3.0":"2026-09-21T21:57:29.615Z","0.3.1":"2026-09-21T22:22:19.325Z","0.4.0":"2026-10-02T15:33:47.107Z"},"bugs":{"url":"https://github.com/matthewfl/pi-contemplator/issues"},"author":{"name":"matthewfl"},"license":"MIT","homepage":"https://github.com/matthewfl/pi-contemplator#readme","keywords":["pi","pi-agent","pi-package","extension","contemplator","observational-memory","memory","compaction","agentic"],"repository":{"url":"git+https://github.com/matthewfl/pi-contemplator.git","type":"git"},"description":"A Pi extension that keeps long-running agentic sessions on track with background memory, contemplation, and structural review.","maintainers":[{"name":"matthewfl","email":"matthewmatthewfl@gmail.com"}],"readme":"# pi-contemplator\n\n`pi-contemplator` is a [Pi](https://pi.dev/) plugin for long-running, largely unsupervised agentic sessions. It does two things:\n\n1. **Keeps memory alive across compaction.** A background **observer** records evidence and a **summarizer** progressively condenses older memories into a durable, branch-local citation graph. When Pi compacts the context window, the active memory is rendered deterministically from that ledger — fast, model-free, and lossless enough that important facts survive.\n2. **Gives the primary agent a second set of eyes.** A background **contemplator** reads the accumulated memories and watches for reasoning that is going wrong. When it finds a genuine problem, it can inject a focused, memory-cited question. For deeper, recurring structural issues, it can commission a short-lived **reviewer** that produces a durable, advisory design proposal.\n\nThe result: a long session is less likely to drift off course, get stuck in an unproductive loop, or silently compound a wrong conclusion — and when it does, it can often catch itself before the mistake poisons the rest of the work.\n\n> [!WARNING]\n> **Alpha-quality software:** `pi-contemplator` is under active development. Expect bugs, behavioral changes, and breaking configuration or memory-format changes.\n\n> [!WARNING]\n> **Significant token usage:** The plugin runs multiple background agents and will significantly increase model-token consumption and associated API costs, especially during long sessions.\n\n> [!NOTE]\n> This project is a fork of the excellent [pi-observational-memory](https://github.com/elpapi42/pi-observational-memory) plugin by [@elpapi42](https://github.com/elpapi42). It builds on that project's observational-memory and compaction foundations, replacing separate reflection/pruning workers with a provenance-preserving summarizer while adding contemplation and structural review capabilities.\n\n## Why use it?\n\nA long-running agent faces three compounding risks:\n\n- **Compaction amnesia.** Pi compacts older messages to fit the context window. Details that weren't captured deliberately are simply gone.\n- **Reasoning entrenchment.** An agent can draw the wrong conclusion from valid evidence and then repeatedly reinforce it. As the mistake accumulates in context, the agent becomes *less* likely to question it and *less* able to discover the real problem.\n- **Unproductive loops.** The agent keeps bumping into the same obstacle through slightly different approaches, burning tokens without gaining information.\n\nWithout a contemplator, a session can look like this:\n\n```text\nRun test X\n\nConclude Y from the output of X\n\nY is true\n\nY is true\n\nY is true\n\n...\n\nY is true\n\nThe agent is now stuck. Its context has been poisoned by the repeated\nassumption that Y is true, so it cannot identify the actual issue.\n```\n\nWith the contemplator running in the background, the session can recover before that conclusion becomes entrenched:\n\n```text\nRun test X\n\nConclude Y from the output of X\n\nY is true\n\nContemplator interjection: You ran a test for X and then concluded that Y is\ntrue. Did you consider A, B, and C? Each could also explain the result you\nobserved. A quick distinguishing test could be ...\n\nThat is a good point. Let me run a quick test to determine which of Y, A, B,\nor C is true.\n\nRun test ... It appears that Y and B are false, while A or C is a much better\nexplanation for the issue.\n\nA or C is true\n\nA or C is true\n\n...\n```\n\nThe contemplator does not take over the primary agent's work. It provides occasional, evidence-grounded challenges when reconsidering the current reasoning is more valuable than allowing the session to continue along the same path.\n\n## What it does for you\n\n### It catches reasoning problems before they settle\n\nThe contemplator is a \"System 2\" thinker: slower and more deliberative, focused on the larger shape of the problem while the primary agent does the hands-on work. It watches the memory ledger (not the live transcript) and looks for:\n\n- unsupported assumptions — a conclusion that depends on something never established;\n- contradictions — a recent claim that conflicts with earlier recorded evidence;\n- drift from the user's intent, priorities, or constraints;\n- overlooked alternatives — treating one explanation as settled when others are still plausible;\n- unproductive loops — several memories showing the agent returning to the same obstacle;\n- connections — relevant facts from separate memories that the primary agent never joined up.\n\nWhen it finds something worth challenging, it sends a concise, memory-cited question as an asynchronous probe. Probes appear as purple cards in the chat and are delivered to the agent's next turn — they never interrupt mid-work or force a new turn:\n\n```text\n◆ CONTEMPLATOR PROBE\n\nYou concluded that fix Y resolved the failure, citing memory [a1b2c3d4e5f6].\nEarlier, memory [d4e5f6a1b2c3] recorded that A, B, and C were also\npossible explanations. What observation would distinguish Y from A, B, and C\nbefore you build on that conclusion?\n```\n\n### It commissions deeper structural reviews\n\nSome patterns are bigger than one question. When several memories point at a *recurring* structural problem, the contemplator can request a review instead of a probe. The reviewer is a separate, short-lived, strictly-scoped agent that independently investigates the concern and, if the evidence supports it, records a durable conceptual proposal.\n\nTwo scopes are handled separately:\n\n- **Workflow** — problems in *how* the work is performed: repeatedly reconstructing the same information, reasoning at length about something that could just be observed or computed, failing to preserve a reusable result, weak feedback loops.\n- **Software** — problems in *the software being produced*: repeated special cases, several fixes touching the same missing invariant, duplicated concepts, unclear responsibility boundaries, local workarounds that hint at a missing abstraction.\n\nThe reviewer isn't just fed the concern and asked to design a fix. It independently searches the memory ledger *and* the primary agent's recorded chat history (including regex search over the transcript), looks for supporting and contrary evidence, and reaches exactly one terminal outcome: either a durable proposal with a memory id, or a conclusion that no proposal is currently justified. The primary agent receives only a compact notice pointing at the proposal:\n\n```text\n◆ CONTEMPLATOR REVIEW\n\nBACKGROUND WORKFLOW REVIEW PROPOSAL [f7a8b9c0d1e2]\n\nSeveral memories ([1111], [2222], [3333]) show the same multi-step lookup being\nrebuilt from scratch each time. The proposal suggests a reusable, indexable\ntrace that would make the relationship reproducible in seconds instead of minutes.\n\nRecall memory [f7a8b9c0d1e2] to read the full conceptual proposal when it is\nrelevant. This is advisory.\n```\n\nProposals are deliberately conceptual — the reviewer cannot write code, specify exact APIs, name files, or hand over an implementation plan. The primary agent remains the only agent grounded in the actual codebase and environment, and it decides whether, when, and how to use a proposal.\n\n### It keeps memory useful and accountable\n\nThe memory system is built to be trustworthy:\n\n- **Every memory has provenance.** Observations cite the exact source entries that support them; summaries cite at least two source memories inline and retain machine-readable backpointers. Everything gets a deterministic 12-character id computed in code, not guessed by a model.\n- **Condensation stays navigable.** Once a memory is consumed by a summary it leaves the injected active pool, but remains searchable and recallable. `recall` shows immediate backward and forward graph links so the agent can walk from a summary to its evidence or from old evidence to the summaries that consumed it.\n- **Compaction is deterministic and model-free.** The active memory the agent sees is folded from the ledger by code, not rewritten during compaction by a model. That makes compaction fast and cheap, and it means the same session state always produces the same result.\n\n## Why you can trust it in the background\n\nRunning extra agents in the background can be worrying — what if they take over, spam the user, or go off the rails? `pi-contemplator` is explicitly designed against that:\n\n- **Advisory only.** The contemplator and reviewer never modify the primary agent's work, never implement anything, and never inject instructions into the user's session. They produce questions and proposals; the primary agent decides what to do.\n- **One intervention per update.** The contemplator can send at most one probe *or* one review request per turn — never a barrage. Most turns it sends nothing at all.\n- **Grounded in evidence, not noise.** Loops must be supported by a clear pattern across *multiple* memories. The contemplator is explicitly forbidden from inferring a stall from silence, elapsed time, or a missing recent result. It may consult activity signals (cumulative tokens, tool-call count, active time) as *advisory* context, but never as proof.\n- **Sees memory, not secrets.** The contemplator reads only the memory ledger, not the live transcript, so it can't react to or interfere with in-flight work.\n- **Epistemic humility.** The contemplator is instructed not to behave as though it already knows the answer, not to praise or criticize, and not to manage the primary agent step by step. It asks questions that help *both* agents discover what's missing.\n- **Bounded and de-duplicated.** Reviews are serialized (one at a time), coalesced (no duplicate review for the same evidence and concern), and capped by a lifetime output-token budget — a review that runs out of budget records an honest \"no proposal\" rather than a half-baked design.\n\n## Background agents\n\n`pi-contemplator` uses four specialized background agents, all enabled by default:\n\n| Agent | What it does | When it runs |\n|---|---|---|\n| **Observer** | Extracts concrete, timestamped observations from the primary session, citing source entries and assigning a simple retention class. | In the background after turns, once enough new source text accumulates. |\n| **Summarizer** | Condenses related old observations and summaries into shorter, citation-linked summaries. Consumed sources leave active context but remain searchable and recallable through the graph. | When the old memory pool exceeds its token target; the newest memory pool remains protected. |\n| **Contemplator** | Watches accumulated memories for reasoning gaps, contradictions, overlooked alternatives, and recurring structural concerns; can send a focused probe or request a review. | Asynchronously after enough new memories accumulate. |\n| **Reviewer** | Performs a deep, scoped (workflow or software) structural investigation and records a durable proposal or a no-proposal conclusion. | Only when the contemplator commissions a review, and only one at a time. |\n\nThe observer and summarizer provide the durable memory substrate. The contemplator reasons over that substrate, while the reviewer is launched only when a concern warrants a deeper structural investigation.\n\n## Installation\n\n`pi-contemplator` 0.4.0 requires **Pi 1.0.0** or later.\n\nInstall the published package through Pi:\n\n```bash\npi install npm:@matthewfl/pi-contemplator\n```\n\nOr run it directly from a local checkout:\n\n```bash\npi -e ./src/index.ts\n```\n\n## Commands and configuration\n\nThe plugin works with its defaults, including the contemplator and reviewer. Contemplator probes and review notices appear as purple cards in the chat by default; use `/om:settings messages off` to hide newly sent cards without stopping their delivery to the agent.\n\nUseful commands:\n\n- `/om:status` — show memory and background-agent status, including how much recorded memory is still visible vs. pending.\n- `/om:view` — inspect visible memory (and attempt to copy it).\n- `/om:view full` — inspect the full memory ledger, including everything not yet folded into a compaction.\n- `/om:view contemplator` — inspect the contemplator's private transcript and probes.\n- `/om:view summarizer` — inspect the latest launch-local summarizer transcript, including live thinking/output and completion or failure status.\n- `/om:view reviewer` — inspect structural reviewer transcripts and outcomes.\n- `/om:settings` — inspect or change session-level settings (including `messages on|off`, `summarizer on|off`, `reviewer on|off`, `compaction on|off`).\n\nModel selection, trigger thresholds, passive mode (which stops all background work), compaction behavior, and other tuning are documented in [docs/configuration.md](docs/configuration.md). See [docs/how-it-works.md](docs/how-it-works.md) for the memory lifecycle and [docs/concepts.md](docs/concepts.md) for the mental model.\n\n## Development\n\n```bash\nnpm install\nnpm test\nnpm run test:unit\nnpm run test:e2e\nnpm run typecheck\n```\n\n`npm test` runs both the unit and RPC end-to-end suites. Use `test:unit` or `test:e2e` to run either suite independently.\n\n`test:e2e` starts a local OpenAI-compatible model server and launches isolated real Pi CLI processes in RPC mode while mocking only the external model-server boundary. The suites cover observer, summarizer, contemplator, reviewer, primary-agent, memory-tool, and compaction flows. They exercise slow and parallel tools, probe races and feedback, hidden/idle delivery, cumulative activity time, process restore, reviewer transcript resume and budget exhaustion, accepted/rejected reviews, manual/failed compaction continuations and non-restarting proactive compaction, compaction observer sidecars, malformed memory records, huge-source bounding, id collisions, role-specific model routing, feature flags, session-tree forks, and concurrent session isolation.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","readmeFilename":"README.md"}