{"_id":"@blackbelt-technology/dashboard-plugin-runtime","_rev":"20-d210feaeae350ea9936b12419a998990","name":"@blackbelt-technology/dashboard-plugin-runtime","dist-tags":{"next":"0.0.0-test-darwin-x64.3","latest":"0.8.0"},"versions":{"0.4.1":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.1","maintainers":[{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"27b6d372db6f6d90b7ef9d692909aafcfba3b9c7","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.1.tgz","fileCount":22,"integrity":"sha512-r1fbAOiN7VRjWoqcyKHMK2ZygDvLjH0vwNOGmJIU2+7+igpUaQ8yKnHMj5T+bpK8GWH4HwZtz2mwy2RnEe8pgg==","signatures":[{"sig":"MEYCIQCo3Q4+qUAVGHN2iwKFAr6X1BIOEqTpYUuVz1dguTpDqgIhAPQ1VaFyDxjgCGeagIn0xptqkxBKTel5+vuyPjrA5ozj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"43ca583844ae360f0d08667dba8a1e8e70317037","_npmUser":{"name":"mrbence","email":"dbence10@gmail.com"},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.1_1777539498039_0.08948505699356035","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.2","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.2","maintainers":[{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"e74dc8aa75d54d952e8008d5dd1b3e4bee39962e","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.2.tgz","fileCount":22,"integrity":"sha512-XVN2/+HU6O3+zBLHHP2vzlX+w5irFoErC4yPh7cFHNqAFnzKxNRdH3k+sXrAFBT6otwiq/OB26pMnR92SipEug==","signatures":[{"sig":"MEYCIQDM8zoE860c/OqMwibMcHzFe9fSQgOh5wPdelBqeLUCEAIhAJcVIJsB28yT+61QlIoKnZqSDWorSBfEvU2soEWLYYsJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"22c4d977dd23ef0759b187087c548454d1349573","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.2_1777559074297_0.9598120844061224","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.3","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.3","maintainers":[{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"834d7ec1d2b781bc5ccf036df30cacb4c7ed024f","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.3.tgz","fileCount":22,"integrity":"sha512-qFJqXgT9ahM45/lMEeh4HugG6xZklkJOjbHRY1E+y9ZV4lRdzjZnvsQKwucYcvUsU19O6P6tkqyPwjJmC2HVgg==","signatures":[{"sig":"MEUCIEZGiejm8KA9YGktJQml2xGmazPwWV3BbhQBuRQtPuMGAiEA4Z5TxbOj2zpjQjh5QUhzoTKGOljK0yLi6OyKjIGJ2WM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"52a4c85b74ec62f0af2635593cb4c0049d2b6308","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.3_1777561628040_0.21344434624027375","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.4","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.4","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"3ab7f953f24b09749239a5902c2d22d50bece416","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.4.tgz","fileCount":22,"integrity":"sha512-1G2amdRD/neF6dhGL/QIz++UrhmvmGCsm6ue/7SsEnvKeVcQgyF6gz1iiL3F/NvY/wZeue5wh373SI2MtI0vvw==","signatures":[{"sig":"MEQCIDGJH9qoX3CsaBmzMTmd3sasbFfCp0+12M8Ju3IL6FjHAiBZqwZi0tmbSGiwNQGbKO6owWFoC929nplM4ht5tsDhIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"fe98777dc15a361527ccbd8affd384f083f52dc7","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.4_1777571838971_0.06591908870232999","host":"s3://npm-registry-packages-npm-production"}},"0.4.5-rc.1":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.5-rc.1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.5-rc.1","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"099606b0d2d0e32d5f9d463afbccf1c18429dd34","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.5-rc.1.tgz","fileCount":22,"integrity":"sha512-2Ta5f58v7qZ6EsKNyd9gEfflRkcCuTksI7EzR3Eyacrzim3jGJKxG/d95XaxcwHLUa/ia2QLb9ews4oYVkSN1A==","signatures":[{"sig":"MEUCIE49jBiyxT5Y8/rHgB1JsCFhXddSr9uvM0Su/GgevXJjAiEAtLA/U1FTQNJRkEOKHT0WBSts18ojqp4KyxKnQ0fogNg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.5-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87385},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"32ddcd3eb4d3825bc1053bec5eb888cbc92e733b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.5-rc.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.5-rc.1_1777661516622_0.17860353887419755","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.5","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.5","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"3ed6c52d3459e03b942ac678b8052576d768832f","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.5.tgz","fileCount":22,"integrity":"sha512-tsWzSSjfGvXd/J7Uly7fFcYTrOKT+u/YuQUKdKAT3d4HO/zblpZyO5/fWP2bWJvUwqGYXVfVz5O0I9GQXM1esg==","signatures":[{"sig":"MEUCIBfrdkCv3yOwRUa1KGTQL7tbBiuB22SF35d1Hg8ccXVxAiEAj0soJbCYtekSVmxPAzx5po4KdV6u+VfLpvjgNj4AaQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"c048dc6fa6a452b1003e30266533b50afed08382","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.5_1777662528085_0.27669059584368183","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-darwin-x64.1":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.0.0-test-darwin-x64.1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.0.0-test-darwin-x64.1","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"8123907a55657daf782ec974e61e27426a0bac19","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.0.0-test-darwin-x64.1.tgz","fileCount":22,"integrity":"sha512-shUCRTbkKanrO03UlrcrIsiSYu4m5JoxjRBOkfk3poi55IQLKtvgSYDaSyBIYFFrLwXeEAj5fFo5yOZx4Vyzrg==","signatures":[{"sig":"MEUCIQDS2VAC50oBa/Q7u15aRRMIAujsF9W2wxYsTDbmR9TUzAIgUD6muhkGJEJnhCtQSefl2CyyEwNH8doLl6sX1F1hHu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.0.0-test-darwin-x64.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87411},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"a91af1f656c359b619456a97cfdae919a59c0fdf","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.0.0-test-darwin-x64.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.0.0-test-darwin-x64.1_1777742502260_0.11424246230802293","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-darwin-x64.2":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.0.0-test-darwin-x64.2","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.0.0-test-darwin-x64.2","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"b888ac180f257cb8fadeca81e1800421d762fb0d","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.0.0-test-darwin-x64.2.tgz","fileCount":22,"integrity":"sha512-xLO2f3MJDOMERWlnMgUCg7gj9f8FZOpz+Zc0+xGJmG4MIyDZgDEG+sqW00h5+pstdUbrUaE2S4p/En/OmRiuww==","signatures":[{"sig":"MEYCIQD0TbdN1FWCKArmeev+tWf7qf0tSA4DeqwIhr12DrrypgIhALCP+xIpEVcOSpFRiy6EwF3pzYtjAzLDtO+U7Yjt9SVT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.0.0-test-darwin-x64.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87411},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"cc513647aba2b542dc11507437ea3fa013742cdf","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.0.0-test-darwin-x64.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.0.0-test-darwin-x64.2_1777744404170_0.7120676373379196","host":"s3://npm-registry-packages-npm-production"}},"0.0.0-test-darwin-x64.3":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.0.0-test-darwin-x64.3","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.0.0-test-darwin-x64.3","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"50590e402f6a9b04c45d1930d4e9a196de005aac","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.0.0-test-darwin-x64.3.tgz","fileCount":22,"integrity":"sha512-Jh8lQLT4oHfYGh+IIMGtmUfKDiA8Dy/PqaoM4DR7s2s5RAqPgE9VtC7lQAZ/IG1wiADxBlCT5iKugABYsk8rjA==","signatures":[{"sig":"MEUCIBa+kss7absSJABWLK2isp16HmJSNspEyrEChA5lbbavAiEAlR5QJpKlF/lIBiQeyhAHqmpxb9xwTUB5HK7AFoZQuas=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.0.0-test-darwin-x64.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87411},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"9e8ed87fdd63e1059febfefd1ea20a93c9ca5282","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.0.0-test-darwin-x64.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.0.0-test-darwin-x64.3_1777745888130_0.06185076822106561","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.4.6","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.4.6","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"ec7169125c33c2c91d1d54bdc42dab1af7abc08d","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.4.6.tgz","fileCount":22,"integrity":"sha512-NJFe15TCQjO4gtsrkmPboYq4TSYMGX68Z1LqVaRsA1q3hwidW006JIelwuaW9HOgy3wOvU54ketO0VtyiXNDVg==","signatures":[{"sig":"MEUCIG76QcM6eqyTkZ1GW1NOImAXxvSRxQh7jnqJrJX54kRoAiEA73MVeZX+RNTOZIA3+EvUcYL8pk9eums1RHhNrajOguU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.4.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87375},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"0dd9bba1feb5482240c74e8a1a26471dda831109","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.4.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.4.6_1777751905183_0.5786145561951497","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.5.0","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.5.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"819c4f5d30731afeb28160aeb5f251e3db19f33a","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.5.0.tgz","fileCount":22,"integrity":"sha512-mz5a3vtel1Rr8feHdUVFkbkHmXCL9vKj5IcoqDXH8okBbKOkbo1mrM8Pk4qG4ElXxI/RmsWgXlnNM90wxF/4iQ==","signatures":[{"sig":"MEUCIQCSL+l1c+XXdr5UC0OJuff21p9ce1vGkibsSg35x2ASSQIgVcW/0oRgiMRRe9tyNPoDcJFUfL//anJSB60g0s0CIO0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87577},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"cca7c539436760ebb3beec3e319c75d87fc827db","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.13.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.5.0_1778028434548_0.21086585244470624","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.5.1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.5.1","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"70b529495886a8dcfb613c637f0fb29490b67ec8","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.5.1.tgz","fileCount":22,"integrity":"sha512-dEC95pcwIvBRGPaAscYtr6dCVTJ1LoAijyV4U+lOysfFCOj46AxH5/G796oMfiiyPVlqLmSO67idHWGSGdOwGQ==","signatures":[{"sig":"MEYCIQDyFzL9NAwKKxYCVgunhdbfJwzdax5VB/Qmic9RBk+EwgIhAJxhJALNozFAo2UqrrluyiyDdbiWNGMfGRj1ieWVwieF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87577},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"}},"gitHead":"99d8a74e59a33393fb4830b659c65badad3375fc","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.14.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.5.1_1778269028322_0.43622467387868524","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.5.2","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.5.2","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"6b6e53f6bbbca424b435e4abfe983711fe6fd227","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.5.2.tgz","fileCount":23,"integrity":"sha512-zFoQ1iR9F9PU3Ar01L6vaY0femaLKKqF/EKvr3NUp7fCvahpb7g0BM3R6uaD0ziNXzUcGUilWtcUHHuN+rN7YQ==","signatures":[{"sig":"MEUCIQDGO2vi6ogFd0RPe3xOjJRVattbl39ROGfZXlj8/YyynAIgPiUqyCSqRHR4t+6Qr0E3pG8ANxRqXfv9dHtgWUEwrkk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105363},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"1e26476691ed7eab6936a36c0d39fd4a51d55363","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.14.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.5.2_1778505713209_0.3405492459007906","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.5.3","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.5.3","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"d3a8387712fec8ca7eceda526f2ab36928101146","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.5.3.tgz","fileCount":23,"integrity":"sha512-jWvqTFmd2rWQmNB33IkG5jir9pYNlMxBKixeLSFoU8DLdcF7HrfBI0uZPGi2aOeiAb8K0+APrOIzHIt2PFCflA==","signatures":[{"sig":"MEUCIAwKlyq23ANTsPFYECFTkkMgx+nlMZ2vaB9qKaJ2OqNfAiEA9NwjSaXQ3GRI/MDhyshL+BF5p6vn6wGgEk06SzPa7bg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105363},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"f22728f095e8396a8c08a8b9a9dfdb808f8249e0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4f97d9be-0faf-4d5b-8ff4-1922892527b8"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.14.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.5.3_1778511685848_0.5130678875206247","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.5.4","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.5.4","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"4e8641168316c6b7b8b48340a2de2b7e271e3fcf","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.5.4.tgz","fileCount":51,"integrity":"sha512-IdWASbrhcROo/PDiUSJlD2Qkf2lA3bv8I0B9SzJnflkk2CsSVylr5YINlBj97542V+vXrSus4RQ90ZSMY2IF2w==","signatures":[{"sig":"MEQCIF/USM833q5uDPuVOl7GwQjX0QsahrcdWM/1k6Rr9/BJAiA910JFmq+tKNEd7xz/2U+aiN+koRdHybNsinZnRzmlfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":289146},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./test-support":{"types":"./src/test-support/index.ts","default":"./src/test-support/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"f3daf2a911bfbadb903f85c16c0ab9ab3a54af64","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f12a3f4d-c4a8-4444-a28d-ad64e2930f55"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.15.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0","wouter":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.5.4_1779785384928_0.4273194559631923","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.6.0","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.6.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"2b9fa8ac353cc25aac06c4be802b8a53dea14ff2","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.6.0.tgz","fileCount":61,"integrity":"sha512-x9G4ZsHJk4pAPWs33EOdDkTqXap3m+xx2gMFqR7n7OqfcfRrI5WQ50P+rDe89o/woasxZlIRWYce9WMedPSF4A==","signatures":[{"sig":"MEQCICrfMThI50saO/ibeWsz6MOq4R2R/0Nrfneqejvf4aZQAiAlviTiMiR46t1SyrmuN1mTvBa8f9iuY5O/578bbzGmyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":345988},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./test-support":{"types":"./src/test-support/index.ts","default":"./src/test-support/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"70c087ba97d3b7a9997767f7c9c758ac49d998f2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f12a3f4d-c4a8-4444-a28d-ad64e2930f55"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.12.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0","wouter":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.6.0_1784565521546_0.646357862555931","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.6.1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.6.1","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"b95bcf0ecd1c98562f8604b1a3934af9488ff6e9","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.6.1.tgz","fileCount":61,"integrity":"sha512-9G2Z2LT1WLyY3HCQwL3+8Uvf+3VoeiA3W/2SSc1AbnL1Yu6uGpcucgCGMr8ss2kMNl3zHI7569BvbZvhArbJmA==","signatures":[{"sig":"MEUCIQDySoi7xRGHcHJh/ntPpoRdpr/sCSA7iAnX2QWDRDVElQIgeWvLE8Z1/gNogvqHuxBc43mCpHypUAWQ5UHgrfcVMu4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":345988},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./test-support":{"types":"./src/test-support/index.ts","default":"./src/test-support/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"88a0cf3cc7d7c7c4e44eb61df3cceff19ed919ad","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f12a3f4d-c4a8-4444-a28d-ad64e2930f55"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"11.12.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.6.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0","wouter":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.6.1_1784571654697_0.3224411029468701","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.7.0","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.7.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"46baaa71654e70418aa9836c52ed84ebb9335e4c","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.7.0.tgz","fileCount":63,"integrity":"sha512-hDLnVTPZj9sGawhXMe696VH3sFfFU+H1q7sJJrTX+K5dewBZlroRjayo++m1m2rg6o6bTgASGN1njs4U+cx4Ug==","signatures":[{"sig":"MEYCIQDZqbgUvRPzNn5imYf09+7GnBFIRu/8/Nu8xlfuHYFP5wIhANvVaDjSaMZ7EO5cWbgXoJXF/TI1Jlv+lytqTyUs2+fD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":354963},"type":"module","exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./test-support":{"types":"./src/test-support/index.ts","default":"./src/test-support/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"}},"gitHead":"9203d6a89f1b81c516e9351072ee5cb4c6579e0a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f12a3f4d-c4a8-4444-a28d-ad64e2930f55"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/dashboard-plugin-runtime"},"_npmVersion":"12.0.1","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vite":"^6.0.0","react":"^19.0.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3"},"peerDependencies":{"react":">=18.0.0","wouter":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/dashboard-plugin-runtime_0.7.0_1784898973905_0.5916219209536726","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@blackbelt-technology/dashboard-plugin-runtime","version":"0.8.0","description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","license":"MIT","type":"module","repository":{"type":"git","url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","directory":"packages/dashboard-plugin-runtime"},"publishConfig":{"access":"public"},"exports":{".":{"types":"./src/index.ts","default":"./src/index.ts"},"./context":{"types":"./src/plugin-context.tsx","default":"./src/plugin-context.tsx"},"./server":{"types":"./src/server/index.ts","default":"./src/server/index.ts"},"./vite-plugin":{"types":"./src/vite-plugin/index.ts","default":"./src/vite-plugin/index.ts"},"./manifest-validator":{"types":"./src/manifest-validator.ts","default":"./src/manifest-validator.ts"},"./test-support":{"types":"./src/test-support/index.ts","default":"./src/test-support/index.ts"}},"peerDependencies":{"fastify":"^5.0.0","react":">=18.0.0","vite":"^6.0.0","wouter":"^3.0.0"},"dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.8.0","@mdi/react":"^1.6.1","ajv":"^8.17.1"},"devDependencies":{"@testing-library/jest-dom":"^6.6.3","@testing-library/react":"^16.1.0","@types/react":"^19.0.0","@vitejs/plugin-react":"^4.3.4","ajv":"^8.17.1","react":"^19.0.0","vite":"^6.0.0"},"gitHead":"9373dfa416660a285475febc0383608fe14270b1","_id":"@blackbelt-technology/dashboard-plugin-runtime@0.8.0","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","_nodeVersion":"24.19.0","_npmVersion":"12.0.2","dist":{"integrity":"sha512-TLHnrcnisYTlmmgWypAyO0++kaZagcx3+ibNwJCxjFfG2c3nuM/X5VfI72IcTAeyS+PAqzKNlEiYX25Y1Ti06Q==","shasum":"e9389868e352dfdf690f5b4ec435c7635ce03df0","tarball":"https://registry.npmjs.org/@blackbelt-technology/dashboard-plugin-runtime/-/dashboard-plugin-runtime-0.8.0.tgz","fileCount":31,"unpackedSize":229889,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fdashboard-plugin-runtime@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCEaoOkP8ab8+kwNS8scsbjVK3i04n4/d7KJg15Kq5HaAIgL5OzF7HWqXJdtJfI7MxxgLkO3yT19mhHN0igcnPsXkA="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f12a3f4d-c4a8-4444-a28d-ad64e2930f55"}},"directories":{},"maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dashboard-plugin-runtime_0.8.0_1787745919837_0.8569575350554286"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-30T08:58:17.935Z","modified":"2026-08-26T12:05:20.357Z","0.4.1":"2026-04-30T08:58:18.176Z","0.4.2":"2026-04-30T14:24:34.482Z","0.4.3":"2026-04-30T15:07:08.172Z","0.4.4":"2026-04-30T17:57:19.116Z","0.4.5-rc.1":"2026-05-01T18:51:56.764Z","0.4.5":"2026-05-01T19:08:48.217Z","0.0.0-test-darwin-x64.1":"2026-05-02T17:21:42.414Z","0.0.0-test-darwin-x64.2":"2026-05-02T17:53:24.311Z","0.0.0-test-darwin-x64.3":"2026-05-02T18:18:08.273Z","0.4.6":"2026-05-02T19:58:25.338Z","0.5.0":"2026-05-06T00:47:14.683Z","0.5.1":"2026-05-08T19:37:08.491Z","0.5.2":"2026-05-11T13:21:53.349Z","0.5.3":"2026-05-11T15:01:26.028Z","0.5.4":"2026-05-26T08:49:45.063Z","0.6.0":"2026-07-20T16:38:41.752Z","0.6.1":"2026-07-20T18:20:54.832Z","0.7.0":"2026-07-24T13:16:14.056Z","0.8.0":"2026-08-26T12:05:19.984Z"},"bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","repository":{"type":"git","url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","directory":"packages/dashboard-plugin-runtime"},"description":"Plugin loader, slot registry, slot consumers, and context API for pi-dashboard","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"readme":"# @blackbelt-technology/dashboard-plugin-runtime\n\nPlugin loader, slot registry, slot consumers, plugin context API, and Vite plugin for pi-dashboard.\n\n## Import paths\n\n| Path | Contents |\n|------|----------|\n| `@blackbelt-technology/dashboard-plugin-runtime` | Slot consumers, registry types, barrel |\n| `@blackbelt-technology/dashboard-plugin-runtime/context` | Client-side hooks (`usePluginConfig`, `useAllSessions`, etc.) |\n| `@blackbelt-technology/dashboard-plugin-runtime/server` | Loader, `ServerPluginContext`, config validator |\n| `@blackbelt-technology/dashboard-plugin-runtime/vite-plugin` | `viteDashboardPluginsPlugin` |\n\n**Plugins MUST only import from these public paths.** Importing from `packages/client/`, `packages/server/`, or any other internal package is banned and will fail the lint suite.\n\n## Minimum manifest\n\nAdd a `pi-dashboard-plugin` field to your package's `package.json`:\n\n```json\n{\n  \"name\": \"@blackbelt-technology/my-feature-plugin\",\n  \"pi-dashboard-plugin\": {\n    \"id\": \"my-feature\",\n    \"displayName\": \"My Feature\",\n    \"priority\": 100,\n    \"client\": \"./dist/client/index.js\",\n    \"server\": \"./dist/server/index.js\",\n    \"claims\": [\n      { \"slot\": \"session-card-badge\", \"component\": \"MyFeatureBadge\" }\n    ]\n  }\n}\n```\n\nFields:\n- `id` — globally unique kebab-case id.\n- `priority` — sort order for multi-contribution slots. Lower = rendered first. Default 1000; first-party = 100.\n- `client` — path to the built client entry (exporting React components by name).\n- `server` — optional path to the server entry (exports `default function registerPlugin(ctx: ServerPluginContext)`).\n- `bridge` — optional path to a pi-extension/bridge entry (auto-registered into `~/.pi/agent/settings.json` under `dashboard-<id>`).\n- `configSchema` — optional relative path to a JSON Schema 7 file for plugin config validation.\n- `claims` — array of slot claims.\n\n## Slot claims\n\nEach claim targets one slot:\n\n```json\n{ \"slot\": \"session-card-badge\", \"component\": \"MyBadge\" }\n{ \"slot\": \"tool-renderer\", \"toolName\": \"MyTool\", \"component\": \"MyToolRenderer\" }\n{ \"slot\": \"command-route\", \"command\": \"/myfeature\", \"component\": \"MyFeatureView\" }\n{ \"slot\": \"anchored-popover\", \"trigger\": \"my-trigger-button\", \"component\": \"MyPopover\" }\n{ \"slot\": \"settings-section\", \"component\": \"MySettings\", \"tab\": \"general\" }\n```\n\n### `settings-section` tab field\n\nUse `tab` to control which tab of the Settings page your section appears in:\n\n| Value | Tab |\n|-------|-----|\n| `general` (default) | General |\n| `servers` | Servers |\n| `packages` | Packages |\n| `providers` | Providers |\n| `security` | Security |\n| `advanced` | Advanced |\n\n## Client-side PluginContext API\n\nPlugin client components receive props from the slot consumer. Hooks are available via the nearest `PluginContextProvider`:\n\n```ts\nimport {\n  usePluginConfig,\n  useAllSessions,\n  useSessionState,\n  usePluginLogger,\n  usePluginSend,\n  usePluginRouter,\n} from \"@blackbelt-technology/dashboard-plugin-runtime/context\";\n\nfunction MyBadge({ session }) {\n  const config = usePluginConfig<{ enabled: boolean }>();\n  const logger = usePluginLogger(); // logs as [plugin:my-feature]\n  const send = usePluginSend();\n  // ...\n}\n```\n\n`usePluginConfig<T>()` is reactive — it re-renders when `POST /api/config/plugins/<id>` succeeds and the server broadcasts `plugin_config_update`.\n\n**You MUST call these hooks from within a slot contribution component** (i.e. inside a `CurrentPluginLayer`). Calling them from outside throws a descriptive error.\n\n## Server-side ServerPluginContext API\n\nYour server entry must export a default `registerPlugin` function:\n\n```ts\n// packages/my-feature-plugin/server/index.ts\nimport type { ServerPluginContext } from \"@blackbelt-technology/dashboard-plugin-runtime/server\";\n\nexport default async function registerPlugin(ctx: ServerPluginContext): Promise<void> {\n  ctx.fastify.get(\"/api/my-feature/status\", async () => {\n    return { ok: true };\n  });\n\n  ctx.logger.info(\"my-feature plugin loaded\");\n}\n```\n\nAvailable on `ctx`:\n- `fastify` — Fastify instance for REST routes.\n- `sessionManager` / `eventStore` — read-only dashboard state.\n- `broadcastToSubscribers(msg)` — send a WebSocket message to all subscribed browsers.\n- `registerPiHandler(type, handler)` / `registerBrowserHandler(type, handler)` — hook into WebSocket message flows.\n- `getPluginConfig<T>()` — read this plugin's config from `~/.pi/dashboard/config.json#plugins.<id>.*`.\n- `updatePluginConfig<T>(partial)` — validate, merge, persist, and broadcast `plugin_config_update`.\n- `logger` — namespaced logger (`[plugin:<id>]`).\n\n## Bridge auto-register\n\nIf your manifest declares `bridge`, the dashboard auto-registers it in `~/.pi/agent/settings.json` under `dashboardPluginBridges[\"dashboard-<id>\"]` on server startup. The dashboard removes the entry when the plugin is disabled.\n\nThe `dashboard-` key prefix is reserved. User-owned extension entries in `packages[]` are never touched.\n\n## Plugin config persistence\n\nPlugin settings live at `~/.pi/dashboard/config.json#plugins.<id>.*`.\n\n```json\n{\n  \"plugins\": {\n    \"my-feature\": { \"enabled\": true, \"pollInterval\": 30 }\n  }\n}\n```\n\nIf your manifest declares `configSchema`, the loader:\n- Applies schema `default` values on read.\n- Validates writes before persisting (rejects with `ValidationError` on schema violation).\n\n## Failure isolation rules\n\n- A plugin throwing during manifest validation, server-side load, or client-side render does NOT crash the dashboard.\n- Failures are reflected in `/api/health.plugins[]` as `{ loaded: false, error: \"...\" }`.\n- Slot consumer error boundaries catch React render errors per-claim (not per-slot), so one plugin crashing does not suppress siblings.\n\n## Demo plugin\n\n`packages/demo-plugin/` is a private fixture package that exercises the runtime end-to-end. It is **excluded from production builds** (manifest declares `fixture: true`). Do not use it as a template for real plugins.\n","readmeFilename":"README.md","license":"MIT"}