{"_id":"@sqlite-sync/ai","_rev":"31-df4e87d244285744b3cf4035e7e17df4","name":"@sqlite-sync/ai","dist-tags":{"latest":"0.14.4"},"versions":{"0.4.6":{"name":"@sqlite-sync/ai","version":"0.4.6","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.4.6","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"2360e5e8aa84bc2f6b446ab57c483440c615c080","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.4.6.tgz","fileCount":6,"integrity":"sha512-nYRMp/YWVZ9OJrPq6h2xiJSiGfQ56fQjhlaOaMDVy1chCHsLoEVFfzQkmrOV7zR+Yz5WrWKhmnkKCkNtUXaKcA==","signatures":[{"sig":"MEUCIBVeSOmLPyTdigVDWpXZRuAYGmBupZanlMS/BjxeYsczAiEAhhJ65YjzJLMobH842+96Me+U3U4CREqiWnp35guV0Lo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15582},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.4.6.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"krolebord","email":"krolebord@gmail.com"},"_resolved":"/private/var/folders/s6/d53ff6m96xdgll30cjmc7vmw0000gn/T/56f3eda56425969c01f4ab2305f8b407/sqlite-sync-ai-0.4.6.tgz","_integrity":"sha512-nYRMp/YWVZ9OJrPq6h2xiJSiGfQ56fQjhlaOaMDVy1chCHsLoEVFfzQkmrOV7zR+Yz5WrWKhmnkKCkNtUXaKcA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.2","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"22.17.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.4.6"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.4.6"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.4.6_1781207047576_0.7381773181106617","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@sqlite-sync/ai","version":"0.5.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.5.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"3cc15cd58864a71af3148cb69218db827dbc707c","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.5.0.tgz","fileCount":6,"integrity":"sha512-9O7RjCtn7dqPXneV8ppPFDNEsRS2A8msDGAzAU+FYAX5+E8faFAAPCbN2imX/Y+8kJaMwFk11vNOycIqwTVFIg==","signatures":[{"sig":"MEUCIQDUdDgXgejFIKWp1w1JRNTHJ46VOmlYiNk10IAEOqA4TAIgDSQKXL5pgZ/ZWlX/UkxzffBiNRm6M+idi2DAkIPh4DI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15582},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.5.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/49aca2a51b3433f1350f20db9824d8a4/sqlite-sync-ai-0.5.0.tgz","_integrity":"sha512-9O7RjCtn7dqPXneV8ppPFDNEsRS2A8msDGAzAU+FYAX5+E8faFAAPCbN2imX/Y+8kJaMwFk11vNOycIqwTVFIg==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.5.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.5.0_1781207927140_0.7462800130284752","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@sqlite-sync/ai","version":"0.6.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.6.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"27090e396a151159a57f01c580ebd496bb9bb872","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.6.0.tgz","fileCount":6,"integrity":"sha512-sA1+x004CleUeYCQoirEO6PNxByJk+zm25Fhzletgqs6D0eqLvTMBSFV3xUD+ae4A57ozpSG8bsgGT1aX/lxGQ==","signatures":[{"sig":"MEYCIQC/I3HZQJu1itKikfXKtZi6yVCncudffwM3zDmoERHGKAIhANiGErm25fqt1hwQ522OjfQTuHuOHJRJpsnHAZU6RzYg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":37853},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.6.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/65e618f6774552fc792c4d1bd3132498/sqlite-sync-ai-0.6.0.tgz","_integrity":"sha512-sA1+x004CleUeYCQoirEO6PNxByJk+zm25Fhzletgqs6D0eqLvTMBSFV3xUD+ae4A57ozpSG8bsgGT1aX/lxGQ==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.6.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.6.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.6.0_1781255770252_0.23038458026247088","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@sqlite-sync/ai","version":"0.7.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.7.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"7aa8094535bb23728d8fcdbd84f77a447feae5e7","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.7.0.tgz","fileCount":6,"integrity":"sha512-PBYoP+NiU1hwbVG8/IRn3wHFfyd374mSxUoFRvtgo0frFzj+tAevZWxlmqzutp6rYq/kvHZKvKeGxY+815U4LQ==","signatures":[{"sig":"MEUCIEmZU1lLof08bZ2QU22JVuAyy7QFWEZpi4FjqPJtetfuAiEA5qcytyfYF5ZxByozJwD/gym4jMtDXrevnPTSPsQPS3s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52209},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.7.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/2e6123490be34e193f055b41b3cc2be7/sqlite-sync-ai-0.7.0.tgz","_integrity":"sha512-PBYoP+NiU1hwbVG8/IRn3wHFfyd374mSxUoFRvtgo0frFzj+tAevZWxlmqzutp6rYq/kvHZKvKeGxY+815U4LQ==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.7.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.7.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.7.0_1781527524964_0.6227353134624194","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@sqlite-sync/ai","version":"0.7.1","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.7.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"adf0c85c936d4777d9c4008758e880aeb6b30671","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.7.1.tgz","fileCount":6,"integrity":"sha512-2hINvGEwPaJuvN52vIU6lSUXRNvGzMQe9f43azd1R3uS4RDkn0cl//yyNVFmAJJhORMtMJorNiDCeMKv7NGU5A==","signatures":[{"sig":"MEYCIQDYL0dgaXt09gh9Ar/wl3cZ5BEkqa6UJB+0SN1rOSO0iwIhAOAS22raj85jdj4c663EXK16QP7DvVhooieClSPpcnCi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52209},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.7.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/e919008095024107ca60a64490389e51/sqlite-sync-ai-0.7.1.tgz","_integrity":"sha512-2hINvGEwPaJuvN52vIU6lSUXRNvGzMQe9f43azd1R3uS4RDkn0cl//yyNVFmAJJhORMtMJorNiDCeMKv7NGU5A==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.7.1"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.7.1"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.7.1_1781640306529_0.35931617239941427","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@sqlite-sync/ai","version":"0.7.2","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.7.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"8d883906e90703f64f2134eab6bffeff3a9eaa28","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.7.2.tgz","fileCount":6,"integrity":"sha512-toBfE8HJZhuxWED/9dMJYRWQnyOBVYCZqKUVX3RC7DKymmoXKYOBbmRTikj6uMk1LQX+no0UUq34oVjdYMwGEg==","signatures":[{"sig":"MEUCIHZOybBDbLOpr5IcX8gGIsQY3rUeR50+FGkkzg78RotNAiEAlGjXEz3xln7E/nlLLHhJNLOjOH/HighEBLjV3DEIx0k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52209},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.7.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/0b672267fe4a48a65a9398823d1a780a/sqlite-sync-ai-0.7.2.tgz","_integrity":"sha512-toBfE8HJZhuxWED/9dMJYRWQnyOBVYCZqKUVX3RC7DKymmoXKYOBbmRTikj6uMk1LQX+no0UUq34oVjdYMwGEg==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.7.2"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.7.2"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.7.2_1781640985766_0.42332904470150523","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@sqlite-sync/ai","version":"0.8.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.8.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"5f746acda50e1d0f701db0bb3c4e23225220305d","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.8.0.tgz","fileCount":6,"integrity":"sha512-Nh0Y7f9KfjcnZjjPaUGwSjJBNwlEz8I228hIJ5T3R6rWVRNHOSXhSiAbsr9r/gd3Uq7F8xdqPbdKOTNaKE7p2g==","signatures":[{"sig":"MEYCIQDrHxoXjirIgXv1UPuhp3QxcZVHj0H8iUKI5dCPJ6us0gIhAKoRa1FDwiYHFAKr0ufEZVepC6xpOJE1Q0m1Vtxlr1aS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52209},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.8.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/0047c15ba9eac0fe8711ffdb629329db/sqlite-sync-ai-0.8.0.tgz","_integrity":"sha512-Nh0Y7f9KfjcnZjjPaUGwSjJBNwlEz8I228hIJ5T3R6rWVRNHOSXhSiAbsr9r/gd3Uq7F8xdqPbdKOTNaKE7p2g==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.8.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.8.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.8.0_1782078788963_0.7022198974031026","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@sqlite-sync/ai","version":"0.8.1","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.8.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"89ff9ec1d0530b4f05ae3d0cfe7fbc22af726f0a","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.8.1.tgz","fileCount":6,"integrity":"sha512-DFmZ0hE3qilrVr0mjdU6ckhE36gYnbqKHkzTAb5+DkjQojGRWgOpqxjO/wd+GtUDcaeUHitJO/oN18SvmsNyew==","signatures":[{"sig":"MEUCIG8jkLUPjV/SExmIS1nPrpKDzHyeH5ze25a58roBlXV1AiEA3A3GcX6D5X6hP0fGN0X/WvAd7ea5B8fkb8CwgOpACBo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52209},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.8.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/a1469f3c6a584d46c858db0065adebd6/sqlite-sync-ai-0.8.1.tgz","_integrity":"sha512-DFmZ0hE3qilrVr0mjdU6ckhE36gYnbqKHkzTAb5+DkjQojGRWgOpqxjO/wd+GtUDcaeUHitJO/oN18SvmsNyew==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.8.1"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.8.1"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.8.1_1782124395126_0.7425122323324567","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@sqlite-sync/ai","version":"0.8.2","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.8.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"fecfdd90ba9d5314eeaddf8de7db4a06d005ddfc","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.8.2.tgz","fileCount":6,"integrity":"sha512-e9HIY8vermmbNssEoReQUfSOjqKnKAGm8EAM9teH8ay6yNz+XcMOgNsL2jtO1VXui5mBJODRHjP8Zf0ii5V2Qg==","signatures":[{"sig":"MEUCIQDuYoS7aKmvHW0Ix0zmZgGWd/XvAgi7taiMUA/BB+NLawIgT+h+/1zIX6PuF7Yn1ggbewIKMMDkOCLq81EG6EjdqJc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":55591},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.8.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","typecheck":"tsgo --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/af0c1e8d599ee34e892935120ef41f2e/sqlite-sync-ai-0.8.2.tgz","_integrity":"sha512-e9HIY8vermmbNssEoReQUfSOjqKnKAGm8EAM9teH8ay6yNz+XcMOgNsL2jtO1VXui5mBJODRHjP8Zf0ii5V2Qg==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.13.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsup":"^8.3.5","vitest":"^4.1.8","typescript":"~6.0.3","@sqlite-sync/core":"0.8.2"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.8.2"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.8.2_1782146414551_0.4286194895340465","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@sqlite-sync/ai","version":"0.9.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.9.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"7bca23da084435d44f2c4b25296edea2a2b92f05","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.9.0.tgz","fileCount":6,"integrity":"sha512-ppjA0W3JUrESB1iaf/YI35tVmwZ5v6o6bBBXSbe+8KiP83mKb356XlFAnFMyqgfZiivseLRy01XHrDKXahHOvA==","signatures":[{"sig":"MEQCIA0DH3ofGPyUBQsjp82tZY/jr9kDT/3UDdL7PKI5kluhAiAF9iO+97Tl7UvMHid0N6MTmG4uY+IXM4G7hWol1xaflg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":54432},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.9.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/216cd981097df6dc4b98616126b167ed/sqlite-sync-ai-0.9.0.tgz","_integrity":"sha512-ppjA0W3JUrESB1iaf/YI35tVmwZ5v6o6bBBXSbe+8KiP83mKb356XlFAnFMyqgfZiivseLRy01XHrDKXahHOvA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.17.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.9.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.9.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.9.0_1787491158882_0.726487178833209","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@sqlite-sync/ai","version":"0.9.1","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.9.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"ca79f0a46dfcbaf2380fe3de7abbd15f22285a6e","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.9.1.tgz","fileCount":6,"integrity":"sha512-pWQkIr9xr5Y6iPZ0FzPMdSHDdC8zw4LHOL9G6JDqoQktfDAtALHVrwohYZXnM8/dE/ZZuIkg7hIwnUBWNxGqTA==","signatures":[{"sig":"MEUCIQDL1AK2xx/gCAEGZggV6UDDMBPq/c6qaMfXiOYj/lP37QIgAXKhRgiUN3ROjxq6EUYAH5dY/9pzpEIweEQTGgMVtg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":72503},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.9.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/c7aa1934e74e428765393f7b41d37abe/sqlite-sync-ai-0.9.1.tgz","_integrity":"sha512-pWQkIr9xr5Y6iPZ0FzPMdSHDdC8zw4LHOL9G6JDqoQktfDAtALHVrwohYZXnM8/dE/ZZuIkg7hIwnUBWNxGqTA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.17.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.9.1"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.9.1"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.9.1_1787522972167_0.6840960650068362","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@sqlite-sync/ai","version":"0.9.2","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.9.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"0bfa8d8e0adb46e29e06cea3e1347f9377ce00ec","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.9.2.tgz","fileCount":6,"integrity":"sha512-1uyIC9RSwmPJQ4ewy0xPuZudn9VCbcTgYY0qNqkeY94iqhgTNW70m1cvPKpn3ILttyffX1NB7JnuutwSc3GPyw==","signatures":[{"sig":"MEUCIQD/Batx4P3qDVkVf+OF3aTpIwqBGr1eUQfX9PvQ20BSSAIgCaZhcHZUsr3SEXT1DeneZvBKvky4lTdYaBex2KCjL3I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71476},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.9.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/6d7f09cb9107096bc3d97a4e1bedd1a8/sqlite-sync-ai-0.9.2.tgz","_integrity":"sha512-1uyIC9RSwmPJQ4ewy0xPuZudn9VCbcTgYY0qNqkeY94iqhgTNW70m1cvPKpn3ILttyffX1NB7JnuutwSc3GPyw==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.17.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.9.2"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.9.2"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.9.2_1787557857513_0.46619330526203684","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@sqlite-sync/ai","version":"0.9.3","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.9.3","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"1e134dfd0a81dd9e9edbeb8dc39335a85dca1b88","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.9.3.tgz","fileCount":6,"integrity":"sha512-BUKazutpCsuDwZQoHtyKdagDhW+EN2fmjyZ2z5ucDF66OM3IqUvRBh7ExTb2nuczivkXsxgJAtmM5PWyS4Ybog==","signatures":[{"sig":"MEYCIQC61eV0fkibTxloDAW2NN6L40MlybIIm0A4D9V8GZzWUwIhAJ4ulc51joGp0CEabWBEERkIS4dpYEO+H+2vmZRL/yoU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71476},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.9.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/b438ac851f8938457ac39a98b4e7d14e/sqlite-sync-ai-0.9.3.tgz","_integrity":"sha512-BUKazutpCsuDwZQoHtyKdagDhW+EN2fmjyZ2z5ucDF66OM3IqUvRBh7ExTb2nuczivkXsxgJAtmM5PWyS4Ybog==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.17.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.9.3"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.9.3"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.9.3_1787562619463_0.6880524185417587","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"@sqlite-sync/ai","version":"0.9.4","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.9.4","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"5a35ee7e51a17d9cce068cabc9eb57bf3ed9a5f7","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.9.4.tgz","fileCount":6,"integrity":"sha512-7tXWxHOVS0H6rgJTlM1yzZhO4a8GK/oZdWff7PRBlAXTfWX4usJrAIMtv3cED1/kNcuZeLXhz1D6Y9ErZlz7Rw==","signatures":[{"sig":"MEUCIEn2CViW7RPb0Gls3ZTOvO8xgUriCWrEg+8Ny9oJitJRAiEAl5NdWNqUT7nkJUC0cHBAlgokoc23mRZY07zkpuTtLoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71476},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.9.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/586c3667549782fc5c7e18da74f64b3b/sqlite-sync-ai-0.9.4.tgz","_integrity":"sha512-7tXWxHOVS0H6rgJTlM1yzZhO4a8GK/oZdWff7PRBlAXTfWX4usJrAIMtv3cED1/kNcuZeLXhz1D6Y9ErZlz7Rw==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.17.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.9.4"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.9.4"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.9.4_1787908311006_0.7025942993215128","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@sqlite-sync/ai","version":"0.10.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.10.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"8021a5d8fc44492faace4e39a3e8945f29faaddb","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.10.0.tgz","fileCount":6,"integrity":"sha512-yIn2di+dc89D6UC3KztA6g6yiDE67rNQIX/K4xLbkM2MGaSx6uVMI8Y6/Y8LWgQ2hckhICZzBfFoxV2LZAQqCg==","signatures":[{"sig":"MEQCIEGSKXNXLLxdpJHMSfvCbV7DyIuw8kvYqI5pmiFNpDVmAiBV2/Lxs1SV9DeoRHfBO/z5uexW0HZdltoAqVprE8VeOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAvOJsJRyf2o+wUhaJfBgHguybpEWj1PK/yHDD9RYNdFAiEAihl5Js6Cqc5UO/y2IgSPeA7RE/PsfwFz8BPdY9NFY0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71479},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.10.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/c4acb8e370377ab68341b2a4472c6c35/sqlite-sync-ai-0.10.0.tgz","_integrity":"sha512-yIn2di+dc89D6UC3KztA6g6yiDE67rNQIX/K4xLbkM2MGaSx6uVMI8Y6/Y8LWgQ2hckhICZzBfFoxV2LZAQqCg==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.10.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.10.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.10.0_1791490835705_0.28318939212250593","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@sqlite-sync/ai","version":"0.10.1","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.10.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"4a805faa9aa353cb516dc58dcf790f79126eec6f","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.10.1.tgz","fileCount":6,"integrity":"sha512-OtF6LflnCckpzxmxLSS5j/W7q8xEwSdLVjdENCD5RfKRDM5JEYoY+59JGMEVKQ/SgX75ZUx1Mc+6nSdJVhRhdA==","signatures":[{"sig":"MEUCIQDSTueL7YImAcDnT45uqwjdsS8uDnjydgK4hMqXrmaoYgIgRgWoiup/CMf4GzNBGf1mqr0wpPPmCE8iTE8dQoaceXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCID453CvLYHlIHC8zCm1O7Tn8jLZrKF4gbM8gNPS4loGwAiEAufoCI334+ha80d1Jrag9A9MIpsnHDsJNg43Mcie/Smc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71479},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.10.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/580d554ba727078899218b7ca1027cd5/sqlite-sync-ai-0.10.1.tgz","_integrity":"sha512-OtF6LflnCckpzxmxLSS5j/W7q8xEwSdLVjdENCD5RfKRDM5JEYoY+59JGMEVKQ/SgX75ZUx1Mc+6nSdJVhRhdA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.10.1"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.10.1"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.10.1_1791532763292_0.9980479785123302","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@sqlite-sync/ai","version":"0.11.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.11.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"1f5aae00ad95908cbabea48eca604596f63230f0","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.11.0.tgz","fileCount":6,"integrity":"sha512-F10AYbxqVNQVdki+o40BADK0ljd3KkRnxO9gIQscUpO+fECHoGyu8W75YIDh4xaPRGFKv4rrWl1SD1qQK9CYEg==","signatures":[{"sig":"MEQCIFVSFaWzCEt/FV9u4kBqN5jUqDFORTPgMRc2K08A/ejQAiAs/YSKcDhJTlYKK2CSfJbPd0+liHxtSi08E3QBBefsAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCn34maPoPhVTCpweQzH36/Xl9Gos0Uua7i/3WJ98U57wIgWEPKA6cSGL3i+mFYI/+GCGny8FRmauPlSaBsHTG0nwM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":72122},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.11.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/c471ac00d304c851b1a625afe074d489/sqlite-sync-ai-0.11.0.tgz","_integrity":"sha512-F10AYbxqVNQVdki+o40BADK0ljd3KkRnxO9gIQscUpO+fECHoGyu8W75YIDh4xaPRGFKv4rrWl1SD1qQK9CYEg==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.11.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.11.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.11.0_1791579213376_0.5046105147457638","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@sqlite-sync/ai","version":"0.12.0","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.12.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"10af9a8741929ee23d43f88d768a1ef3eae708e1","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.12.0.tgz","fileCount":6,"integrity":"sha512-uD/sRmly71aPtZXtyXQJ3ZFUOZUlVHeQjHNSgDBtT5GU+e5+gxA12nJBiyRCa9VaEwURRgjJ8ICJgIRAUXF1RA==","signatures":[{"sig":"MEYCIQCGQtajNqnRElf7jUdeu48Oa/d4lszWvjyKzgvm0h8onAIhAIhoXsDt5mIQ2p5bgQO8ew1nAnUjZfU5AlsDhW3Qe5iN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCX3pC2FqlDdNc6gR08R5LYbhWBhKkoquRLj226PL0zqAIgd+SCjdPQiNvsQTij7+EyFffXneUDqPgVb1IR8jX9F1Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71284},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.12.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/d96072603dea1e645e7c6c78a5b6bf84/sqlite-sync-ai-0.12.0.tgz","_integrity":"sha512-uD/sRmly71aPtZXtyXQJ3ZFUOZUlVHeQjHNSgDBtT5GU+e5+gxA12nJBiyRCa9VaEwURRgjJ8ICJgIRAUXF1RA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.12.0"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.12.0"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.12.0_1791728510587_0.07630560005207276","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@sqlite-sync/ai","version":"0.12.1","keywords":["sqlite","sync","ai","agent","tools","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.12.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"46f0557d7fa2d7d601a18bb79da81f2f9a54fb87","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.12.1.tgz","fileCount":6,"integrity":"sha512-8FYwCJ66/lZJMcQhEh+yNw075jLzDU4OQnB6n/KZNKJKPSi6EGR9RzyUI0bwTGnTmpxCmKaF+QftaJPVT7gdRA==","signatures":[{"sig":"MEYCIQCk0PMZuLpEJD/cRNN9DyyZ+95dv6H8MKrwTwaNlYIXQAIhAJ+GapsiSBw6VtRbkO8EwlslLINxFVBH5CRIxDeUFdNA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCR+Q9EYqsSV+hH/3CfkohE9XAswSAKFxHgm9yGVOJP5QIgSYtqelESV0PFQbPxFgZmQ+vN6RQ3chUMU059MHZDmhQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":71239},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.12.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/69586f59cd1eb8750c86a3a96f0d2d3c/sqlite-sync-ai-0.12.1.tgz","_integrity":"sha512-8FYwCJ66/lZJMcQhEh+yNw075jLzDU4OQnB6n/KZNKJKPSi6EGR9RzyUI0bwTGnTmpxCmKaF+QftaJPVT7gdRA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.201","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.12.1"},"peerDependencies":{"ai":"^6.0.0","@sqlite-sync/core":"^0.12.1"},"_npmOperationalInternal":{"tmp":"tmp/ai_0.12.1_1791823923043_0.9296703231185031","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@sqlite-sync/ai","version":"0.12.2","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.12.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"40989ef7b9aad681ad37a19cc6d2583615535137","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.12.2.tgz","fileCount":12,"integrity":"sha512-Wrli38BpC2AQxfa/O45gMq8WtpZ4Cqmju4Ubha65AbJpGNUviBf0hO6tovNSkXC1p8xz1TadF0w53mkBwe4txA==","signatures":[{"sig":"MEYCIQD8EPCOmO6IYsQ+Ox4488PScVAXuiyr+y9HIL5eLpBdEQIhAI6zNqxq68VS5+YL5JM+zjgVHHIJ3XXPqxH6xXKI42eY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDwRnTXslgpWzZwIMMlq05UQL7Ux2e45P4EHExPPDLbzwIgRxB+HuB9enqdrsSr4j+r7saH9eF6eeCG+KpKQi7nHuo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.12.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/123fc16279a68b4e56c05c57268bf1af/sqlite-sync-ai-0.12.2.tgz","_integrity":"sha512-Wrli38BpC2AQxfa/O45gMq8WtpZ4Cqmju4Ubha65AbJpGNUviBf0hO6tovNSkXC1p8xz1TadF0w53mkBwe4txA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.12.2","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.12.2","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.12.2_1791835138525_0.8670435264520362","host":"s3://npm-registry-packages-npm-production"}},"0.12.3":{"name":"@sqlite-sync/ai","version":"0.12.3","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.12.3","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"11d59a987b37f86ca1eee05aaa82e96b44a57331","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.12.3.tgz","fileCount":12,"integrity":"sha512-Kbm/ap+cPclpnarR8eODeSzbJzKGpDZJanKxUbJjMM7bTzz8OcRfo0TXJYxT/TM3yvxwi4CawGcFOUsCLitVgw==","signatures":[{"sig":"MEUCIBOfOJBLD/yNUdy/6W51xp5VeJ9GvgjXqgZX/eWGqbyBAiEAmNMsbc7y8mY7tyWPlXkvyRpJoirAd2DQFtgj774qZhI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDTrN4DPX5+JvrM9ZMOoGJSrubo6dg+og1TG5GsistLZAIhAMpl1xkZ7ShptJUaNK2oFt6pkT6P5QJ9axEXe8K/n+/l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.12.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.12.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/5c7d322764f598ddd6c7a681c85ecdba/sqlite-sync-ai-0.12.3.tgz","_integrity":"sha512-Kbm/ap+cPclpnarR8eODeSzbJzKGpDZJanKxUbJjMM7bTzz8OcRfo0TXJYxT/TM3yvxwi4CawGcFOUsCLitVgw==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.12.3","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.12.3","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.12.3_1792421431733_0.39769053232286433","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@sqlite-sync/ai","version":"0.13.0","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.13.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"41ed562c48aa43cef942950048125aa74fb1f465","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.13.0.tgz","fileCount":12,"integrity":"sha512-132eWPvi/KtRYj/5rACiOY55Ff1XVjRnHA82EJZpDLuyO4vfpl75J9Sb8p710Sw0n9Rnvpx1HP7k5bMm+uV1zA==","signatures":[{"sig":"MEQCIHtduFCie06fIFXnBwNA8/+Wpo8ImqWA+HyJMNvgT26OAiATWE+pMkXZbUTfHI1Q/ZlbiDVuhiemvudXp/nI2QAt8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICSlb6Nnhm6gSIoHyN9by9DsIGZhODRjn3ktKHZ7Fdg6AiA1LgFIINmJG3e6v3kXuKXAAwQfCnPM2iMSAAnncplnCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.13.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/81e3394e8cc3961240b7dedd5c2dac38/sqlite-sync-ai-0.13.0.tgz","_integrity":"sha512-132eWPvi/KtRYj/5rACiOY55Ff1XVjRnHA82EJZpDLuyO4vfpl75J9Sb8p710Sw0n9Rnvpx1HP7k5bMm+uV1zA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.13.0","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.13.0","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.13.0_1792571280282_0.26270540538719533","host":"s3://npm-registry-packages-npm-production"}},"0.13.1":{"name":"@sqlite-sync/ai","version":"0.13.1","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.13.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"4f72881e35be07981b38dc162659370161b02828","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.13.1.tgz","fileCount":12,"integrity":"sha512-RwDn8oyVoJ8y7B/NQoaIn5Nt8kmrcwv4sNvmry1RAzG1Z/Ua2XBTfAhGMGqLMavE3bEXcEwzf2nYSZI2t3MekA==","signatures":[{"sig":"MEQCIBpbYQbqw7CrRbp0y5jMTW/Jz2h0l0hHUIfzBloJSrosAiAbujP6Zk4U8ekC+jJRf1RoB9l/O8gRJE3BKrG4zeYWrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEMCIGr8HAd0OThhUnls5mKDez0OeaTCTlGp7ZL6m++BRZfTAh8b3B1XKQk3fk7dicLRm6vv8EyCioHvw0zn4YDqNddK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.13.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.13.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/60a4fc96f601dadb568f4f03c196cd9f/sqlite-sync-ai-0.13.1.tgz","_integrity":"sha512-RwDn8oyVoJ8y7B/NQoaIn5Nt8kmrcwv4sNvmry1RAzG1Z/Ua2XBTfAhGMGqLMavE3bEXcEwzf2nYSZI2t3MekA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.13.1","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.13.1","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.13.1_1792573271241_0.6350222818090698","host":"s3://npm-registry-packages-npm-production"}},"0.13.2":{"name":"@sqlite-sync/ai","version":"0.13.2","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.13.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"c9f409454fca370f97e3311d8bfd3599d721e097","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.13.2.tgz","fileCount":12,"integrity":"sha512-PbANwAQm7CpJLdnoCCveKiRUj25HbJS9Y5TgSEWFZ9TA7yvCi8ghpfuPyQC49YMYwX/alLyb285A2crMEOZh8w==","signatures":[{"sig":"MEYCIQDpeBB3OOrB8hQbVJe1kwZACqkGVdm5D5d1bcf2poDQWwIhAMHFmqeEfly8U0hVcHZhKWkup5+9+IvJfvfySLOFdAhF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD0jLuRQ1jjiwE/n9qOow39dEe4zO5l/fAP/8CBqDdVuQIgYMhIzZg11CufrTEkycbo/WSpulc3MQSblfKm0W6dI5k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.13.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.13.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/fbe196196ec2f373a6e3afffa1c8ee46/sqlite-sync-ai-0.13.2.tgz","_integrity":"sha512-PbANwAQm7CpJLdnoCCveKiRUj25HbJS9Y5TgSEWFZ9TA7yvCi8ghpfuPyQC49YMYwX/alLyb285A2crMEOZh8w==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.13.2","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.13.2","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.13.2_1792590521693_0.9702230835829837","host":"s3://npm-registry-packages-npm-production"}},"0.13.3":{"name":"@sqlite-sync/ai","version":"0.13.3","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.13.3","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"ad94f58e1bfb92643ea99bdd7b2d4ae896426e1e","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.13.3.tgz","fileCount":12,"integrity":"sha512-R6l0IUyisBg7AtmHJmgAwLipqgc5jCwyvSDHRdA+m8PlLsqzgEBag0VgGpYwhwLsmZFiocq8hVNjkXN+86kBVA==","signatures":[{"sig":"MEUCIQDC8BLYfzbawYtN9Z48eE3ON7qMflslTn/mgdfrqaHhkgIgeFZMS2FLhlyfdgWf7Whg4WHsKxNycEr7cUFZjIj+pHc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCcMYP26sqFx0qGEBe24LnjSB6ZKRZo0x8SvUb3GaCTbgIgN3KTMUPN2kJ60ZsQqZV/KZ6BGL4bRHSF9vKN18o1K4o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.13.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.13.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/2b05dcbe1e3f79d574b0eda108823b1d/sqlite-sync-ai-0.13.3.tgz","_integrity":"sha512-R6l0IUyisBg7AtmHJmgAwLipqgc5jCwyvSDHRdA+m8PlLsqzgEBag0VgGpYwhwLsmZFiocq8hVNjkXN+86kBVA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.0","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.21.0","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.13.3","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.13.3","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.13.3_1793058097521_0.5249013308385568","host":"s3://npm-registry-packages-npm-production"}},"0.13.4":{"name":"@sqlite-sync/ai","version":"0.13.4","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.13.4","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"0a309fa68097751dc6d010cfefe0b931fef638cb","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.13.4.tgz","fileCount":12,"integrity":"sha512-f0nOdv+dQWJVrt5bRVd3Do7VeFNqKLQ64D1vvKmlkck5t/jy9Ez9gF709MMcPUHCHe3HI/j+WTtuKxFjHzfJeA==","signatures":[{"sig":"MEUCIH2oZmejsIYZKf4bhcMdpxI2GA78jYKDoute2lJFZqs4AiEAnzKLJKXkTnbV5c2gkjtGw3OY/kS91Fyxrv/kfiPyuqI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIG+fEYnpR1ZcqQee7EkNnk2Vh7cAklH99lDuiZo9HrgGAiBpRGDb/A13kHq4mjHNXW7wSEy9dhk8OMmYRb0N/cbdrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.13.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.13.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/2149be3ee4d3adce4d2b3346290011e1/sqlite-sync-ai-0.13.4.tgz","_integrity":"sha512-f0nOdv+dQWJVrt5bRVd3Do7VeFNqKLQ64D1vvKmlkck5t/jy9Ez9gF709MMcPUHCHe3HI/j+WTtuKxFjHzfJeA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.13.4","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.13.4","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.13.4_1793975197664_0.012378331119951014","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@sqlite-sync/ai","version":"0.14.0","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.14.0","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"46f27cf36aebaf06fe6a3fda998e51bdee6f9358","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.14.0.tgz","fileCount":12,"integrity":"sha512-YPL0GCRW/xl0K6zBVdRMv55/I6gMRxsnh8TsN9jRTg2oePEKXzDPv4p3FnFIL8RcvmOMhN04zox49pUwFaSBqQ==","signatures":[{"sig":"MEYCIQCBGGANHBxRCpdpl8qyxo9mgK3kbciqg3DrnaguEzeBogIhAKh+CxCTzT0pmCCeXVeq8UB+IFVZydCRGDTqqb0dpmfT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIE/osln9QUJuAuKV1m1jWd43TYdnlUJSHsKuJFRW8+hOAiEAsLNExrUkOcLWzBEwi0RuqA3pwiSpuH0+4Rfh0XfFgWs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.14.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/4ab0c417eaf7cafece6ad0d3a2cdbe97/sqlite-sync-ai-0.14.0.tgz","_integrity":"sha512-YPL0GCRW/xl0K6zBVdRMv55/I6gMRxsnh8TsN9jRTg2oePEKXzDPv4p3FnFIL8RcvmOMhN04zox49pUwFaSBqQ==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.14.0","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.14.0","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.14.0_1793981739151_0.9875787834214079","host":"s3://npm-registry-packages-npm-production"}},"0.14.1":{"name":"@sqlite-sync/ai","version":"0.14.1","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.14.1","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"d98d4f24c91bfc9875160c43b32b96cfcd42d509","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.14.1.tgz","fileCount":12,"integrity":"sha512-V+HlMNbJ34FTrjj4aKsPb73/n7Xl9kmPIGk6MwzOZABYQm3VIov7/DratIBlSkG2lapa4vn8zDifICuy4dObeA==","signatures":[{"sig":"MEQCIHCYUGbn+qfFDnsL/yTOkS3T2Dphq+IPIZC5cdNxPCGdAiA8h5lwr6IA2YYEvAofp0fR42QSodhbYyTVu2mJrbKvOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCHm9QdMbC8jAWHtkqFWU+NH8K2Q+DnbhU07zdJH7jFzwIhAPb5BzpKyL3nPB6ZGCgFs7D62Lxze1ZkHtffoqyQaAtQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.14.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.14.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/be912bd598a0a42a6924c4a569b14d53/sqlite-sync-ai-0.14.1.tgz","_integrity":"sha512-V+HlMNbJ34FTrjj4aKsPb73/n7Xl9kmPIGk6MwzOZABYQm3VIov7/DratIBlSkG2lapa4vn8zDifICuy4dObeA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.14.1","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.14.1","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.14.1_1793982771660_0.9921218921852372","host":"s3://npm-registry-packages-npm-production"}},"0.14.2":{"name":"@sqlite-sync/ai","version":"0.14.2","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.14.2","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"aca683e5d6b00c9e46c4b354ab9330f29e2b43d0","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.14.2.tgz","fileCount":12,"integrity":"sha512-Htf36t2e7//hn7lYEfefTW0XL6t+7iy9/AfaziLA/MHEln5ccYMO4uwGXlfNBax8DYMfoMZYN3Wjv+Trs7ET6A==","signatures":[{"sig":"MEYCIQDvOmG4PSEeZvFImPd9m4c/Mr1wTMcSfd9CEae9PukZmAIhAJ2GxzzqvGciq2OzTpsSNFI5Zoy/TQAQtaCl304Ox7cK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDxlQebcaxg3TYuOv+u44fqP6edg3jeON1Ov+2anT3ItwIgDSzGqA6LuYxz3EwkH8dVvdhdDfxdcYMsSC6/UdHv7pE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.14.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.14.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/bf6309405de8eee83658ccfeb0ef066b/sqlite-sync-ai-0.14.2.tgz","_integrity":"sha512-Htf36t2e7//hn7lYEfefTW0XL6t+7iy9/AfaziLA/MHEln5ccYMO4uwGXlfNBax8DYMfoMZYN3Wjv+Trs7ET6A==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.14.2","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.14.2","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.14.2_1794133449023_0.6203968957805085","host":"s3://npm-registry-packages-npm-production"}},"0.14.3":{"name":"@sqlite-sync/ai","version":"0.14.3","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"license":"MIT","_id":"@sqlite-sync/ai@0.14.3","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"0fcd24139e142b5641aa8f77934ede2c79aa312d","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.14.3.tgz","fileCount":12,"integrity":"sha512-Xt5HgCr5QsIbgFMQJeId9NTXb4e2jliqByc1jtupnh/laBSPpxSshqkNYmUqtw09gv0pEM1FKTlmhImBCRCh1A==","signatures":[{"sig":"MEUCIQCSiO7W5UWhANOKPOJarkThTuPcpFYF9X0rc+q1LO4aDQIgdAW6Kg+8wYgodSamIrxy1Y6YVwVgfKrxpKxAvp63M6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFvMGoLpvpoUOGykK8P1m2M4A5Y05C1GAbdaPPELPAUwAiBtcXaaWmDhvqsrmYUgy1UK9JiwNK2GurbTu68HBV9RkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.14.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92305},"main":"./dist/index.js","type":"module","_from":"file:sqlite-sync-ai-0.14.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"_resolved":"/tmp/2f602ac7904994d554c759a979db66e9/sqlite-sync-ai-0.14.3.tgz","_integrity":"sha512-Xt5HgCr5QsIbgFMQJeId9NTXb4e2jliqByc1jtupnh/laBSPpxSshqkNYmUqtw09gv0pEM1FKTlmhImBCRCh1A==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.14.3","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.14.3","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ai_0.14.3_1794341633158_0.6715562308152833","host":"s3://npm-registry-packages-npm-production"}},"0.14.4":{"_id":"@sqlite-sync/ai@0.14.4","bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"dist":{"shasum":"48a5441562e7b747a1f81e8a09402e692521ff64","tarball":"https://registry.npmjs.org/@sqlite-sync/ai/-/ai-0.14.4.tgz","fileCount":12,"integrity":"sha512-xrwO2KrX2jnxvbatvuD4/2SsFS2tiktGv/QD26dTa4ziNZL0d5ljczlINtcpo2NjYRJHFCW5thq+j3BLHauqmA==","signatures":[{"sig":"MEUCIAfqq6zSI4+KAe/kNEw+DaEcXrljvnpssXziuf/IwnmEAiEAmBgk7gLjX3AS5QDCVCsEyu/9iNzYTuB+9oa20gSEuHU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCce7Y+VBKjHAUhoYcH5F0bwkZtt/ibU9E1Cpf8wIGdGgIgA5BRcKls1qJl7Ch58nVd4u3spzSWeiIbqvsXTt1iAfk="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sqlite-sync%2fai@0.14.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":92394},"main":"./dist/index.js","name":"@sqlite-sync/ai","type":"module","_from":"file:sqlite-sync-ai-0.14.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./mcp":{"types":"./dist/mcp.d.ts","import":"./dist/mcp.js"}},"license":"MIT","scripts":{"dev":"tsdown --watch","test":"vitest run","build":"tsdown","typecheck":"tsc --noEmit && tsc --noEmit -p tsconfig.ai-v7.json"},"version":"0.14.4","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"e30af9c5-2909-4a71-8242-b7eee9bc0709"}},"homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"_resolved":"/tmp/25e5de53004a90601994b5424bef04a9/sqlite-sync-ai-0.14.4.tgz","_integrity":"sha512-xrwO2KrX2jnxvbatvuD4/2SsFS2tiktGv/QD26dTa4ziNZL0d5ljczlINtcpo2NjYRJHFCW5thq+j3BLHauqmA==","repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"_npmVersion":"11.19.1","description":"AI agent tools and MCP helpers for @sqlite-sync databases","directories":{},"maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"_nodeVersion":"24.22.2","_hasShrinkwrap":false,"devDependencies":{"ai":"6.0.214","zod":"^4.4.3","ai-v7":"npm:ai@^7.0.171","tsdown":"0.22.14","vitest":"^4.1.8","typescript":"npm:@typescript/typescript6@6.0.2","@sqlite-sync/core":"0.14.4","@modelcontextprotocol/sdk":"1.29.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","zod":"^4.1.8","@sqlite-sync/core":"^0.14.4","@modelcontextprotocol/sdk":"^1.29.0"},"peerDependenciesMeta":{"@modelcontextprotocol/sdk":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai_0.14.4_1794522323276_0.8845520381095725"}}},"time":{"created":"2026-06-11T19:44:07.442Z","modified":"2026-11-12T22:25:23.731Z","0.4.6":"2026-06-11T19:44:07.732Z","0.5.0":"2026-06-11T19:58:47.268Z","0.6.0":"2026-06-12T09:16:10.386Z","0.7.0":"2026-06-15T12:45:25.102Z","0.7.1":"2026-06-16T20:05:06.653Z","0.7.2":"2026-06-16T20:16:25.894Z","0.8.0":"2026-06-21T21:53:09.115Z","0.8.1":"2026-06-22T10:33:15.298Z","0.8.2":"2026-06-22T16:40:14.701Z","0.9.0":"2026-08-23T13:19:19.016Z","0.9.1":"2026-08-23T22:09:32.311Z","0.9.2":"2026-08-24T07:50:57.652Z","0.9.3":"2026-08-24T09:10:19.618Z","0.9.4":"2026-08-28T09:11:51.165Z","0.10.0":"2026-10-08T20:20:35.785Z","0.10.1":"2026-10-09T07:59:23.381Z","0.11.0":"2026-10-09T20:53:33.504Z","0.12.0":"2026-10-11T14:21:50.679Z","0.12.1":"2026-10-12T16:52:03.128Z","0.12.2":"2026-10-12T19:58:58.602Z","0.12.3":"2026-10-19T14:50:31.847Z","0.13.0":"2026-10-21T08:28:00.377Z","0.13.1":"2026-10-21T09:01:11.338Z","0.13.2":"2026-10-21T13:48:41.785Z","0.13.3":"2026-10-26T23:41:37.635Z","0.13.4":"2026-11-06T14:26:37.767Z","0.14.0":"2026-11-06T16:15:39.244Z","0.14.1":"2026-11-06T16:32:51.767Z","0.14.2":"2026-11-08T10:24:09.108Z","0.14.3":"2026-11-10T20:13:53.252Z","0.14.4":"2026-11-12T22:25:23.374Z"},"bugs":{"url":"https://github.com/krolebord-dev/sqlite-sync/issues"},"license":"MIT","homepage":"https://github.com/krolebord-dev/sqlite-sync#readme","keywords":["sqlite","sync","ai","agent","tools","mcp","offline-first","local-first"],"repository":{"url":"git+https://github.com/krolebord-dev/sqlite-sync.git","type":"git","directory":"packages/ai"},"description":"AI agent tools and MCP helpers for @sqlite-sync databases","maintainers":[{"name":"krolebord","email":"krolebord@gmail.com"}],"readme":"# @sqlite-sync/ai\n\nAI agent tools for [@sqlite-sync](https://github.com/krolebord-dev/sqlite-sync) databases. An AI SDK agent or an MCP client gets read-only access to a synced SQLite database by default, plus an opt-in CRDT mutation tool.\n\n## What's included\n\n- `createSchemaDoc` builds a markdown schema doc from the declared sync schema. Structure comes from the `t.table()` builders; semantics come from `.describe()` and app-provided context. No database access needed.\n- `createAiDbAccess` is the server-side access object that sits next to storage. Its methods are also the RPC contract for cross-Durable-Object setups.\n- `createDbTools` builds an AI SDK `ToolSet` (v6 or v7) (`getDbSchema`, `queryDb`, and optional `mutateDb`) from an `AiDbAccess` or a stub that proxies to one.\n- `registerDbTools` (from `@sqlite-sync/ai/mcp`) registers the same tools on an MCP server, with an optional multi-database mode.\n\nPeer dependencies: `ai` ^6 and `zod` ^4.1.8. Install `@modelcontextprotocol/sdk` ^1.29 to use `@sqlite-sync/ai/mcp`.\n\n`queryDb` accepts a single `SELECT`/`WITH`/`VALUES` statement. The guard checks SQLite `EXPLAIN` bytecode for write opcodes, then runs the statement in a transaction that always rolls back. By default reads are not restricted by table. The agent can query every table in the database file, including sqlite-sync's internal event log, so do not put secret data in the same file unless you hide it (see below). Results are capped (default 200 rows, 2000 chars per cell) and report `truncated` so the agent can narrow its query.\n\n`mutateDb` is opt-in. It applies `item-created`, `item-updated`, and `item-deleted` CRDT events through sqlite-sync's own-event path, so writes are validated, persisted to the event log, applied locally, and synced normally. It does not run arbitrary write SQL. For `item-created` events, omit `item_id` and `payload.id`; the tool generates ids, injects them into the CRDT events, and returns them as `createdIds`.\n\n## Usage (Cloudflare Durable Object)\n\n```ts\nimport { createAiDbAccess } from \"@sqlite-sync/ai\";\nimport { durableObjectAdapter } from \"@sqlite-sync/cloudflare\";\n\n// In the DO that owns the synced database:\nasync onStart() {\n  const { syncDb } = await durableObjectAdapter.createCrdtStorage({ syncDbSchema, storage: this.ctx.storage, /* ... */ });\n  this.aiDbAccess = createAiDbAccess({\n    executor: syncDb.unsafe,\n    storage: syncDb, // optional; enables mutate() on the access object\n    syncDbSchema,\n    context: {\n      overview: \"# My app's database\\n\\nA todo app for a single user.\",\n    },\n  });\n}\n\n// RPC methods for agents running elsewhere:\ngetDbSchemaDoc() {\n  return this.aiDbAccess.getSchemaDoc();\n}\nqueryDb(input: AiQueryInput) {\n  return this.aiDbAccess.query(input);\n}\nmutateDb(input: AiMutationInput) {\n  return this.aiDbAccess.mutate?.(input) ?? { error: \"Database mutations are not enabled.\" };\n}\n```\n\n```ts\nimport { createDbTools } from \"@sqlite-sync/ai\";\n\n// In the agent:\ngetTools() {\n  return createDbTools({\n    access: async () => {\n      const stub = await this.getUserDbStub();\n      return {\n        getSchemaDoc: () => stub.getDbSchemaDoc(),\n        query: (input) => stub.queryDb(input),\n        mutate: (input) => stub.mutateDb(input),\n      };\n    },\n    mutations: true,\n  });\n}\n```\n\nThe doc skips the internal `tombstone` column and renders enum columns with their allowed values and boolean columns with a `0/1` hint. Table and column descriptions come from `.describe()` on the builders.\n\nAfter your `overview`, the generated doc always adds a short preamble about sqlite-sync: the database syncs between devices, and the listed tables are read-only views with soft-deleted rows already filtered out. Put domain semantics on the schema with `.describe()`. Use `context.overview` for app-level notes.\n\n## Usage (MCP server)\n\n`registerDbTools` adds the database tools to an `McpServer` you create, so they sit next to your own domain tools. Transport, hosting, and auth stay with the app (for example `McpAgent` from `agents` and `@cloudflare/workers-oauth-provider` on Cloudflare).\n\n```ts\nimport { createDbMcpInstructions, registerDbTools } from \"@sqlite-sync/ai/mcp\";\nimport { McpServer } from \"@modelcontextprotocol/sdk/server/mcp.js\";\n\nconst server = new McpServer(\n  { name: \"my-app\", version: \"1.0.0\" },\n  { instructions: createDbMcpInstructions({ mutations: true }) },\n);\n\nregisterDbTools(server, {\n  // Called on every tool call with the MCP request context (`extra.authInfo` etc.).\n  access: (extra) => getUserDbStub(extra.authInfo),\n  mutations: true,\n});\n```\n\nWhen one user can reach several databases, pass `databases` instead of `access`. This adds a `listDatabases` tool and a required `databaseId` input to every database tool:\n\n```ts\nregisterDbTools(server, {\n  databases: {\n    list: () => getUserLists(userId),\n    // databaseId comes from the model: check that the caller may use it. Return null to reject.\n    access: async (databaseId) => ((await canAccessList(userId, databaseId)) ? getListDbStub(databaseId) : null),\n  },\n  mutations: true,\n});\n```\n\nQuery and mutation results are returned as JSON text plus `structuredContent`, and `{ error }` results set `isError`. Tools carry MCP annotations: `getDbSchema`, `queryDb`, and `listDatabases` are read-only, while `mutateDb` is marked destructive so clients can ask the user before running it. `createDbMcpInstructions` builds default server instructions; pass `overview` for app-level notes.\n\n## Limiting what the agent may touch\n\nSet `ai` on the table options. Tables are `\"read-write\"` unless narrowed:\n\n```ts\nconst syncDbSchema = defineSyncSchema({\n  tables: {\n    todos: t.table({ title: t.text() }),\n    // In the doc and queryable; mutateDb rejects writes.\n    audit: t.table({ note: t.text() }, { ai: \"read-only\" }),\n    // Omitted from the doc; queries that read it are rejected.\n    billing: t.table({ card_last4: t.text() }, { ai: \"hidden\" }),\n  },\n  migrations,\n});\n```\n\n- `\"read-only\"` keeps the table in the schema doc, labelled read-only, and makes `mutateDb` reject events for it.\n- `\"hidden\"` removes it from the doc and makes `queryDb` reject any statement that reads it.\n\nAccess is table-level. Hiding a table also makes internal sync tables and any non-synced tables in the same database file unreadable. See [AI agent tools](https://github.com/krolebord-dev/sqlite-sync/blob/main/docs.md#limiting-what-an-agent-may-touch) for how enforcement works and its limits.\n","readmeFilename":"README.md"}