{"_id":"@hachej/boring-automation","_rev":"31-b70ec7d64e6d5994d074bfed7afdea67","name":"@hachej/boring-automation","dist-tags":{"latest":"0.1.111"},"versions":{"0.1.71":{"name":"@hachej/boring-automation","version":"0.1.71","license":"MIT","_id":"@hachej/boring-automation@0.1.71","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"77229b966243bf87a39b923f3a4e3b4c21e3862b","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.71.tgz","fileCount":8,"integrity":"sha512-x2YRyaaNfCu67aOwRYzjbAfr/ryAvEgjTgQXtja4WkMult+FEuft7meKD9cMr+ICVx5/EPbPnRGowtKNmGptAA==","signatures":[{"sig":"MEQCIEByO3Jd7/aN8hvoe4NosxbEyIEu29kOf/Fq6qkT0UeRAiAZgauGo/XEuKZo5WlITifU7RsfMtdmguHVx8Tq4HAmJw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41120},"type":"module","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"gitHead":"71ab61934dc888038387cbab2e0aa4f90435d05f","private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"hachej","email":"julien.hurault@sumeo.io"},"repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"10.9.4","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.1","dependencies":{"zod":"^3.23.0","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"workspace:*","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"workspace:*"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.71_1783774759852_0.29231245176017184","host":"s3://npm-registry-packages-npm-production"}},"0.1.79":{"name":"@hachej/boring-automation","version":"0.1.79","license":"MIT","_id":"@hachej/boring-automation@0.1.79","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"eacac3412d22aa45576e9d48fef2fd453fa3fba3","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.79.tgz","fileCount":9,"integrity":"sha512-Wuv63OHAe+b+CIo6roVVgOXCu7n7bJuFqNS35wjfwaKTsb0t/pxaVovYK2KkHAL0PJyc9ssfmnijk+Zh5o8BIw==","signatures":[{"sig":"MEQCIG4AM+yWtMkUci71EFb1OVM3A5VkaIgELjqiIXVWgZssAiAaLFyHPlcR3KqQGD7PdJTEY++zPnbT+Ty0yRczgvUSww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.79","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":130387},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.79.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.79.tgz","_integrity":"sha512-Wuv63OHAe+b+CIo6roVVgOXCu7n7bJuFqNS35wjfwaKTsb0t/pxaVovYK2KkHAL0PJyc9ssfmnijk+Zh5o8BIw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.79"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.79","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.79"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.79_1783800438488_0.07769652890559131","host":"s3://npm-registry-packages-npm-production"}},"0.1.80":{"name":"@hachej/boring-automation","version":"0.1.80","license":"MIT","_id":"@hachej/boring-automation@0.1.80","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"50ef1ca926253b114e1fa3d11c16f7b87e8b4d8e","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.80.tgz","fileCount":9,"integrity":"sha512-sH0p+Ksdge+laIxI1jlvvEeXD/9R2R38mbKi7cfOIzMQLusd6wmQfIwaf51dhvruJgLJBUFO1NVbAvEVw6PrSQ==","signatures":[{"sig":"MEUCIEmwBRzef3G/eMjqyhaDB6tuXKeRnj128UcPIwodJH59AiEAokd4VoNqG60UjAeZpAF5IRrxSlxOWqR9of1+KJl7u2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.80","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":131531},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.80.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.80.tgz","_integrity":"sha512-sH0p+Ksdge+laIxI1jlvvEeXD/9R2R38mbKi7cfOIzMQLusd6wmQfIwaf51dhvruJgLJBUFO1NVbAvEVw6PrSQ==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.80"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.80","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.80"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.80_1783842736781_0.6024243146235411","host":"s3://npm-registry-packages-npm-production"}},"0.1.81":{"name":"@hachej/boring-automation","version":"0.1.81","license":"MIT","_id":"@hachej/boring-automation@0.1.81","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"114844d50931b3901b07cf53becce6bae731605c","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.81.tgz","fileCount":9,"integrity":"sha512-UDyd9+tJVlD/S1dFfbCqCnI+SPRTbbsc7rYTCYHcf34f5U34pN/3rALxH+I9ejpOEI3D/gc9bHtyJyn06D1XoA==","signatures":[{"sig":"MEQCIEEmFsga4u0ziEd95KIitWspb5wXW1edDUq0rH0Rq5ciAiA6/tvY2aIAel12fS0fh7I9iSEMa1o7PGnqTxN+Q/Gbng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.81","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.81.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.81.tgz","_integrity":"sha512-UDyd9+tJVlD/S1dFfbCqCnI+SPRTbbsc7rYTCYHcf34f5U34pN/3rALxH+I9ejpOEI3D/gc9bHtyJyn06D1XoA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.81"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.81","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.81"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.81_1783869133590_0.6934185636237526","host":"s3://npm-registry-packages-npm-production"}},"0.1.82":{"name":"@hachej/boring-automation","version":"0.1.82","license":"MIT","_id":"@hachej/boring-automation@0.1.82","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"92930f6e1769480475cf66f62afa4973b362203e","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.82.tgz","fileCount":9,"integrity":"sha512-Cp/YQcpzGPFX6IlqPWIDFoH+Z984Xyvt1Fhh3/LYLX8KF8WmI2S8dSEfMOo69bqNYg3c3yO893NWcqMAUCpMYg==","signatures":[{"sig":"MEQCIC0yBTuqb4ctgDgpJU0Pwksd0N1QOAlNIMwXw6ySY5zIAiA6PGpA6SrZAzimDl48HbZITHb1ipckPd1JwpDUY/JoeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.82","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.82.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.82.tgz","_integrity":"sha512-Cp/YQcpzGPFX6IlqPWIDFoH+Z984Xyvt1Fhh3/LYLX8KF8WmI2S8dSEfMOo69bqNYg3c3yO893NWcqMAUCpMYg==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.82"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.82","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.82"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.82_1783921286020_0.24406950133041616","host":"s3://npm-registry-packages-npm-production"}},"0.1.83":{"name":"@hachej/boring-automation","version":"0.1.83","license":"MIT","_id":"@hachej/boring-automation@0.1.83","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"a84bc4c7ff5b85491d8d077376a757e8d6e23a54","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.83.tgz","fileCount":9,"integrity":"sha512-nfpWZZbiCMRKm0iKXugMJ37nhlttR3E0CL0mc+FdS6QFssVuUOWVv96D3/agTJNXWQD1e086OcPQxuf5K3LpZA==","signatures":[{"sig":"MEUCIQCHTb9FgMdTHZMibf/Z9A2JCupqJWD+IvLBlkTSrcH/gwIgZ4t8rwMWjsKuVxZhJCKZ7ObpkIXLuCD4s92JCy3P6lk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.83","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.83.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.83.tgz","_integrity":"sha512-nfpWZZbiCMRKm0iKXugMJ37nhlttR3E0CL0mc+FdS6QFssVuUOWVv96D3/agTJNXWQD1e086OcPQxuf5K3LpZA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.83"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.83","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.83"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.83_1783928685499_0.940948657881945","host":"s3://npm-registry-packages-npm-production"}},"0.1.84":{"name":"@hachej/boring-automation","version":"0.1.84","license":"MIT","_id":"@hachej/boring-automation@0.1.84","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"93dd0f53e093d6c2eb01768b43bfb438d59254c4","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.84.tgz","fileCount":9,"integrity":"sha512-B/qFaf0Bp/vvTj0T/JurzmhGDhfRUzDamUg/fHXYkZa1IoVcXD102+SsYIkZfZmlN/SHwcEeG1lp3+lNuBSItw==","signatures":[{"sig":"MEUCIHjhiydA6uz0P0lQzCxRNmDYtqWvyNG15XVPFJ6A/QcHAiEAgKV31y4jSv71jFmR8Nj9IrP9GO/efT8RO9UL4DP/78g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.84","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.84.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.84.tgz","_integrity":"sha512-B/qFaf0Bp/vvTj0T/JurzmhGDhfRUzDamUg/fHXYkZa1IoVcXD102+SsYIkZfZmlN/SHwcEeG1lp3+lNuBSItw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.84"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.84","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.84"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.84_1783937926484_0.4742368922309206","host":"s3://npm-registry-packages-npm-production"}},"0.1.85":{"name":"@hachej/boring-automation","version":"0.1.85","license":"MIT","_id":"@hachej/boring-automation@0.1.85","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"de8f37c4d503c750ee157d1067a8c882992b2620","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.85.tgz","fileCount":9,"integrity":"sha512-R5q3fNyjQ9pHq7xt16DyqDSlEQBp5OaaHqjFVfymTM1TwpA/6e906g3fyRxgwdY1tt1fAETW/UJmk1yxu8Ogzw==","signatures":[{"sig":"MEUCIH/ohSGD1xtBb++9WnakTTuCf8nbb6IWrhHomtz4ateiAiEAgJFuzOfI13qMgewV/7bNlCADA3xVcpqRxO335P/9/N4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.85","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.85.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.85.tgz","_integrity":"sha512-R5q3fNyjQ9pHq7xt16DyqDSlEQBp5OaaHqjFVfymTM1TwpA/6e906g3fyRxgwdY1tt1fAETW/UJmk1yxu8Ogzw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.85"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.85","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.85"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.85_1783979931411_0.1381542858893705","host":"s3://npm-registry-packages-npm-production"}},"0.1.86":{"name":"@hachej/boring-automation","version":"0.1.86","license":"MIT","_id":"@hachej/boring-automation@0.1.86","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"14700abf1abfff07448adfb117aaf55354dc7ef8","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.86.tgz","fileCount":9,"integrity":"sha512-4OWVWnUOLCxDr6hEvSHLjXWHpABLqTWGs000HfPO4bcs9Vw+moDoRCWA8t/aOb3SHlOGx3hJiohHNjxDu/oChw==","signatures":[{"sig":"MEUCIBpoXZ6zcPeNrH0pSUZFtkLPnYpu4HKTOCFh+pCdJqnsAiEApKezEvkW1Tq488Y54BAu77oMYQ3qfcswZLrS5+gOwo4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.86","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.86.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.86.tgz","_integrity":"sha512-4OWVWnUOLCxDr6hEvSHLjXWHpABLqTWGs000HfPO4bcs9Vw+moDoRCWA8t/aOb3SHlOGx3hJiohHNjxDu/oChw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.86"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.86","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.86"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.86_1784104930478_0.39770139228405776","host":"s3://npm-registry-packages-npm-production"}},"0.1.87":{"name":"@hachej/boring-automation","version":"0.1.87","license":"MIT","_id":"@hachej/boring-automation@0.1.87","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"e78bdf583c12815bb2d716b79aa75e32632aab2c","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.87.tgz","fileCount":9,"integrity":"sha512-8XDhWBeUDs8kuckz4/CYuvOeIEk8UMJkxBM3/+k73FSaJNjkb8FR5d2B1n2qJoSECLGkd3jqC37+tAJ26B9xKQ==","signatures":[{"sig":"MEUCIQCvAxmtXS3KhDyb/NWi1t4X2qx+nx+NCQxyLg/QrKWC+gIgbJibhzqg31TkIHoGSIVDC1D92LtE3LC/723mW+oIreo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.87","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.87.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.87.tgz","_integrity":"sha512-8XDhWBeUDs8kuckz4/CYuvOeIEk8UMJkxBM3/+k73FSaJNjkb8FR5d2B1n2qJoSECLGkd3jqC37+tAJ26B9xKQ==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.87"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.87","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.87"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.87_1784119463501_0.03410881892708906","host":"s3://npm-registry-packages-npm-production"}},"0.1.88":{"name":"@hachej/boring-automation","version":"0.1.88","license":"MIT","_id":"@hachej/boring-automation@0.1.88","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"6630458a361f3dc07986df9456bbe4369c82a43f","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.88.tgz","fileCount":9,"integrity":"sha512-dwhj10WQvcsdstI0gTuMN6RD23ovfqFt0aLPLXDKMOgK8iB7LDngh3JCiXawCO4vte2qheJ4sj+V+LQF3cRnrA==","signatures":[{"sig":"MEYCIQC2MJkAcjlILe6LkOThcWpnzS48VUO/hEWHT/helBbOXwIhAPUaS9mtQJBggFPrC4JIoip+FXnuNDTsFLZpzWuImdQH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.88","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.88.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.88.tgz","_integrity":"sha512-dwhj10WQvcsdstI0gTuMN6RD23ovfqFt0aLPLXDKMOgK8iB7LDngh3JCiXawCO4vte2qheJ4sj+V+LQF3cRnrA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.88"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.88","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.88"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.88_1784293084177_0.19502656509794725","host":"s3://npm-registry-packages-npm-production"}},"0.1.89":{"name":"@hachej/boring-automation","version":"0.1.89","license":"MIT","_id":"@hachej/boring-automation@0.1.89","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"f187f91e863095c282f0d2e78ba24d6f5ccc970c","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.89.tgz","fileCount":9,"integrity":"sha512-8EKiVznU+/Q30C49nWRMbKKCLDa4F3w6bHKjHGPNdXed2WoHzTmU1z3aYKkjVM6yBO8tBBgLG8aJsrNN3C5USw==","signatures":[{"sig":"MEQCIF88qsB0h1ytio3v06S7KptbLbKEAKz/98k186zmRqO6AiApGDCXdMEpPK9SzIhZP9qkENJ2v4nBXRiD4ZLDtueIYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.89","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138921},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.89.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.89.tgz","_integrity":"sha512-8EKiVznU+/Q30C49nWRMbKKCLDa4F3w6bHKjHGPNdXed2WoHzTmU1z3aYKkjVM6yBO8tBBgLG8aJsrNN3C5USw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-ui-kit":"0.1.89"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.89","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.89"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.89_1784298894038_0.3904437883148453","host":"s3://npm-registry-packages-npm-production"}},"0.1.90":{"name":"@hachej/boring-automation","version":"0.1.90","license":"MIT","_id":"@hachej/boring-automation@0.1.90","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"34f2efb9ee7bf813decee52ed010748bcdc075ea","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.90.tgz","fileCount":9,"integrity":"sha512-0XHUNZQQT2XOq6vLDQ/aegXTYjvKrqZUMacAnJ9HOyvjYU8Ff74uSFwGMU+mr5va27LU4sKg7fdNrfLv8segcw==","signatures":[{"sig":"MEYCIQCGMezEy02rzA0+7AKlGzfU2kfRPX39TuuvNoz4fwIeAgIhAIa5KDGnGduJAVn0czKg5cI4+6K152nUH8Gc7sOrLWJE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.90","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":171104},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.90.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.90.tgz","_integrity":"sha512-0XHUNZQQT2XOq6vLDQ/aegXTYjvKrqZUMacAnJ9HOyvjYU8Ff74uSFwGMU+mr5va27LU4sKg7fdNrfLv8segcw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-agent":"0.1.90","@hachej/boring-ui-kit":"0.1.90"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.90","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.90"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.90_1784554166805_0.646354025805451","host":"s3://npm-registry-packages-npm-production"}},"0.1.91":{"name":"@hachej/boring-automation","version":"0.1.91","license":"MIT","_id":"@hachej/boring-automation@0.1.91","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"dcdeb0db839efba84254dc727c5b697e612ff717","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.91.tgz","fileCount":13,"integrity":"sha512-hJyhzSj5iRWjR99Ebun1m/JoStQ2dsDWwX9E+BI1yTdi++0BZsHkUESoV8Qv5BmLqYtt8rJwaDyy0OeshyiI5w==","signatures":[{"sig":"MEYCIQCyD+4AsRO0yAPd3lXdKEM3TcuV9H9IlLRZFl1i/iwzWQIhAMNhYYkB4Qi/xUtdWwN42sUn4J032ib3OWv9+Vt9pr1f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.91","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":230300},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.91.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.91.tgz","_integrity":"sha512-hJyhzSj5iRWjR99Ebun1m/JoStQ2dsDWwX9E+BI1yTdi++0BZsHkUESoV8Qv5BmLqYtt8rJwaDyy0OeshyiI5w==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.21.0","@hachej/boring-agent":"0.1.91","@hachej/boring-ui-kit":"0.1.91"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.91","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.91"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.91_1785133497140_0.4038599455298042","host":"s3://npm-registry-packages-npm-production"}},"0.1.92":{"name":"@hachej/boring-automation","version":"0.1.92","license":"MIT","_id":"@hachej/boring-automation@0.1.92","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"aeaac79a8b8c41740bc36b665256d8e9a40ce5d0","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.92.tgz","fileCount":13,"integrity":"sha512-xvgzUw8yC1LY5s2bMvS9kqERm8hOPI4d6FrAF6MBAoNW9XAHZEkZKmLmdwnnQwkYZgg4FuhpZzeaXwZ+Lt4EjA==","signatures":[{"sig":"MEYCIQCLIhgRfHWGhJf6RBaGEVPAvrOuRVpOr/6XRF+z1WGlSwIhAP0X3dB4pcrXup4MfBHhKTmCh+ClIM7d5KWxM+X3dRAp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.92","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":230300},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.92.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.92.tgz","_integrity":"sha512-xvgzUw8yC1LY5s2bMvS9kqERm8hOPI4d6FrAF6MBAoNW9XAHZEkZKmLmdwnnQwkYZgg4FuhpZzeaXwZ+Lt4EjA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.25.0","@hachej/boring-agent":"0.1.92","@hachej/boring-ui-kit":"0.1.92"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.92","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.92"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.92_1785308095315_0.4094656030636241","host":"s3://npm-registry-packages-npm-production"}},"0.1.93":{"name":"@hachej/boring-automation","version":"0.1.93","license":"MIT","_id":"@hachej/boring-automation@0.1.93","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"abb9a4ca1f717a21835a1f133f0433c5d42c42c8","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.93.tgz","fileCount":13,"integrity":"sha512-kXNAokEb48wZr5A11Uf8Upc2ILO1zoxzzU4SrT7PGCaJlqqjQ+DCwkDY7SubFQAIOmxklGO49VsuVkeA4+w58A==","signatures":[{"sig":"MEUCIQCXdhhFnbBYx089qV9XZ1b4C3fEZPX3ECnyld7/wy9TTAIgEdZlkXYejRgj66XC3crxYia+eiAFosP9EMNn3MARUMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.93","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":230300},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.93.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.93.tgz","_integrity":"sha512-kXNAokEb48wZr5A11Uf8Upc2ILO1zoxzzU4SrT7PGCaJlqqjQ+DCwkDY7SubFQAIOmxklGO49VsuVkeA4+w58A==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.25.0","@hachej/boring-agent":"0.1.93","@hachej/boring-ui-kit":"0.1.93"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.93","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.93"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.93_1785420474549_0.5672855275773308","host":"s3://npm-registry-packages-npm-production"}},"0.1.94":{"name":"@hachej/boring-automation","version":"0.1.94","license":"MIT","_id":"@hachej/boring-automation@0.1.94","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"4429954566bc8782505e9cd63b356bf95be156ba","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.94.tgz","fileCount":13,"integrity":"sha512-XgXIP+BC761f4eZplQgzQpTTamcVpmqY/H+Kq390vPEPPU9n2m4x2lD7IochFbiAaPvgMXskZQHnFcnOEkF/fA==","signatures":[{"sig":"MEQCIC5VcDnD7v9f8LewiywGPpuGZ48IJyb4tzTqXjaISSnyAiBY62GLvuEj3tXDjRfzHkwuG16E+0WgMXpu76UzlLdBbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.94","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":262014},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.94.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.94.tgz","_integrity":"sha512-XgXIP+BC761f4eZplQgzQpTTamcVpmqY/H+Kq390vPEPPU9n2m4x2lD7IochFbiAaPvgMXskZQHnFcnOEkF/fA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.25.0","@hachej/boring-agent":"0.1.94","@hachej/boring-ui-kit":"0.1.94"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.94","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.94"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.94_1785570574097_0.20095070544325355","host":"s3://npm-registry-packages-npm-production"}},"0.1.95":{"name":"@hachej/boring-automation","version":"0.1.95","license":"MIT","_id":"@hachej/boring-automation@0.1.95","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"0e9660565aa17d34e25b1b3f36932aa77fe5fd51","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.95.tgz","fileCount":13,"integrity":"sha512-sa4yywXZCAUwOcZ4lKrJV236YG9C/06ioarXqQeocCbRM3TfP69oSVbnfYqG9E7fN20PRuxjKeqpm8ErcK39FQ==","signatures":[{"sig":"MEYCIQCgUvu71ZEfFC7NXkBcNQX3WSRWXyrdxcUp6Rf8ocM8QQIhALzFMqeUqApLYwsFMnoaAUnnWOpV/z7aFhxYXS73HUB/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.95","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":262014},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.95.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.95.tgz","_integrity":"sha512-sa4yywXZCAUwOcZ4lKrJV236YG9C/06ioarXqQeocCbRM3TfP69oSVbnfYqG9E7fN20PRuxjKeqpm8ErcK39FQ==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.25.0","@hachej/boring-agent":"0.1.95","@hachej/boring-ui-kit":"0.1.95"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","fastify":"^5.9.0","react-dom":"^19.2.7","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.17","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.95","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.9.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.95"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.95_1785769321728_0.3667537108788703","host":"s3://npm-registry-packages-npm-production"}},"0.1.96":{"name":"@hachej/boring-automation","version":"0.1.96","license":"MIT","_id":"@hachej/boring-automation@0.1.96","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"49d41801bac34022c52db92509720db2f50db9fe","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.96.tgz","fileCount":13,"integrity":"sha512-0C5iLrKKZjjcLT8pf1ZGdyrKX5rfR6deYZsXoOto9TeSTNjgxKbuXUNkDwQ9rnLxVs3NyxyR4BX/bxUnZtuOXg==","signatures":[{"sig":"MEYCIQDVuWdUK7MkDTM7MLtlZ9/RPlyV8KQo02nMr19ryi1NZAIhALY0Ea7/1fM861Sre3wpiRdqAKw96DX1Ct4Pa9epUVn8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.96","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267962},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.96.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.96.tgz","_integrity":"sha512-0C5iLrKKZjjcLT8pf1ZGdyrKX5rfR6deYZsXoOto9TeSTNjgxKbuXUNkDwQ9rnLxVs3NyxyR4BX/bxUnZtuOXg==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.96","@hachej/boring-ui-kit":"0.1.96"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.96","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.96"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.96_1786610935211_0.37003545581892916","host":"s3://npm-registry-packages-npm-production"}},"0.1.97":{"name":"@hachej/boring-automation","version":"0.1.97","license":"MIT","_id":"@hachej/boring-automation@0.1.97","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"574a1e197259282118f839a6a1c86d50445ab858","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.97.tgz","fileCount":13,"integrity":"sha512-0ky/2gvWI/fsrgigZY8J7qYTgRkTYU0d/TuGpT8qtL9LGwr3hfbspy3bDG4M9+WMeA6UvfOiSa0J726F17Bfew==","signatures":[{"sig":"MEYCIQDhv7/HTbT1TmFIbWnGixxNTDz4AwO7FiOm20DU57vMswIhAJ7v/lejUnLBaEht8CFLne4pD3V89mV5uJAzXuFoMmRd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.97","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267962},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.97.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.97.tgz","_integrity":"sha512-0ky/2gvWI/fsrgigZY8J7qYTgRkTYU0d/TuGpT8qtL9LGwr3hfbspy3bDG4M9+WMeA6UvfOiSa0J726F17Bfew==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.16.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.97","@hachej/boring-ui-kit":"0.1.97"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.97","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.97"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.97_1786625176229_0.1298101900272155","host":"s3://npm-registry-packages-npm-production"}},"0.1.98":{"name":"@hachej/boring-automation","version":"0.1.98","license":"MIT","_id":"@hachej/boring-automation@0.1.98","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"322120a22712195e89c810e2b0946c56c3235047","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.98.tgz","fileCount":13,"integrity":"sha512-tV7OxIkOpPTXRfM273TMqL3BuAMZ7MtNsQ3/gviPTUSnF+bL4m9eIvDcDX8hEkfh7VA0j/D5ouzwegcR9vGA8Q==","signatures":[{"sig":"MEQCIGUpXfSZ4mwcVI2Rs4fnnTXWAEt7PGVRzl4Ddm1MBM1VAiAWv0X2jVVvtVh/GgnFZJjpR2ABkdJ+ZpefBXm3CUfyGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.98","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267962},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.98.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.98.tgz","_integrity":"sha512-tV7OxIkOpPTXRfM273TMqL3BuAMZ7MtNsQ3/gviPTUSnF+bL4m9eIvDcDX8hEkfh7VA0j/D5ouzwegcR9vGA8Q==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.98","@hachej/boring-ui-kit":"0.1.98"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.98","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.98"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.98_1786656182810_0.2737446615775545","host":"s3://npm-registry-packages-npm-production"}},"0.1.99":{"name":"@hachej/boring-automation","version":"0.1.99","license":"MIT","_id":"@hachej/boring-automation@0.1.99","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"3067589fb5dbaf1180c10a02403384fbd75d06ce","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.99.tgz","fileCount":13,"integrity":"sha512-yXnLsIOgTxl+f41ukWlJihgI3I4UvR4N+r+upVae6/szNpA1mqw0R9MEdQ/0ALueleHOYSqFDK6FT0hqZ+p3Jw==","signatures":[{"sig":"MEUCIEM8O1DbpMowWk7af7niNYoM9v3E/8uDY5Z9anloxFZrAiEAtC8mH09ugL1nbcdnUXKtM/gx+azbqxUjH+SIIn8uBaw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.99","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267962},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.99.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.99.tgz","_integrity":"sha512-yXnLsIOgTxl+f41ukWlJihgI3I4UvR4N+r+upVae6/szNpA1mqw0R9MEdQ/0ALueleHOYSqFDK6FT0hqZ+p3Jw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.99","@hachej/boring-ui-kit":"0.1.99"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.99","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.99"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.99_1786724563175_0.18672653203652545","host":"s3://npm-registry-packages-npm-production"}},"0.1.100":{"name":"@hachej/boring-automation","version":"0.1.100","license":"MIT","_id":"@hachej/boring-automation@0.1.100","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"7fdbd300555dbf4872d1ed7356d91620e251b864","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.100.tgz","fileCount":13,"integrity":"sha512-YXjWbYvao59Vugk24sYAiYy2kGJdB1bxVO2IcPaurJKtCXfjivNCao2qo0FW4GKL3c6LGB9YMk58Svg3RruiFA==","signatures":[{"sig":"MEUCIQD9DQH8X0gpPNkf8PNGI6kPMyVt/3P+Ga+pMlP6F0nWwAIgF/LVxTspboGtfPjWKsOjuS7KK9yrEZTvI5kmDt960YA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.100","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267967},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.100.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.100.tgz","_integrity":"sha512-YXjWbYvao59Vugk24sYAiYy2kGJdB1bxVO2IcPaurJKtCXfjivNCao2qo0FW4GKL3c6LGB9YMk58Svg3RruiFA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.100","@hachej/boring-ui-kit":"0.1.100"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.100","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.100"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.100_1786735564681_0.34533984978199284","host":"s3://npm-registry-packages-npm-production"}},"0.1.101":{"name":"@hachej/boring-automation","version":"0.1.101","license":"MIT","_id":"@hachej/boring-automation@0.1.101","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"113964fe93ffda59abea9dc041b34fbf24d6f621","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.101.tgz","fileCount":13,"integrity":"sha512-kxUF7AQgxy0ScJlJAXZNXTRijuwxiSS/UijiBMaezV4ESMGaIaJ1C5rofpwmqkf2qk6M5oF6h8c2xWZ3yNl7pQ==","signatures":[{"sig":"MEQCIGsDAX0jQGIfs6nMq3RsoZMxDv72f8G6GtGh9WmBtPdNAiBV6EtmxmOEJ+yDx5x63JhyvigXFwHqrNQt3lnh70uazQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.101","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267967},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.101.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.101.tgz","_integrity":"sha512-kxUF7AQgxy0ScJlJAXZNXTRijuwxiSS/UijiBMaezV4ESMGaIaJ1C5rofpwmqkf2qk6M5oF6h8c2xWZ3yNl7pQ==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.27.0","@hachej/boring-agent":"0.1.101","@hachej/boring-ui-kit":"0.1.101"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.2","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.101","@testing-library/jest-dom":"^7.0.0"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.2","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.101"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.101_1787126210227_0.8977934156291867","host":"s3://npm-registry-packages-npm-production"}},"0.1.103":{"name":"@hachej/boring-automation","version":"0.1.103","license":"MIT","_id":"@hachej/boring-automation@0.1.103","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"7cd4e84c4fb81ba6910b1c56eea4e13efa2bcfbc","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.103.tgz","fileCount":13,"integrity":"sha512-uvc/xD038+znMKC7DboCyZ8eMdYiWQsTTbEp7lKB8fKKA6oLyhBi7cmsh+S8wg7lTq9CcifHhhlh7taMJrp/ZA==","signatures":[{"sig":"MEYCIQCmp8zx+7MmgKmSqumFvZMrFSp88xEpMte/64A6ChqGswIhAL0bBVjHXjDOAt7K1ZJKRE3fdwR0MG8GuOjO2begUgRv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.103","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267967},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.103.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.103.tgz","_integrity":"sha512-uvc/xD038+znMKC7DboCyZ8eMdYiWQsTTbEp7lKB8fKKA6oLyhBi7cmsh+S8wg7lTq9CcifHhhlh7taMJrp/ZA==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.103","@hachej/boring-ui-kit":"0.1.103"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.3","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.103","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.3","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.103"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.103_1787317407045_0.7843562048133332","host":"s3://npm-registry-packages-npm-production"}},"0.1.104":{"name":"@hachej/boring-automation","version":"0.1.104","license":"MIT","_id":"@hachej/boring-automation@0.1.104","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"35d4dbb00aa2ed3d711e5b7af8c1840260206887","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.104.tgz","fileCount":13,"integrity":"sha512-jzkRHY74Bihl4Vm6DgJftNeiYIN5dvRxG8mn8E7vtVP/+JB7A+KmwjlGs9upOWuCRdhUTw+fq64zdvtezS8QBg==","signatures":[{"sig":"MEUCIQDfo6BNWdCrMHZn2gt7uwvOjyshcTZFqy0SCgtrj/uTJwIgZXQm+2KQUgBPTJQXWQy7ZyV9sf9ylqzh+nqQmQj4kWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.104","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267967},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.104.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.104.tgz","_integrity":"sha512-jzkRHY74Bihl4Vm6DgJftNeiYIN5dvRxG8mn8E7vtVP/+JB7A+KmwjlGs9upOWuCRdhUTw+fq64zdvtezS8QBg==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.104","@hachej/boring-ui-kit":"0.1.104"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.11.3","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.104","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.11.3","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.104"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.104_1787576083458_0.19782979938155587","host":"s3://npm-registry-packages-npm-production"}},"0.1.105":{"name":"@hachej/boring-automation","version":"0.1.105","license":"MIT","_id":"@hachej/boring-automation@0.1.105","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"4a49b1699e42f6c7bd536ab368a9a6f3e1a26f40","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.105.tgz","fileCount":13,"integrity":"sha512-5hF3lrzc3XSbQu86pru0dXzAfSMZghJ7wb8wEC6TC1a0BGEcg7DJ/V2CAPxvPv824OwSRU9Vkx6CDtIHHxtVTg==","signatures":[{"sig":"MEYCIQDxDk4Sptv91+mATmsNEviJE7ksYzTc80b0RgZN2l+k4QIhAIjzhUBojE5yw9MTx9XSTw42FUFdmMv8AglGZbeWdenJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.105","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":267967},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.105.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json"},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.105.tgz","_integrity":"sha512-5hF3lrzc3XSbQu86pru0dXzAfSMZghJ7wb8wEC6TC1a0BGEcg7DJ/V2CAPxvPv824OwSRU9Vkx6CDtIHHxtVTg==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.105","@hachej/boring-ui-kit":"0.1.105"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.9","fastify":"^5.12.0","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.105","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.12.0","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.105"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.105_1787587326175_0.25024719718333044","host":"s3://npm-registry-packages-npm-production"}},"0.1.107":{"name":"@hachej/boring-automation","version":"0.1.107","license":"MIT","_id":"@hachej/boring-automation@0.1.107","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"1bb1e3e44ce5805cfcce4f18c4c202d919ed86ed","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.107.tgz","fileCount":17,"integrity":"sha512-TTp0ryyswmH3UM4L9n321b03P0rV1rfPpywKsBlUggZzwugVyfurW0JMLJLbBn0RPq2I9SZh4WGWhc/uWwxBiQ==","signatures":[{"sig":"MEUCIFnWR7ZLqG2ZTgqIg0OjkDt/7bL9x1E6/qD390OQ8+5pAiEAkSw27UANon2ApbsJkKS3kQdlOWz2eovqkBhheLE18WU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGG0pmMmSG1QhQabvkdu9Do692YEmbFpkkUPhQR7+vDBAiAFJyYvNAr+nXmomTb/5de2PHMtegoPFrKDaBPOE5dirA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.107","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":328983},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.107.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json","./front/descriptor":{"types":"./dist/front/descriptor.d.ts","import":"./dist/front/descriptor.js"}},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup --config tsup.config.ts && tsup --config tsup.descriptor.config.ts","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.107.tgz","_integrity":"sha512-TTp0ryyswmH3UM4L9n321b03P0rV1rfPpywKsBlUggZzwugVyfurW0JMLJLbBn0RPq2I9SZh4WGWhc/uWwxBiQ==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.107","@hachej/boring-ui-kit":"0.1.107"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.11","fastify":"^5.12.1","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.107","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.12.1","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.107"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.107_1788292407777_0.4914443660119545","host":"s3://npm-registry-packages-npm-production"}},"0.1.108":{"name":"@hachej/boring-automation","version":"0.1.108","license":"MIT","_id":"@hachej/boring-automation@0.1.108","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"fcd85f99d70d6d3508bd0cece9867f3d7f4e301d","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.108.tgz","fileCount":17,"integrity":"sha512-02R8I0VUO26+zIAohQsnT6X9eCMe5N00vv4dQr4ELmj333Wo577s3ue+1yXRDAJkP2qSLKbf+m8KzSnUiolpPw==","signatures":[{"sig":"MEUCIEqRm2EBkF/rcJzzCvhhHi7ovzdRC4k8tEeK+boyLODdAiEAuouUQ/Np1H1oCwjuQ8S0dcZjZcMmxQZ7gaLDlemLteU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC+IsptomFeUIp33UaNsCoWimLO2VSj65Y6wjSQM7HZqAIgX0LG2plefLe4hbOg454ld88DMvYzfYgQtDyNoyjC2V4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.108","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":328983},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.108.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json","./front/descriptor":{"types":"./dist/front/descriptor.d.ts","import":"./dist/front/descriptor.js"}},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup --config tsup.config.ts && tsup --config tsup.descriptor.config.ts","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.108.tgz","_integrity":"sha512-02R8I0VUO26+zIAohQsnT6X9eCMe5N00vv4dQr4ELmj333Wo577s3ue+1yXRDAJkP2qSLKbf+m8KzSnUiolpPw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.17.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.108","@hachej/boring-ui-kit":"0.1.108"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.11","fastify":"^5.12.1","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.108","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.12.1","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.108"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.108_1788377627960_0.20617543843684927","host":"s3://npm-registry-packages-npm-production"}},"0.1.109":{"name":"@hachej/boring-automation","version":"0.1.109","license":"MIT","_id":"@hachej/boring-automation@0.1.109","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"homepage":"https://github.com/hachej/boring-ui","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"bf74d540ec205e0446d772a748baca58e5c0ef43","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.109.tgz","fileCount":17,"integrity":"sha512-1o3TodRu5vg4YSQPdLaqk2vzpcZecl6XiVjjmR4IGjb24utBJxaWqCEryvVECup5A8hPKGjEgpnd2fp8krdR1w==","signatures":[{"sig":"MEQCIGqjg31Jc29R5ZV6Bsu4SquQZ7O8/H1Na5sPgvwLJoUWAiA96tXaOZuVSMLRAf8Xk26u82mvarxUY6qFVYAe/FAlwQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICR7JJBG4jGye3bnj/UpVaJiitKMOeB+BB3eL+pQ20wPAiARoXBl/wfJT9OIcvkn3DNjKWWHFqwLAjFFQxAuTLAHKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.109","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":328983},"type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.109.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json","./front/descriptor":{"types":"./dist/front/descriptor.d.ts","import":"./dist/front/descriptor.js"}},"private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup --config tsup.config.ts && tsup --config tsup.descriptor.config.ts","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.109.tgz","_integrity":"sha512-1o3TodRu5vg4YSQPdLaqk2vzpcZecl6XiVjjmR4IGjb24utBJxaWqCEryvVECup5A8hPKGjEgpnd2fp8krdR1w==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.109","@hachej/boring-ui-kit":"0.1.109"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.11","fastify":"^5.12.1","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.4","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.0","@hachej/boring-workspace":"0.1.109","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.12.1","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.109"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/boring-automation_0.1.109_1788502576207_0.7712997113436295","host":"s3://npm-registry-packages-npm-production"}},"0.1.111":{"_id":"@hachej/boring-automation@0.1.111","bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"dist":{"shasum":"efba8953f3f092887bf3f3f5db484bb4d862925f","tarball":"https://registry.npmjs.org/@hachej/boring-automation/-/boring-automation-0.1.111.tgz","fileCount":17,"integrity":"sha512-wYl2D7OV704at4cLojpRMv9WzOIONL9EawpLsBcyaj+l9jEwZ4aeUdX/v/FCULjRyaEPlsPBXras10/DJdEpVw==","signatures":[{"sig":"MEYCIQCqdIpX1B0fhkUSt9yEgEKENh+9POEYLWcAVAqdyNwhVAIhALUr4kv3ZPZAAmc/h2LART4dl4IV1YChdpy94nyDyLZF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBtUWf3UcoLpUgStw9Zgg+HnGdqT6IZ53TimE+/I5Ut0AiEA1AMlAWnogw55PDrkJnyFhGgbdztEovhwfWLCboWd5ZM="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hachej%2fboring-automation@0.1.111","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":329063},"name":"@hachej/boring-automation","type":"module","_from":"file:plugins/boring-automation/hachej-boring-automation-0.1.111.tgz","boring":{"id":"boring-automation","front":"dist/front/index.js","label":"Automations","server":"dist/server/index.js"},"exports":{".":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./front":{"types":"./dist/front/index.d.ts","import":"./dist/front/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"},"./shared":{"types":"./dist/shared/index.d.ts","import":"./dist/shared/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.js"},"./package.json":"./package.json","./front/descriptor":{"types":"./dist/front/descriptor.d.ts","import":"./dist/front/descriptor.js"}},"license":"MIT","private":false,"scripts":{"lint":"pnpm run typecheck","test":"vitest run --no-file-parallelism","build":"tsup --config tsup.config.ts && tsup --config tsup.descriptor.config.ts","clean":"rm -rf dist .tsbuildinfo","typecheck":"tsc --noEmit"},"version":"0.1.111","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bc1ee1b3-5c76-42df-bcae-c6affdf76ba0"}},"homepage":"https://github.com/hachej/boring-ui","_resolved":"/home/runner/work/boring-ui/boring-ui/plugins/boring-automation/hachej-boring-automation-0.1.111.tgz","_integrity":"sha512-wYl2D7OV704at4cLojpRMv9WzOIONL9EawpLsBcyaj+l9jEwZ4aeUdX/v/FCULjRyaEPlsPBXras10/DJdEpVw==","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"_npmVersion":"11.19.0","description":"Scheduled prompt automation plugin for Boring workspace.","directories":{},"maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"zod":"^3.23.0","croner":"^10.0.1","postgres":"^3.4.7","lucide-react":"^1.31.0","@hachej/boring-agent":"0.1.111","@hachej/boring-ui-kit":"0.1.111"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.4.0","jsdom":"^30.0.1","react":"^19.2.8","vitest":"^4.1.11","fastify":"^5.12.1","react-dom":"^19.2.8","typescript":"~6.0.3","@types/node":"^22.20.0","@types/react":"^19.2.18","@types/react-dom":"^19.2.5","@vitejs/plugin-react":"^4.0.0","@testing-library/react":"^16.3.3","@hachej/boring-workspace":"0.1.111","@testing-library/jest-dom":"^7.0.1"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0","fastify":"^5.12.1","react-dom":"^18.0.0 || ^19.0.0","@hachej/boring-workspace":"0.1.111"},"peerDependenciesMeta":{"fastify":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/boring-automation_0.1.111_1789575166617_0.05003019926359786"}}},"time":{"created":"2026-07-11T12:59:19.744Z","modified":"2026-09-16T16:12:47.075Z","0.1.71":"2026-07-11T12:59:19.993Z","0.1.79":"2026-07-11T20:07:18.622Z","0.1.80":"2026-07-12T07:52:16.910Z","0.1.81":"2026-07-12T15:12:13.714Z","0.1.82":"2026-07-13T05:41:26.137Z","0.1.83":"2026-07-13T07:44:45.630Z","0.1.84":"2026-07-13T10:18:46.606Z","0.1.85":"2026-07-13T21:58:51.553Z","0.1.86":"2026-07-15T08:42:10.630Z","0.1.87":"2026-07-15T12:44:23.642Z","0.1.88":"2026-07-17T12:58:04.303Z","0.1.89":"2026-07-17T14:34:54.168Z","0.1.90":"2026-07-20T13:29:26.955Z","0.1.91":"2026-07-27T06:24:57.369Z","0.1.92":"2026-07-29T06:54:55.499Z","0.1.93":"2026-07-30T14:07:54.684Z","0.1.94":"2026-08-01T07:49:34.255Z","0.1.95":"2026-08-03T15:02:01.872Z","0.1.96":"2026-08-13T08:48:55.359Z","0.1.97":"2026-08-13T12:46:16.380Z","0.1.98":"2026-08-13T21:23:02.980Z","0.1.99":"2026-08-14T16:22:43.352Z","0.1.100":"2026-08-14T19:26:04.860Z","0.1.101":"2026-08-19T07:56:50.404Z","0.1.103":"2026-08-21T13:03:27.185Z","0.1.104":"2026-08-24T12:54:43.625Z","0.1.105":"2026-08-24T16:02:06.313Z","0.1.107":"2026-09-01T19:53:27.880Z","0.1.108":"2026-09-02T19:33:48.065Z","0.1.109":"2026-09-04T06:16:16.289Z","0.1.111":"2026-09-16T16:12:46.745Z"},"bugs":{"url":"https://github.com/hachej/boring-ui/issues"},"license":"MIT","homepage":"https://github.com/hachej/boring-ui","repository":{"url":"git+https://github.com/hachej/boring-ui.git","type":"git"},"description":"Scheduled prompt automation plugin for Boring workspace.","maintainers":[{"name":"hachej","email":"julien.hurault@sumeo.io"}],"readme":"# @hachej/boring-automation\n\nTrusted Boring workspace plugin for scheduled prompt automations.\n\n## Capabilities\n\nThe UI, HTTP routes, and trusted `boring_automation` Pi tool manage the same workspace-scoped automation records. Supported tool operations are:\n\n| Operation | Behavior |\n| --- | --- |\n| `list` | List automation metadata in the active workspace. Optional `limit` is 1–100 (default 50). |\n| `get` | Read one automation plus its canonical prompt. |\n| `create` | Create title, enabled state, five-field cron, IANA timezone, model, effort (`thinkingLevel`), and prompt. |\n| `update` | Update any create-time field, including the canonical prompt. At least one field is required. |\n| `pause` / `resume` | Set `enabled` false/true. Pause affects future scheduled runs only. |\n| `run` | Run the stored canonical prompt, model, and effort now through the existing workspace agent runtime. |\n| `list_runs` | List safe run summaries. Optional `limit` is 1–100 (default 50). |\n| `delete` | Remove automation metadata, matching the UI delete behavior. |\n\n`delete` uses the same store operation as the UI. Local file mode removes active metadata while leaving prompt/run files. Hosted Postgres mode soft-deletes the automation: it disappears from active list/get/update/run and due evaluation while preserving the stored prompt and run rows. Existing Pi sessions are not deleted in either mode. A paused automation can still be run manually. A finalized failed or cancelled run is returned as a run result; validation, missing-context, and unavailable-executor failures are tool errors.\n\nTool results are bounded for agent context safety. Lists return at most 100 records. `get` returns at most 16,384 JavaScript characters of prompt text and includes `characterCount` and `truncated`. Run summaries omit prompt/model snapshots, and public errors use stable sanitized codes/messages.\n\n## Scope and authorization\n\n`boring_automation` is a trusted, boot-time server tool, not a runtime `.pi/extensions` tool. The model cannot provide a workspace ID, user ID, owner ID, request, or filesystem path.\n\n- CLI/folder mode requires the host-derived active workspace and uses the trusted fixed local actor.\n- Hosted mode requires both the host-derived workspace and authenticated user, and binds every operation to an actor-scoped Postgres store.\n- Missing host context fails closed before store or executor resolution.\n- Manual tool runs use the existing `WorkspaceAgentDispatcherResolver`, so child sessions retain normal workspace/actor ownership and appear in regular Pi session history. The core agent facade supports a second child session dispatch while the parent tool turn remains active; this nested-session behavior has focused integration coverage.\n\nCross-workspace or cross-owner IDs are returned as not found. Runtime plugin reload cannot install or change this server tool.\n\n## Model compatibility\n\nThe agent tool requires explicit `provider:model-id` syntax for model-bearing `create` and `update` calls, for example `anthropic:claude-sonnet`.\n\nExisting UI and HTTP routes retain compatibility with legacy unqualified saved model values. Those values remain editable but fail safely when run until corrected. The tool does not silently guess a provider.\n\nEvery mode stores the canonical prompt as a normal workspace Markdown file at `.agents/automation/<automation-id>.md`. PostgreSQL stores hosted automation metadata only; the prompt path is derived deterministically from the automation id, and runtime reads use the workspace file.\n\n## Local and hosted execution\n\nLocal CLI support includes:\n\n- workspace-scoped file-backed metadata and canonical Markdown prompts;\n- automation and prompt UI/routes;\n- executor-owned **Run now** through the host's existing workspace runtime;\n- run history linked to normal interactive Pi sessions;\n- partial live usage totals when providers emit usage events;\n- deterministic current-minute cron evaluation invoked through the loopback due endpoint.\n\nLocal scheduling has no background timer. User-owned cron/systemd may invoke `POST /api/v1/boring-automation/due` once per minute while the CLI server is running. Missed minutes are not backfilled.\n\nHosted persistence and creator-scoped execution are available in full-app. The deployment migration callback is `runBoringAutomationMigrations`. When hosted due execution is composed, the plugin starts an internal Croner wake-up once per minute and evaluates the current minute once at startup. Every tick re-checks each creator, prevents process-local overlap, and relies on database active-run and scheduled-minute constraints as the cross-process execution guard. Active executors heartbeat durable run rows every 30 seconds; each hosted tick terminalizes active rows whose heartbeat is more than five minutes stale before evaluating new work. This releases automations abandoned by an ungraceful worker exit without terminating healthy runs owned by another replica. Fastify shutdown stops future timer ticks without waiting for an active execution; durable heartbeat reconciliation owns interrupted runs across deploys or crashes. The timer is unreferenced so it cannot keep Node alive by itself.\n\nSet `BORING_AUTOMATION_INTERNAL_SCHEDULER=false` (or compose `hostedSchedulerEnabled: false`) when a multi-replica deployment intentionally owns wake-ups externally. For that mode, configure `BORING_AUTOMATION_TRIGGER_TOKEN` and invoke `POST /api/v1/boring-automation/due/hosted` with `Authorization: Bearer <token>`. The authenticated endpoint remains available as an operational fallback when the internal scheduler is enabled.\n\n## Enable gate and rollback\n\nThe trusted server plugin enables the agent tool by default. Host composition can set `agentToolEnabled: false` at boot to remove only `boring_automation`; UI, HTTP routes, stored automations, prompts, runs, and sessions remain available. Server tool changes and gate changes require a host restart; `/reload` only affects runtime plugin resources.\n\nRollback is capability-only: disable/remove the tool contribution and restart. No data migration or deletion is required. Prompt rollback uses the normal workspace file history/backups; PostgreSQL does not mirror prompt bodies.\n\n## Deterministic UI review\n\n`@hachej/boring-automation/testing` exposes the product panel and client provider\nfor private repository fixture hosts. Run the registered desktop/mobile pane and\neditor review with:\n\n```bash\npnpm --filter @hachej/boring-ui-review-tools ui:review -- review automation-pane-popover --critic=fixture\n```\n\n## Manual proof\n\n1. Start/restart the trusted host and open workspace A.\n2. Ask the agent to use `boring_automation` to create an automation with a valid five-field cron, IANA timezone, explicit `provider:model-id`, effort, and prompt.\n3. Open **Automations**, click **Prompt**, and verify `.agents/automation/<automation-id>.md` opens in the standard workspace Markdown editor.\n4. Ask the agent to list/get it, update its prompt or schedule, pause it, and resume it; verify each change in the UI.\n5. Ask the agent to run it. Verify the run appears in history and its normal Pi session opens and accepts messages.\n6. Ask the agent to list recent runs, then delete the automation. Verify it disappears from active UI/tool operations while the workspace prompt file, run records, and existing Pi sessions remain.\n7. Switch to workspace B (or another hosted actor) and verify workspace A's automation cannot be listed or addressed.\n","readmeFilename":"README.md"}