{"_id":"@baggiiiie/pi-lazy-load","name":"@baggiiiie/pi-lazy-load","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@baggiiiie/pi-lazy-load","version":"0.0.1","type":"module","keywords":["pi-package"],"pi":{"extensions":["./src/index.ts"]},"peerDependencies":{"@mariozechner/pi-coding-agent":"*"},"gitHead":"8263bb61dc3c75b06603b9a54392d7cc9e6ce130","_id":"@baggiiiie/pi-lazy-load@0.0.1","description":"Lightweight Pi extension that registers stub slash commands and loads optional extensions on demand.","_nodeVersion":"25.5.0","_npmVersion":"11.14.1","dist":{"integrity":"sha512-TXkusOr26WEGX0RneyKdmtzib3HI5K7sDGKWYPVPE/+c0VwxX8lRUlcxoYx8I8HhUiT5rMkRrWYv2K2h5YvYlA==","shasum":"edab99e9ddc8145b29499b1b09551965412686ac","tarball":"https://registry.npmjs.org/@baggiiiie/pi-lazy-load/-/pi-lazy-load-0.0.1.tgz","fileCount":4,"unpackedSize":5840,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGDddBzLNTMZeyIea9RwaHFnslOGa1i0mLmZYuAiyikaAiEA4cQ1kRFlaWqNz9UVxGPzLBpfgnBapS1YNHh+qcp7fhc="}]},"_npmUser":{"name":"baggiiiie","email":"yc@yingchao.dev"},"directories":{},"maintainers":[{"name":"baggiiiie","email":"yc@yingchao.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-lazy-load_0.0.1_1779180927378_0.7898365346710994"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-19T08:55:27.261Z","0.0.1":"2026-05-19T08:55:27.513Z","modified":"2026-05-19T08:55:27.726Z"},"maintainers":[{"name":"baggiiiie","email":"yc@yingchao.dev"}],"description":"Lightweight Pi extension that registers stub slash commands and loads optional extensions on demand.","keywords":["pi-package"],"readme":"# pi-lazy-load\n\nLightweight Pi extension that registers stub slash commands and loads optional extensions on demand.\n\n## How it works\n\nOn startup, the extension reads `lazy-extensions.json` and `settings.json` from `~/.pi/agent`, normalizing entries into command/path pairs. It registers each command as a stub that, when invoked for the first time, dynamically imports the extension's module, calls its exported `install(pi)` (or `default`) function, and marks it loaded. Subsequent invocations are no-ops. Use `/lazy:list` to check which stubs are loaded.\n\n## Configuration\n\nAdd lazy extensions in `~/.pi/agent/settings.json`:\n\n```json\n{\n  \"lazyExtensions\": [\n    {\n      \"command\": \"autoresearch\",\n      \"description\": \"Load autoresearch extension\",\n      \"path\": \"git/github.com/davebcn87/pi-autoresearch/extensions/pi-autoresearch/index.ts\"\n    }\n  ]\n}\n```\n\nPaths are resolved relative to `~/.pi/agent` unless absolute or `~/...`.\n\nUse `/lazy:list` to see configured entries.\n","readmeFilename":"README.md","_rev":"1-74ea186862bf7c5e3e947e4861c8e1df"}