{"_id":"@aight-cool/aight-utils","_rev":"25-d9c9794ad50cdd7b83186d9ccfc1f234","name":"@aight-cool/aight-utils","dist-tags":{"latest":"0.1.30"},"versions":{"0.1.0":{"name":"@aight-cool/aight-utils","version":"0.1.0","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.0","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"02173e4e2040ef0a12eca7891eb43193cda4f0b2","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.0.tgz","fileCount":16,"integrity":"sha512-LdiiRUJ6BUbS7olzjg6cwUgpgiALuNE8PyLaoNW9sVLRLIYnvz6q/7sPgL9Log87bFOq3fAFjwxlxQDzvAM6Qw==","signatures":[{"sig":"MEUCIBrXkiNmn9DlYZmqUqAlcaavh71TFe4NJ8NN/0V1XQBsAiEAuUqoHVErpP+zDUn/X7tdB+i0Dxl3+zR8irtWshsQevo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51944},"type":"module","engines":{"node":">=20"},"gitHead":"c287287f759a9139b4e57b36e594bcaba6e2634c","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin — push notifications, Today items, config RPC, and agent bootstrap for the Aight app","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.0_1771229935039_0.8942983975809988","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aight-cool/aight-utils","version":"0.1.1","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.1","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"a8e6477a3c5f18f510fd058e2103c1c7cf6d99fe","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.1.tgz","fileCount":16,"integrity":"sha512-rSJ7DscQMoj4eesqfHT6Kex2mMm280GE1EAPSPjxAC2AfMuw25/3AvpCmWOMfM0xn468QTSYvbV2dRd6uWixnw==","signatures":[{"sig":"MEUCIAczhC/YhsQeXbZg8gRLP/MQNelmVLX4jTs33IkiPHzhAiEA3njfjMJ1Mu4sTlIQ1N8YhUUO0P4sFjuBfcjke1YISrk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53055},"type":"module","engines":{"node":">=20"},"gitHead":"6b321970bc432767feb713d44798edf2806ea7a2","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin — push notifications, Today items, config RPC, and agent bootstrap for the Aight app","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.1_1771231878727_0.21903067773851892","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@aight-cool/aight-utils","version":"0.1.4","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.4","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"5b6ef06c4057fe82c2c7e9ebf00af46663816199","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.4.tgz","fileCount":16,"integrity":"sha512-Vv1Y1Botn8nc74PkUuFmxF8jfKnYzA09zEQtGI9FDjyft9YLBHNUV7qi9urCYgnQNCfJlw+FWd62hsTF+OzTMA==","signatures":[{"sig":"MEUCIQD+/NIzoQzmFDcvUv2wRAnqaQIv8XFvpfGcKLhiMju5CwIgbduWfzh2vQqqHAP3WQzAZCADf+IXJzm5XEICpAIOOIE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56215},"type":"module","engines":{"node":">=20"},"gitHead":"caf14b76cb5b34e4055ae6658d2c7ed19ab828d5","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.4_1771277111366_0.7022984113712325","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@aight-cool/aight-utils","version":"0.1.5","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.5","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"c638063d06317b116108e0b07ab01a2cce775bd2","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.5.tgz","fileCount":16,"integrity":"sha512-cgcyZ6H1kB4e1zDbBU/eq6YYeuQh0qvKqhfBehDCAQH7EonUYmNuC4ZkeE8U44Z7b5pBDlVVnnDcTjOg0ve6ww==","signatures":[{"sig":"MEYCIQCkpRmf9pVHBRKT+wHjFr1L8XJa13G4nULLJTj0yjGZ7gIhANlBSMiWPRpx+FOh78729f3fGHk2Y+NPtGTUsck+hoeG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56577},"type":"module","engines":{"node":">=20"},"gitHead":"41d591e387312b1ef3ad04fbaf64ee6844c5d22a","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.5_1771278401984_0.5399415097504157","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@aight-cool/aight-utils","version":"0.1.6","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.6","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"deb3db9cf1104ef059d69b0d6c7a26e21cbb9667","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.6.tgz","fileCount":17,"integrity":"sha512-R09ZZCwauG8qtRjqX9dJwwIcEBRS8fqDDuEi8GLWmNqk4VT+h7qgAD5kfUSGVAnHDY+Dmqnkknv7++a6Jwn6FQ==","signatures":[{"sig":"MEQCIBdTZJAmCcjF64TOZ3lgQnozVvoLa0ge5eyD6vj8qwFeAiAWUHhCcGaPXVu8y6smizUo5biavrawC5f0ejrrf7vmGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59635},"type":"module","engines":{"node":">=20"},"gitHead":"7037247869ccd8b3485729782cbfef9409f5f71f","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.6_1771300094872_0.8521289659052047","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@aight-cool/aight-utils","version":"0.1.7","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.7","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"9feb063232ae97b165a38012597b89156492b734","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.7.tgz","fileCount":17,"integrity":"sha512-b1wIufTn/F5/k+rm9hlOLZGRZr59x/IMI6HAPlgt9f+G8gVngQc6zwC7gtPNnsodUyz1Du1VLsCnghG7ZpEoIw==","signatures":[{"sig":"MEUCIFVjgHpM3zWsNiW/r1FBwHD+BKLsIBeCmHCYsZjrBe4rAiEAvdhI+DdhbcBcoRVafRDC4swxKbe2tVXHeNupZ6OkImQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59600},"type":"module","engines":{"node":">=20"},"gitHead":"17534d1e7fdfe4f1d9d8003f4aded68c79c670b5","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.7_1771301324471_0.2707117114641764","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@aight-cool/aight-utils","version":"0.1.8","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.8","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"2e3c5904844762601c9f1ba9bc54200a7c5baf57","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.8.tgz","fileCount":17,"integrity":"sha512-glMwvjExHt6pv+YcuEm2vNt01aMWcwbgB56/QeWsdMvyslZBetmHm3l8qsVvmmE9mnfG7U/9yz6NHbNNW+MK6w==","signatures":[{"sig":"MEYCIQC5OPwIRqWyXpcQ23jGu9MTRRfA51VjALdfzJamMVLebwIhAKgkJM0doCGcaQ+6d02zLnOAnM30G6sSuVohogJopJCE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59372},"type":"module","engines":{"node":">=20"},"gitHead":"de6412e22b79d8857c39b3cfaabb618b1a259fec","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.8_1771303249756_0.4427561279111556","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@aight-cool/aight-utils","version":"0.1.9","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.9","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"36a65bc92d1f130e9ec286299e386dd918835a5f","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.9.tgz","fileCount":17,"integrity":"sha512-cYjJc3nbcQFl232JSG3Uf6uD2XumraAs/jpcNorozN8Dlq4e6ddiE8vijyxyVzpnm4Mh3QD4uObcfGFSy6G0Wg==","signatures":[{"sig":"MEUCIQCI9P2MaWdTcVZpyjR5IXzuuVmGy3yHnwkvNCC8XaJiawIge19FExnqAEnU1Vyv/kvjH8dH/ArsGOHWwWQ8P4y4fVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59222},"type":"module","engines":{"node":">=20"},"gitHead":"481e03a3f7914badde4cdcad885de3761ead0148","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.9_1771303448022_0.46742915409719754","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@aight-cool/aight-utils","version":"0.1.10","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.10","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"0e46fb128d3e512ee166cd20f4ec48863754090a","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.10.tgz","fileCount":17,"integrity":"sha512-4mxZw+WSq+aQCM7BmouKuIkgwGzZ2u6+it134ZkO8s966ImHc2KCNNWf2SnWwTTqiuk0k3ADt9Seuzj78wF3dw==","signatures":[{"sig":"MEYCIQC/7ElYQoEXQyS1rNxEf7tKjOk+u74yS95Gyz+cNlt5kAIhAOqfA0yuvCmdx1CBQeqOJKt2n1JhkZeG5P5Ra2KUWGy+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59484},"type":"module","engines":{"node":">=20"},"gitHead":"a7871029dba20e2fa0b973609a7c3ef240ea7db3","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.10_1771315480556_0.9361560173219658","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@aight-cool/aight-utils","version":"0.1.11","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.11","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"cc335d0ea3914802fb25dcce2a4866366b7a5f8b","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.11.tgz","fileCount":17,"integrity":"sha512-fF+WIl0QxjEBWXJlCVfrMx6YgBxpYydGY1WJBRM4MtbM0rCOvAwzVhxSvOCd1rqnKREVoSTDTEjV6Pc6KTZO7A==","signatures":[{"sig":"MEUCIENSckMsnEV2zKQnwqjJR0DCbRx4ic+SbmVPZC9QBlDkAiEAhF6oSrCQ2PTBRFQp5LUd/LkLqgExCc2ugssy9wQ3uHI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60774},"type":"module","engines":{"node":">=20"},"gitHead":"3c2c4063bc20a7ed2a3820d0e347b143dceb4b11","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.11_1771376875779_0.3887263741564091","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@aight-cool/aight-utils","version":"0.1.12","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.12","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"69376b7ced4e95336527e93ffa0a8c1f402e457e","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.12.tgz","fileCount":17,"integrity":"sha512-VDOW+7YQgCk/9a08K+Gt51izEcYO9B2AzUYFBlWpFNZF169zTZjeRjankSoV9MJDUI10Bp49cPVcCRIav4F4cQ==","signatures":[{"sig":"MEQCIANKln51KDR2bkqT6P/v8euIrdT2Q1qrlTqWWanOeNBlAiA4F385B4sCoWfb8dw1uXAnjpxnYQJxgd3xckjyhEblog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62530},"type":"module","engines":{"node":">=20"},"gitHead":"9245c02f37ae0a7450815d7773680c979f07cfa4","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.12_1771459684097_0.7030765832028958","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@aight-cool/aight-utils","version":"0.1.13","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.13","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"48c8fd1ef3a72088beb8e52ddb6e22dc9f249669","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.13.tgz","fileCount":17,"integrity":"sha512-wh0tVS5vy+d2nOFuly8KWEbJkskROL3dTnKxzF0UYKzw7yg+rVkkBVywVc52XtV3rOZicdxzP1fDsomefrDpIg==","signatures":[{"sig":"MEYCIQD2i/mH/4NY9wuuU5xkzDTV7irYQSUM3woRTraQYD/r8QIhAMTXUv9v2OTlFgBiRA83A3EBUcVPyJxSAlwVQ+Paj+MJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65943},"type":"module","engines":{"node":">=20"},"gitHead":"75dfee8936ffd43cddda94bf72c7fe32e4f8c53e","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.13_1771725158085_0.40053622983190573","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@aight-cool/aight-utils","version":"0.1.14","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.14","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"015067d3cc481c134d91b9745c941af37f32759c","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.14.tgz","fileCount":17,"integrity":"sha512-5xkHiHWlXatPx+Y3pmXJ7M3SgZBWMmegoK71IedHybVFZtasLqsdDakaFfxoYGTm6CyuQoStVyv0LrLjf5bJjw==","signatures":[{"sig":"MEQCIGZU1iMhgRsLYwvj37QD9okJseHGGqLx91U3T6t+TafTAiA/QiArt0UEQ4P8Wd72JRCnMbztmXNJD1FxbDTBN6q3JA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66509},"type":"module","engines":{"node":">=20"},"gitHead":"144e1c3be393754c0fb9fadeffbe8317f6a5e8b6","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.14_1771807475200_0.5638703521517741","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@aight-cool/aight-utils","version":"0.1.15","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.15","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"d7550fdd6e7602660d8ecf5ca3eb1b6c55f495e5","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.15.tgz","fileCount":17,"integrity":"sha512-jeMq1bSeOHOcJI2Q5MO0mGDUsaG402JeAqL+UpUylqqteNg/QmiK2N1hdDnPmR0FTtxfXQ6YbFt1l0kIVEDNxw==","signatures":[{"sig":"MEQCIAhbBwtK5D7ZuYycPXwU6rvyyOM8EBxdOZRIAWISnX0UAiAixjt4kFsYlJozPT2PYkRGavHcGF/ZctHCcYFjhcNjuQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67436},"type":"module","engines":{"node":">=20"},"gitHead":"4e97fd0838dcda58bb46a5af1a647884fab80ed1","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.15_1771832759782_0.5936050219754121","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@aight-cool/aight-utils","version":"0.1.17","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.17","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"fe66276cc0d06c1f1fdf56596a16c942553221ae","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.17.tgz","fileCount":18,"integrity":"sha512-PjrtpOhWh6atfKrT0Ue1zDikzJahQYZnG8txZPFgyejrx/HhX57TV9hiUXXq3GDsgKrppq0tMPTaxkqmzzsqBw==","signatures":[{"sig":"MEQCIEchrQ9OWD7hpZjVhLsTIozpddiqWRZrzLG/uFV1rKYlAiAyYXN0Mox1M84KkF3aLRcpIBHoPQgfOleSDCMRvJLb1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72324},"type":"module","engines":{"node":">=20"},"gitHead":"e33121824dee076d062d5cb5452925eb2887b67c","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./index.ts"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.17_1772678682897_0.27706414613294506","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@aight-cool/aight-utils","version":"0.1.18","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.18","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"25b7447cddaad124cfeadcdea2f8614daa69ce72","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.18.tgz","fileCount":9,"integrity":"sha512-ry4m5oJ2tjbwjWmb14JjpQI+aSkq0+WEJxlQYz7qOFm4Nn4vVOk2+WR9MgM7W6GVg0VlKJV2EDnThpnK39w6jA==","signatures":[{"sig":"MEUCIApsMrsYPK1/YUTImepKbqSepxtVlO3djhuzDtE18c5bAiEAlutQiughrF4xjR6DiwoDdrRyV+CPyG7fTaiyFkLwPFs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":566480},"type":"module","engines":{"node":">=20"},"gitHead":"121aebdfc02d08039f45abb346376835e32503bc","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsup","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.18_1773368615813_0.4169122258914395","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@aight-cool/aight-utils","version":"0.1.19","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.19","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"9ea8492ea8bcb8d43e64e4a3566425658449d911","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.19.tgz","fileCount":9,"integrity":"sha512-Rog8hctvq+tpy8x/90iXiT3hx6RGva9Dc37BL8eGRJVniBneCl0d+2woLF+ZLG7Hp2eb+VuuISOuw3q5fA7ZAg==","signatures":[{"sig":"MEUCIQCOC+ypDPUMKUizfoqoOTk8c9Vid8Zy+KFdezkMcIQPnQIgTJ6S5Cr/YFATNQzOII4vwlzLB5bIXzDbk1VgQhec+3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":562375},"type":"module","engines":{"node":">=20"},"gitHead":"106a5bce6a6555291df76ffbf59b81c1b01faf42","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsup","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.19_1773370558532_0.9085932608159366","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@aight-cool/aight-utils","version":"0.1.20","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.20","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"1c6d68b8044bdc283a337112c10f220fae11c019","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.20.tgz","fileCount":9,"integrity":"sha512-WLMee4OTDdJF1QXy3fjfOlO5PJPuNo9lV85fLwh53WWD9QgOPHDKHVVsCL0jnWUCU5YxZpmUTbNJ881V8zXing==","signatures":[{"sig":"MEYCIQDSKVaouIUHcdVzbYoctnHHl6sE3yUJpRXpP0LSjFpClQIhAI7WYMILqzRzag9XrDXeGg7V9Qx/QwT+VrjR6ckrfAiH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":562439},"type":"module","engines":{"node":">=20"},"gitHead":"8891f9aacf008740863e328ec8f96d94cfa2fe9a","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsup","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.20_1773371697805_0.6468628596324955","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@aight-cool/aight-utils","version":"0.1.21","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.21","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"854c2c24419a88d7a599194bce0eef8c06ad360b","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.21.tgz","fileCount":51,"integrity":"sha512-J4CriiRuXKZSFXz+uoD7QBV933Svhpxr/mycACvvNc0pPCtvRJRipffGTIkppurxsbkZvJ8jUVJpAtvVoyNDlQ==","signatures":[{"sig":"MEUCIQCV+somgUAo9LWpfOVLyfMOC7Ee/MhHGhkPA8j8FivjzgIgDkLhB1wjW/KDJ74YtxsNh9IXVVyrUzH/O5iz7ze5JQs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121805},"type":"module","engines":{"node":">=20"},"gitHead":"c8aa8f6c266f5809fdb7ccba0f5f8d16b58b48df","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.21_1773374687004_0.3325469941168737","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@aight-cool/aight-utils","version":"0.1.22","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.22","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"f22821d1e6851c06b7a1d69e3d00a165afad0563","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.22.tgz","fileCount":51,"integrity":"sha512-7uisZl1EIaOMs3F81eDnGFBFUf3bsT+X7lFbdNcNLiNPj4h5uhgoPSSEWiXo2M16GxxbPJ7P87DtOf0s+5C5EA==","signatures":[{"sig":"MEQCIHY2ocqneeUGSprevWqIge/4D5/6Bjub6zE8hZy0ReN0AiAykCSM9uforbK4QXxmKRTRDcsmA6Ie8Gymj4xMa4dVQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120037},"type":"module","engines":{"node":">=20"},"gitHead":"8ac0e7d6383a3a3e5914c1d58e8df73634636f34","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.22_1778219733446_0.8593894444815786","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@aight-cool/aight-utils","version":"0.1.23","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.23","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"3db0e793091ed7f469a5ba1d3aa55d005c832bc2","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.23.tgz","fileCount":51,"integrity":"sha512-NRgX4N1+KF/MqqzrHrGpFAujElE+W5yLUa2vQ7kU2nmrHtxBdpNPh2VcxVUf3yOmk5xOqhazzzbqGVvaFBYlKg==","signatures":[{"sig":"MEUCIQDTyu+y421cCbTK2SqPLaYMuczqy9EqEcemE5ghTKbVeQIgQPHEeQp1cy89dsWkp+hnzneGlWGLjD4hxIzL27+qcAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125775},"type":"module","engines":{"node":">=20"},"gitHead":"be0ca1b35001bb32cc2bbf625fe1c267b2286fd4","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.23_1778221097578_0.557912608486532","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@aight-cool/aight-utils","version":"0.1.24","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.24","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"ba8cfab0f7f7c4132c75a21167a6e43d9f043533","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.24.tgz","fileCount":51,"integrity":"sha512-hKV0M3D6ja39bJPbVWUM1TOy1SuzYzahXOfSDbwu8eo6TqeIjyTiTZS4nAutJelzgqfLp51FqReWQgW2E9pTUg==","signatures":[{"sig":"MEQCICQCZwcxjeAxDlYSuHlYq1DTXpK+xtdKW73eBtTexrPCAiBSIZcyW7ViA8MGTJTd2GDDl/sogZpn4pNrO6TfY5K8KQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":127176},"type":"module","engines":{"node":">=20"},"gitHead":"1d0df3e6f2dce5a21caab7101e4fc5463f7b4992","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, Today items, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.24_1778390858609_0.6680161772596216","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"@aight-cool/aight-utils","version":"0.1.27","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.27","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"247ffb17dece93097e4455c36e44cdb166cc0265","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.27.tgz","fileCount":51,"integrity":"sha512-Oe/P1OYjwJRQ/D2Qh5pS/Y+fWu7vUtD6C/WCeLz15dCbZyOj74BaFNHbYnZsBimgtUk4rhaSs7wALWg0yuoV8g==","signatures":[{"sig":"MEQCIH9mrTG7kV/5dyMBhG2qljpQeCLKimBMIyeXwiUL3djEAiAmakK5MNxmNKpc03TxPYeN7ydQ5IbgxlK12Dbf5zUsxA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126238},"type":"module","engines":{"node":">=20"},"gitHead":"beb7ae102c3358f404ccc3e01ea84efda80134b0","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, multi-device sync, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.27_1779321489425_0.939165688763127","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"@aight-cool/aight-utils","version":"0.1.29","keywords":["openclaw","plugin","aight","push-notifications"],"license":"MIT","_id":"@aight-cool/aight-utils@0.1.29","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"homepage":"https://github.com/aight-cool/aight-utils#readme","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"dist":{"shasum":"290f99d3c4183bb9fda63ddd1354ec78f351017e","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.29.tgz","fileCount":51,"integrity":"sha512-aIw/Vtaom4BsqwmYTtRCtfQ9bTo62l0F7m46z7PuHKK6lZFjSTSkwLrJnBSww206PBRIYY7AcjHeJ4FiRfhkMQ==","signatures":[{"sig":"MEUCIA3lBbsA2xHOY0FEsf+5gueKmk5GBtLsG3UYNLWLQzANAiEAxwtzVIhCSEDeI6ZJ9KxKBV+TexxbfG61XeQ5KD2cGkE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126699},"type":"module","engines":{"node":">=20"},"gitHead":"196dc612a6dca5ed28737c9173984da6c9fa9de6","scripts":{"ci":"npm run typecheck && npm run lint && npm run format && npm test","lint":"eslint . --ext .ts","test":"vitest run","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","format":"prettier --check .","typecheck":"tsc --noEmit","format:fix":"prettier --write .","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"repository":{"url":"git+https://github.com/aight-cool/aight-utils.git","type":"git"},"_npmVersion":"10.8.2","description":"OpenClaw gateway plugin for Aight App: push notifications, multi-device sync, config RPC, and agent bootstrap","directories":{},"_nodeVersion":"20.19.6","dependencies":{"@sinclair/typebox":"^0.34.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","eslint":"^9.39.2","vitest":"^3.0.0","openclaw":"*","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.7.0","typescript-eslint":"^8.55.0"},"peerDependencies":{"openclaw":">=2026.1.0"},"_npmOperationalInternal":{"tmp":"tmp/aight-utils_0.1.29_1779328070644_0.06781552971194182","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"@aight-cool/aight-utils","version":"0.1.30","description":"OpenClaw gateway plugin for Aight App: push notifications, multi-device sync, config RPC, and agent bootstrap","type":"module","license":"MIT","repository":{"type":"git","url":"git+https://github.com/aight-cool/aight-utils.git"},"keywords":["openclaw","plugin","aight","push-notifications"],"scripts":{"test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","lint":"eslint . --ext .ts","format":"prettier --check .","format:fix":"prettier --write .","build":"tsc && cp hooks/aight-bootstrap/HOOK.md dist/hooks/aight-bootstrap/","prepublishOnly":"npm run build","ci":"npm run typecheck && npm run lint && npm run format && npm test"},"dependencies":{"@sinclair/typebox":"^0.34.0"},"engines":{"node":">=20"},"peerDependencies":{"openclaw":">=2026.1.0"},"devDependencies":{"@eslint/js":"^9.39.2","eslint":"^9.39.2","openclaw":"*","prettier":"^3.8.1","tsup":"^8.5.1","typescript":"^5.7.0","typescript-eslint":"^8.55.0","vitest":"^3.0.0"},"openclaw":{"extensions":["./dist/index.js"]},"_id":"@aight-cool/aight-utils@0.1.30","gitHead":"01854fbcb03d835d7b3d31dea4049f209b2338cf","bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"homepage":"https://github.com/aight-cool/aight-utils#readme","_nodeVersion":"20.19.6","_npmVersion":"10.8.2","dist":{"integrity":"sha512-HXr29ACNpIKl66qprTyTvKwIu+q4ELAPElwNmyn+MwvLRNi6pImmYwodqJ/qolruH1Ie8wRyPudgYiIg+DMQ5w==","shasum":"9f24e172f60eabd937fe297725e0734d9369f356","tarball":"https://registry.npmjs.org/@aight-cool/aight-utils/-/aight-utils-0.1.30.tgz","fileCount":51,"unpackedSize":126867,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAnNtPqZxjVUhL88MTCvATp9Ijm/GdwlbjbKrNBj9Zk8AiAwtqw2+tugRR69C8PIM5s9YN6GAu/26bwDCqsxeRYCiw=="}]},"_npmUser":{"name":"brunobar79","email":"brunobar79@gmail.com"},"directories":{},"maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aight-utils_0.1.30_1779342669804_0.21109029581003047"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-16T08:18:54.955Z","modified":"2026-05-21T05:51:10.374Z","0.1.0":"2026-02-16T08:18:55.170Z","0.1.1":"2026-02-16T08:51:18.860Z","0.1.4":"2026-02-16T21:25:11.568Z","0.1.5":"2026-02-16T21:46:42.140Z","0.1.6":"2026-02-17T03:48:15.026Z","0.1.7":"2026-02-17T04:08:44.616Z","0.1.8":"2026-02-17T04:40:49.894Z","0.1.9":"2026-02-17T04:44:08.196Z","0.1.10":"2026-02-17T08:04:40.700Z","0.1.11":"2026-02-18T01:07:55.940Z","0.1.12":"2026-02-19T00:08:04.256Z","0.1.13":"2026-02-22T01:52:38.215Z","0.1.14":"2026-02-23T00:44:35.329Z","0.1.15":"2026-02-23T07:45:59.918Z","0.1.17":"2026-03-05T02:44:43.065Z","0.1.18":"2026-03-13T02:23:36.086Z","0.1.19":"2026-03-13T02:55:58.709Z","0.1.20":"2026-03-13T03:14:57.975Z","0.1.21":"2026-03-13T04:04:47.154Z","0.1.22":"2026-05-08T05:55:33.590Z","0.1.23":"2026-05-08T06:18:17.741Z","0.1.24":"2026-05-10T05:27:38.752Z","0.1.27":"2026-05-20T23:58:09.571Z","0.1.29":"2026-05-21T01:47:50.845Z","0.1.30":"2026-05-21T05:51:09.970Z"},"bugs":{"url":"https://github.com/aight-cool/aight-utils/issues"},"license":"MIT","homepage":"https://github.com/aight-cool/aight-utils#readme","keywords":["openclaw","plugin","aight","push-notifications"],"repository":{"type":"git","url":"git+https://github.com/aight-cool/aight-utils.git"},"description":"OpenClaw gateway plugin for Aight App: push notifications, multi-device sync, config RPC, and agent bootstrap","maintainers":[{"name":"brunobar79","email":"brunobar79@gmail.com"}],"readme":"# @aight-cool/aight-utils\n\nOpen-source [OpenClaw](https://openclaw.ai) gateway plugin for the [Aight](https://aight.cool) app.\n\nThis is the code that runs on **your** gateway when you use Aight.\n\n## Architecture\n\n```\n┌─────────────┐         ┌──────────────────────────────────┐\n│  Aight App  │◄──WS───►│       Your OpenClaw Gateway       │\n│  (iOS/RN)   │         │                                    │\n└──────┬──────┘         │  ┌──────────────────────────────┐  │\n       │                │  │       @aight-cool/aight-utils plugin     │  │\n       │                │  │                                │  │\n       │                │  │  ┌─────────┐  ┌────────────┐  │  │\n       │                │  │  │ Config  │  │   Items    │  │  │\n       │                │  │  │  RPC    │  │   Store    │  │  │\n       │                │  │  └─────────┘  └────────────┘  │  │\n       │                │  │  ┌─────────┐  ┌────────────┐  │  │\n       │                │  │  │  Push   │  │  Health    │  │  │\n       │                │  │  │ Manager │  │   RPC     │  │  │\n       │                │  │  └────┬────┘  └────────────┘  │  │\n       │                │  │  ┌────┴────┐  ┌────────────┐  │  │\n       │                │  │  │Reminder │  │  Bootstrap │  │  │\n       │                │  │  │ Service │  │   Hook     │  │  │\n       │                │  │  └─────────┘  └────────────┘  │  │\n       │                │  └──────────────────────────────┘  │\n       │                └──────────────────┬─────────────────┘\n       │                                   │\n       │                                   │ HTTP POST\n       │                                   ▼\n       │                ┌──────────────────────────────────┐\n       │                │    push-relay (CF Worker)         │\n       │                │    push.aight.cool │\n       │                │    (open source, stateless)       │\n       └────────────────┤                                    │\n          APNs / FCM    │  ┌────────────┐  ┌─────────────┐  │\n              ◄─────────│  │ APNs relay │  │  FCM relay  │  │\n                        │  └────────────┘  └─────────────┘  │\n                        └──────────────────────────────────┘\n```\n\n## What it does\n\nAight is a mobile app for OpenClaw. This plugin runs on the gateway side and handles:\n\n| Module                 | What                                         | Cost          |\n| ---------------------- | -------------------------------------------- | ------------- |\n| **Config RPC**         | Instant settings changes                     | Free (no LLM) |\n| **Items Store**        | Tasks, reminders, events — proper data store | Free (no LLM) |\n| **Push Notifications** | Wake your phone when agents respond          | Free (no LLM) |\n| **System Health**      | Memory, CPU, disk stats                      | Free (no LLM) |\n| **Reminders Service**  | Background scheduler for triggers            | Free (no LLM) |\n| **Agent Bootstrap**    | Injects tool context at agent start          | Free (no LLM) |\n\n## Install\n\n```bash\nopenclaw plugins install @aight-cool/aight-utils\n```\n\nOr from the Aight app: tap **Enable Notifications** during onboarding.\n\n## Configuration\n\n```json5\n{\n  plugins: {\n    entries: {\n      \"aight-utils\": {\n        enabled: true,\n        config: {\n          push: {\n            mode: \"rich\", // \"private\" (silent) or \"rich\" (with preview)\n            relayUrl: \"https://push.aight.cool\",\n          },\n          today: {\n            enabled: true,\n          },\n        },\n      },\n    },\n  },\n}\n```\n\n## RPC Methods\n\n### Config\n\nDirect gateway RPC — no LLM calls, instant response, zero cost.\n\n| Method               | Description                                        |\n| -------------------- | -------------------------------------------------- |\n| `aight.config.get`   | Read current plugin config                         |\n| `aight.config.patch` | Update plugin config (persists to `openclaw.json`) |\n| `aight.status`       | Plugin health check                                |\n\n### Items Store\n\nA proper data store for Today view items. Replaces storing JSON in chat messages.\n\n| Method               | Description                                                 |\n| -------------------- | ----------------------------------------------------------- |\n| `aight.items.list`   | List items (filterable by type, labels, status, date range) |\n| `aight.items.upsert` | Create or update an item (deduplicated by ID)               |\n| `aight.items.delete` | Soft-delete an item                                         |\n\n**Agent tool:** `aight_item` — only invoked when natural language parsing is needed (e.g., \"remind me tomorrow at 3pm\"). Direct CRUD from the app uses the RPC methods above.\n\n### Push Notifications\n\n| Method                  | Description                                                |\n| ----------------------- | ---------------------------------------------------------- |\n| `aight.push.register`   | Register device token + obtain sendKey                     |\n| `aight.push.unregister` | Remove a device token                                      |\n| `aight.push.test`       | Send a test push (always rich, regardless of mode setting) |\n\n### System Health\n\n| Method         | Description                                                    |\n| -------------- | -------------------------------------------------------------- |\n| `aight.health` | Memory, CPU, disk stats — runs shell commands directly, no LLM |\n\n## Push Notification Flow\n\n```\nAgent completes turn\n        │\n        ▼\n  ┌─────────────┐     ┌──────────────┐     ┌─────────┐     ┌──────────┐\n  │ agent_end   │────►│ Push Manager │────►│  Relay  │────►│  APNs /  │\n  │   hook      │     │ (plugin)     │     │  (CF)   │     │   FCM    │\n  └─────────────┘     └──────────────┘     └─────────┘     └──────────┘\n                             │                                    │\n                             │ Filters:                           ▼\n                             │ • NO_REPLY                   ┌──────────┐\n                             │ • REPLY_SKIP                 │  Phone   │\n                             │ • ANNOUNCE_SKIP              │  (Aight) │\n                             │ • HEARTBEAT_OK               └──────────┘\n                             │ • Empty messages\n                             │\n                        Suppressed (no push sent)\n```\n\n### Notification modes\n\n- 🔔 **Rich** (default) — visible push with sender name and message preview\n\n### Foreground suppression\n\nWhen the app is in the foreground viewing the same agent's chat, push notifications are automatically suppressed — no duplicate alerts.\n\n### Per-device auth (HMAC sendKey)\n\n```\nDevice registers push token\n        │\n        ▼\n  ┌─────────────┐     ┌──────────────┐\n  │   Plugin    │────►│    Relay     │  POST /register\n  │  (gateway)  │     │    (CF)      │  { token }\n  └─────────────┘     └──────┬───────┘\n                             │\n                    sendKey = HMAC-SHA256(\n                      masterSecret,\n                      \"v1:\" + deviceToken\n                    )\n                             │\n                             ▼\n                    Returned to plugin,\n                    stored in devices.json\n```\n\nNo shared secret in plugin code. Each device gets a unique sendKey derived from the relay's master secret. Zero state on the relay — sendKey is re-derivable.\n\n## Item Types\n\n| Type      | Use for                        | Statuses                               |\n| --------- | ------------------------------ | -------------------------------------- |\n| `trigger` | Reminders, events, deadlines   | active → fired → completed / cancelled |\n| `item`    | Tasks, PRs, issues, projects   | active → done / cancelled              |\n| `process` | Subagent runs, builds, deploys | active → done / cancelled              |\n\n### Reminders Service\n\nBackground service checks for scheduled trigger items every 30 seconds. When a trigger fires:\n\n1. Updates item status to `\"fired\"`\n2. Sends push notification to all registered devices\n\n## Agent Bootstrap\n\nInjects `AIGHT.md` into agent context via the `agent:bootstrap` hook — no workspace file mutations. Automatically removed when the plugin is disabled.\n\nTells agents about:\n\n- **`aight_item` tool** — how to create reminders, tasks, events\n- **Shortcuts** — when the app sends `shortcut: <text>`, reply with `{\"short_name\": \"...\", \"emoji\": \"...\"}`\n- **Security fixes** — when the app sends `Harden your soul`, add security hardening rules to SOUL.md\n- **Config patches** — how to apply config changes via gateway tools\n\nAll agent instructions are in this open-source plugin. The app sends simple trigger phrases; the bootstrap teaches the agent what to do. Fully auditable.\n\n## Data Storage\n\n| File                             | Contents                                 |\n| -------------------------------- | ---------------------------------------- |\n| `~/.openclaw/aight/items.json`   | Today view items                         |\n| `~/.openclaw/aight/devices.json` | Registered push device tokens + sendKeys |\n\nDirectory permissions: `0o700` (owner-only access).\n\n## Why open source?\n\nAight itself is not open source, but the code that runs on **your gateway** is. You can:\n\n- Read every line that executes on your machine\n- See exactly what gets injected into agent prompts\n- Audit what data flows through the push relay\n- Fork and customize if you want\n\n## Development\n\n```bash\nnpm install\nnpx vitest run\n```\n\n## Related\n\n- [push-relay](https://github.com/aight-cool/aight-push-relay) — open-source push notification relay (Cloudflare Workers)\n- [expo-openclaw-chat](https://github.com/aight-cool/expo-openclaw-chat) — open-source gateway client library\n- [OpenClaw](https://openclaw.ai) — the AI gateway platform\n\n## License\n\nMIT\n","readmeFilename":"README.md"}