{"_id":"@matatbread/matbot-storage-google-drive","_rev":"30-2aef32e5644339d68779a21800f72217","name":"@matatbread/matbot-storage-google-drive","dist-tags":{"latest":"0.4.13"},"versions":{"0.1.6":{"name":"@matatbread/matbot-storage-google-drive","version":"0.1.6","license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.1.6","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"e0d4733ab6c3ed153b833f73b61629c3244dd587","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.1.6.tgz","fileCount":12,"integrity":"sha512-P1gsvUrhF1jfOhXyJ33HEm3JxOrqIvof53qX62Qf0wrgOEUjaRA+bDocJy6xIyGnixzB7HQ+D08NHTH+gb597w==","signatures":[{"sig":"MEYCIQCCmSxNlVKai5tvrFWKP4Ky71VjC6mhA0awT4uRg+twlQIhAM9p54XfKJKaH5fO/4s6sMGSAAkumkqF0ASHdVpgqOzs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73855},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"0.1.6"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"0.1.6","@matatbread/matbot-plugin-api":"0.1.6"},"peerDependencies":{"@matatbread/matbot-core":"0.1.6","@matatbread/matbot-plugin-api":"0.1.6"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.1.6_1782406391979_0.34668097859383495","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@matatbread/matbot-storage-google-drive","version":"0.1.7","license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.1.7","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"e89cff48082cb82b176bdf5ec067f4294c65b2a7","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.1.7.tgz","fileCount":12,"integrity":"sha512-DrzA6IZpggsll0l9PF80CFwfG4A93iwtHVe+K6KdNQBR5cEMPVKpzQb5y0dCkZXcBTmfbtgI3iFyQPR8rmr5zw==","signatures":[{"sig":"MEUCIQCNTUFwj7zNneWMSHeG9uz1i7t/Gx7XQ974Nb8+r4RZ3wIgAyGx5KvkuiPj0xqh3Ri+b+d7sTb42SvzRWjOGna7ypQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73855},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"0.1.7"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"0.1.7","@matatbread/matbot-plugin-api":"0.1.7"},"peerDependencies":{"@matatbread/matbot-core":"0.1.7","@matatbread/matbot-plugin-api":"0.1.7"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.1.7_1782407755181_0.47377033395762136","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@matatbread/matbot-storage-google-drive","version":"0.1.8","license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.1.8","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"8d37608eb77443d451cdcf0517230a4087551fa4","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.1.8.tgz","fileCount":12,"integrity":"sha512-w3TZvpn0GYqL5fQgAkc+CbHKfRLaj9ptiHCgTjUwyi2Es3aJO0JqGrA3DNMRdd6fpr7TZ8NCStFK1QJovPpOlQ==","signatures":[{"sig":"MEQCIBxQqV/b2GsihkuRrJD498vrfRYM7Xvlxn8hoIFdNkuRAiBGu3om2uT5RLzakn8og4CpAQFehntbo1citSRaq2rF+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73860},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.1.8"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.1.8","@matatbread/matbot-plugin-api":"^0.1.8"},"peerDependencies":{"@matatbread/matbot-core":"^0.1.8","@matatbread/matbot-plugin-api":"^0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.1.8_1782409712689_0.21588862043804813","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.0","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.0","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"ff0fb2e89bc50459603d2926c3cc1ddc2de32255","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.0.tgz","fileCount":12,"integrity":"sha512-nhPh2BMzQrzSh9G4ro6LZkAMRE/rp+b/4uldFRx5fOhYds7WikDWgL1qS1VGso78YpYWgaGukZCbscWKDSNpNw==","signatures":[{"sig":"MEUCIQCPV5GiZoO1LE6XD76lt22ZdpZLve+WjZT3f+hjIVJ6rQIgeypmMnMW075NwUNJUzjkICxVhIsR9YjNUDc2sPiVSQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73971},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.0"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.0","@matatbread/matbot-plugin-api":"^0.2.0"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.0","@matatbread/matbot-plugin-api":"^0.2.0"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.0_1782493881124_0.4972885220530958","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.1","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.1","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"58ae292ea5aaaaed976e4b1ae8322d814ed8bf41","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.1.tgz","fileCount":12,"integrity":"sha512-5CMtBj/YbaO7frJcozRdAdjZhTel20Huj+EKJmUhHMW2OEcye1MHMlqCvtrpsnIhqF/icjhYfVHg+IFsa5ffHQ==","signatures":[{"sig":"MEUCIBPaxCQiEu69TrS6mzPhDZz6KuvxvEtJZlm90+e6iPcEAiEA6/RrU0uaX4YFESK/IYohobAJ7D2bzYAfr6+0BCX108w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.1"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.1","@matatbread/matbot-plugin-api":"^0.2.1"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.1","@matatbread/matbot-plugin-api":"^0.2.1"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.1_1782497820726_0.748790601204351","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.2","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.2","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"198d84039f25d2e6c0ecc3fd99ccb280ba23bdb3","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.2.tgz","fileCount":12,"integrity":"sha512-Ia1su0fVWaf0rDZWw9H+1Jfj3oK/1FHpaMqO1dCZezD8P3vFBV3zepgwFoN+BX7SDxt5SeWXfoJTKqDaXUpSeA==","signatures":[{"sig":"MEYCIQD9K699nJyX1u0Y0xx+GnLtiM51BK4hHbSJ4pV/THWgTwIhAOGpSY+IPU/pZ7Ew2g1pc7nO48Ow8D7HkGvqCcbHX8Fq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.2"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.2","@matatbread/matbot-plugin-api":"^0.2.2"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.2","@matatbread/matbot-plugin-api":"^0.2.2"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.2_1782498887228_0.4805229157462261","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.3","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.3","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"f8e6872e1a82017f7e3c5be11e8ee9346a2f9425","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.3.tgz","fileCount":12,"integrity":"sha512-ZnJ+2jI4Hx6xiXjfzHlg63jRQtwJblxxE6KNQd57l9T6HPOMZ1+ZS0AX4KNY53qZtGuMoTrqdWyBMOzoM1VKLw==","signatures":[{"sig":"MEUCICbx71nsAIc358DLJhi4WuwSX9jFsdZ/13HXxA/jAcjpAiEAppc9hI3EVbO54CerEsg2LHjYIjJxwQTxeZFshFkYvbk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.3"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.3","@matatbread/matbot-plugin-api":"^0.2.3"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.3","@matatbread/matbot-plugin-api":"^0.2.3"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.3_1782501067721_0.05736764094986979","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.4","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.4","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"5547a66069961acea1ef39842ed646e28d0ed4ab","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.4.tgz","fileCount":12,"integrity":"sha512-dDTk0YakKDXfGq91geI0y2HdOR09CMlMORJ7fdssUXZqAJngDz/GXeyRzNgU+/K21T6i0xVA0EgqEBzzRAkYYw==","signatures":[{"sig":"MEUCIF1xoYc2huP4Yy8WWcO/c99G2RVthwZ/Czv7jDvnEO+YAiEAsh/LbeDIpqWIaD+4oTtJwk1emJimdK0ZQVWoRUFZTEE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.4"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.4","@matatbread/matbot-plugin-api":"^0.2.4"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.4","@matatbread/matbot-plugin-api":"^0.2.4"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.4_1782655006167_0.7737837337000317","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.5","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.5","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"6904eaa8654d9ccc48e5d8f8f921cf168707a0e4","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.5.tgz","fileCount":12,"integrity":"sha512-hO/ALoeCeKe9ef635V6/Suy1xw9JWNJq2ZFE1nO6CU8NUWSIkOq76G8efGABQc5E//xNmGdsoB5B9qnP3A8CIg==","signatures":[{"sig":"MEYCIQDYb968NeL6xBDDAiUNzeqIKwAOF0JdzzGSZewRoRx6nQIhAP9m98iB1BdEfurhyHy6MALz61/7Etuxv/m+dKpbtrbj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.2.5"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.5","@matatbread/matbot-plugin-api":"^0.2.5"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.5","@matatbread/matbot-plugin-api":"^0.2.5"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.5_1782760755243_0.1353768825472197","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.6","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.6","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"d30cae4483d5c7eae2f3f5c44187c02506f805fc","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.6.tgz","fileCount":12,"integrity":"sha512-zj/t9mD58cehhkqqEGYq5hEH18s8pS95PiQzCUKWYYMkbd0nleHf2e9e54gqcaG/Y+vYPgPXzpGlsHDYq55hYw==","signatures":[{"sig":"MEUCIQCyqGNHZn4tgDSj0x2I6pAecyvybhlfi7iNytxSGiXxDAIgZHm5Gb+gndflm/FaDo/OHapb+Uw6lP/9XRvcbgrF10M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73967},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.2.6"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@matatbread/matbot-core":"^0.2.6","@matatbread/matbot-plugin-api":"^0.2.6"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.6","@matatbread/matbot-plugin-api":"^0.2.6"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.6_1782814746313_0.5683663814972035","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.7","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.7","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"448e5388699891d38e550f700a9a6fdce646b8c3","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.7.tgz","fileCount":12,"integrity":"sha512-8TePvCxywU+GbXV+kuhfUWSlKqI0nEVzV6rDPp8qv/Q6LmZRJckOyIloIbNMA26g35qqDU3BDo4vtDqx51Q5wQ==","signatures":[{"sig":"MEUCIQDpJBQm12BD8gvmPpI0FoOhHNHfkJUI5ykCJMh7F2/8sgIgIVGJqE2DxovgYlENoTJaE6K3JvAj806+4TwaXt6CwSM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74058},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.2.7"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.2.7","@matatbread/matbot-plugin-api":"^0.2.7"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.7","@matatbread/matbot-plugin-api":"^0.2.7"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.7_1782909226225_0.09215855812615059","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@matatbread/matbot-storage-google-drive","version":"0.2.9","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.2.9","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"c62398ed4e2caf5417ece54a8bc76233970207e3","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.2.9.tgz","fileCount":13,"integrity":"sha512-7vtPost6g0BaNsjTyEOiQd+kC81ZI151sLTNE0iE846XfZH8N+1UuQzU0tfLWERlAD+10S3iHLOgZE7sVWtwDA==","signatures":[{"sig":"MEYCIQCEYz0fimlpk7J+fAse5mHvS4yL8t8PlFY5JqMRb2gumgIhAKE+4H/wGfr4JeekXGzRoA2a6LJ9Gxqdtu6dHJfYE+8p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79754},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.2.9"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.2.9","@matatbread/matbot-plugin-api":"^0.2.9"},"peerDependencies":{"@matatbread/matbot-core":"^0.2.9","@matatbread/matbot-plugin-api":"^0.2.9"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.2.9_1782946703132_0.4217647146344421","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.0","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.0","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"493e72b7a5de79128f3f4d776af879ab799e28f1","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.0.tgz","fileCount":13,"integrity":"sha512-hJ1RHme+zpO4+e8fGKaqTLoRi7AiMBIW9aRuUwQmwKaQPKhKw9UMZQFVwnS72BveXhWQlNi0SabPPZ1wUk0NUg==","signatures":[{"sig":"MEYCIQDqdNazan7Xq6cGBMlA7weOEBsA7av/9xXvOxu8ZFOQVQIhAKUaqyjQl8rxP/iQ/TGQrFO3kRsB4pwLLDq5bwLXLSjL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79754},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.3.0"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.0","@matatbread/matbot-plugin-api":"^0.3.0"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.0","@matatbread/matbot-plugin-api":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.0_1783093830153_0.3910572454727481","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.1","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.1","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"b8871bfe97ef26e27b4bde83cb79b7f2acc41573","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.1.tgz","fileCount":13,"integrity":"sha512-IKDafCUlfORB7gw6OM/hqX9MUbGFhQLtt3BguXrCsp46m5MnNbpptLXU3feR44j19kITGfavZSN8qH8B6nqxvA==","signatures":[{"sig":"MEUCIQDtcKaVknw4c8YD2j06m/oeZ4O+o25P/ueakAp5JJzrAgIgJD3bXOunQStlSNjzLCY61Te4jgeAY0FdrvgVZ3DSEsQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79754},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.3.1"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.1","@matatbread/matbot-plugin-api":"^0.3.1"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.1","@matatbread/matbot-plugin-api":"^0.3.1"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.1_1783340907633_0.6507086630598251","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.2","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.2","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"028ca19252ec03ace59fa164e3138d73e64d7e93","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.2.tgz","fileCount":13,"integrity":"sha512-ZMi0Fetd+tmBmM8Mu4PfLCiunLhg5kz9KsTkklm+HGIcxJrYlZM66uw4N3k/yJ0Oi3AuBZSi5lr8s2oda/uzZw==","signatures":[{"sig":"MEYCIQDVvPJcJfWsQv29xgdWYmijaENjU0esPIkqdCoRF6owEwIhAJg7iMcg8vup7w2XLypL7VRpp0jRQqeWsvCBrbhKvKNN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79754},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.3.2"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.2","@matatbread/matbot-plugin-api":"^0.3.2"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.2","@matatbread/matbot-plugin-api":"^0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.2_1783585643671_0.0032042885202414606","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.3","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.3","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"7dfb0cac3c1e5a5bf3eb7ef17b2a043be69d9e72","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.3.tgz","fileCount":13,"integrity":"sha512-JbsNYiWCZiuciFc/FHIWxIftj9JR905C0XnFHbxE1cXcLLajLJbmDfbgXRYxylSTYWeO+zyRlMw30FSQNyfI7g==","signatures":[{"sig":"MEUCIHnyL8+OQFGzoYeHK202Jch8a/+t4dpa+bL7YEpfZjGUAiEArMDVswy43AnaMSH4j8HUg0b2Qev35f5SI487pdhJXJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79754},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.3.3"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.3","@matatbread/matbot-plugin-api":"^0.3.3"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.3","@matatbread/matbot-plugin-api":"^0.3.3"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.3_1783668686719_0.7673661002654883","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.4","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.4","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"2aad569e88ac8551ab8df4dae65af66de8afb406","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.4.tgz","fileCount":13,"integrity":"sha512-JBatAfxWXiLAr0CXUwYDgawHu+Yp9hY9H6ZBnJAGdLfctDxDw1WBAHnfHrBT4hKdSukrtTnbVAMr8OJpczSfZg==","signatures":[{"sig":"MEQCIGegxm8oH9IkBijQMqoS0Ze4dyLRH5aLf+f1aIaZn43FAiBEMAOvZfOHYoPbzNLtRND6RHLI2HjVijYuIJb71zJZJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81214},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.3.4"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.4","@matatbread/matbot-plugin-api":"^0.3.4"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.4","@matatbread/matbot-plugin-api":"^0.3.4"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.4_1784830511129_0.10434940592792241","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.5","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.5","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"8cbd7f4ff3baa46fd85d602239506f1d4b75198d","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.5.tgz","fileCount":13,"integrity":"sha512-2CbA3v3sZklyCvo/VLOe5XqxnOPxWvLrfGydP+FADqacO0NKfymw3duBytN28CyRQnWbCqtIPfewioe2HyiB4w==","signatures":[{"sig":"MEUCIGuZ7pv4KklQXqqhypa9qRKCluElVjTxUuORgv9JK2TWAiEAgnASGU/ltexZ6TOkaAwzY2qWIUofxYCEp2nmr4R2rck=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81214},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.3.5"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.5","@matatbread/matbot-plugin-api":"^0.3.5"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.5","@matatbread/matbot-plugin-api":"^0.3.5"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.5_1785244876196_0.5836544091010705","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.6","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.6","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"a2fe90110cbbeb569eec748b098bcbf286528302","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.6.tgz","fileCount":13,"integrity":"sha512-yhTtCl3w2MdrRsbt8nrMGXlQHT7RN62MeeIXj0EtvC0f1M/75xbGYvEhKu0stayVYI/gtH1cOfeiUJeN/puUgQ==","signatures":[{"sig":"MEUCIH6Xh9V0cPMEARGiqvSbshsgILgsq1IzUYqvYtC8Nqy8AiEA01ZlVoD/N1jaXzs2CEcvC5Eu2vZQdhaYvFUTjQphdxw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81214},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.3.6"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.6","@matatbread/matbot-plugin-api":"^0.3.6"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.6","@matatbread/matbot-plugin-api":"^0.3.6"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.6_1785268516369_0.8194945695204545","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.7","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.7","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"f381ae7f68e76acf7e1f56d1504f50c0b0239edb","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.7.tgz","fileCount":13,"integrity":"sha512-E/00urXnzwXeIvMkUz9mZFAf5VjJUW5AxEp87nPcb725d83Nbc2nWY2g/zbqtMGWreldqhySHHh2p1OIwNl19Q==","signatures":[{"sig":"MEUCIGXPahD2bnTjU3AAMEBiev3FQUUf/49H1G8eIcyOsm2yAiEAgLNHH6WS9LHUhV0jawfnyFEPmv+jLFm/s6vNhe62ZtA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81214},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.3.7"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.7","@matatbread/matbot-plugin-api":"^0.3.7"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.7","@matatbread/matbot-plugin-api":"^0.3.7"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.7_1785271524506_0.4895661626496117","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@matatbread/matbot-storage-google-drive","version":"0.3.8","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.3.8","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"7151aee4cbd16501adeadea625886ef816f3b896","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.3.8.tgz","fileCount":13,"integrity":"sha512-O62gcRYk7O2FM9e5K8E5iap7rurDKbrHkGrxuyBByuSooZBBguizpJ4ICbSBRN4N7a7lVzMJ5DIF/8at3719Ng==","signatures":[{"sig":"MEQCIC8QGeuA5DBXsiBH1TZ+ruWSX+dtj3dT75AqLbGNApeDAiBFsz7rIDa0xOEmretjxsNvEmSm/GbuexK+j303/yqnOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80834},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.3.8"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.3.8","@matatbread/matbot-plugin-api":"^0.3.8"},"peerDependencies":{"@matatbread/matbot-core":"^0.3.8","@matatbread/matbot-plugin-api":"^0.3.8"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.3.8_1785708953128_0.6379915704972081","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.0","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.0","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"badaf336cf17635d96552a13e18b8c29bb6dfb24","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.0.tgz","fileCount":13,"integrity":"sha512-szWwhJfrD/q6vLa8EMvEu0m9DJ0cxeIhGS+ID2xF6Xx0ESSlDlhcyTEojH2e4msLkjZwkGTrnSz70PUdCHb6lw==","signatures":[{"sig":"MEYCIQCvtcvkxKqWGZ3DJZ7tngoFSCxLwtxQVNVQ0dTxjvVO4gIhAM4x62+Gvw1m2Jw+cEMTydtbAWZxZ+DXeiZjVedkATXa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80834},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.0"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.0","@matatbread/matbot-plugin-api":"^0.4.0"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.0","@matatbread/matbot-plugin-api":"^0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.0_1785918715044_0.9718767834727096","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.1","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.1","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"7f8b46cac012f2a1cdff001b6806e249a35b3910","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.1.tgz","fileCount":13,"integrity":"sha512-orU9iCELehdS6/OLam58WhUBo2CqYghUyDxavvb4RPqbJLP0jB1v2S1koCyOiHun4HTWqceYVNXcFIxUclsWRQ==","signatures":[{"sig":"MEUCIF7VTOf5edL+eajq2Qo5PeeafL1EWvpIs2tfooblWbMWAiEA3L5SO/qMNE5luk/FBhGu/DDwa64RbHWYXESqCzkClik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80834},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.1"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.1","@matatbread/matbot-plugin-api":"^0.4.1"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.1","@matatbread/matbot-plugin-api":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.1_1785921136673_0.30011468230782024","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.3","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.3","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"bafeb7acfa77ef1ab87f3f5c0f53fb1781817141","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.3.tgz","fileCount":13,"integrity":"sha512-yMGioqorqzleOGbzJd86UyGgQathgCJoHncgiDf+7Oo0XlTHNZAcyHI7lsFTTg4c2vxAxqABVDnSsCcl0nuhPg==","signatures":[{"sig":"MEQCIHR5XuJfCEO+QAuuAOmDIXh8/u31ePN8SVkmNKBeeEHyAiB80Yt3ZABxQyLJ68UtuPZhSXkPGcjBqqto6BpnCsDBAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81488},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@matatbread/matbot-browser":"^0.4.3"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.3","@matatbread/matbot-plugin-api":"^0.4.3"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.3","@matatbread/matbot-plugin-api":"^0.4.3"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.3_1786897680833_0.983922761918836","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.4","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.4","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"9d92435f8659431c9c5163a82fc4b066e2dd5b13","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.4.tgz","fileCount":13,"integrity":"sha512-//mHwxilS9vAJoWp0sE6+zZQcHzGeHTtMOpgqQWidgzOTB0WlwTG3QTkprxn2SeOJG0HW0Hq9BvXme6AhdGuVw==","signatures":[{"sig":"MEYCIQDaWKrPA626BkVJGDeScf91TTV+XeiBTHrjdWTf7q+6fwIhALkx4L9nmi9dtCWT1pDnKlqr1iJquyPRJsdKYvxcumeS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82284},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.4"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.4","@matatbread/matbot-plugin-api":"^0.4.4"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.4","@matatbread/matbot-plugin-api":"^0.4.4"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.4_1786960217357_0.5084424874011957","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.5","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.5","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"36f6836c33288d4571f7b0760d3cbf9212106e70","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.5.tgz","fileCount":13,"integrity":"sha512-6Zi50hCzLjtcVZuongZAi/8chZhHB7hoFBh+FyQ96ZpaIBqb3UY78Bef9QRYwGrVhiaHQZ8eWlPO5mSNWpTiTQ==","signatures":[{"sig":"MEUCIQC4RMJJ+7Z/cijuUrB7+dd/4RkP8RLovWflX+1pTv4KXgIgP68Ulq2vh3N+QIvkoRKCSclAxCGR5bCgQ3bF162GSwg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82284},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.5"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.5","@matatbread/matbot-plugin-api":"^0.4.5"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.5","@matatbread/matbot-plugin-api":"^0.4.5"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.5_1787151504711_0.22342367786108341","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.6","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.6","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"586bf327a889cc4ece681b8ac067dcf6a723226a","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.6.tgz","fileCount":13,"integrity":"sha512-TS8IGwfEJjt2Hpy9vTi0A7pwj6Juikglri8lXActADHTD3567PIl8dflXihrhkWrBkU+26AOgt37wXB4nQ8p8A==","signatures":[{"sig":"MEQCIBEElaQaT8EVbNbJ6VJF32NrqHRSPjst/2sDQebBqJgYAiAEsTwiftDX5Vk2IZvl8Ef402RFa3j6v5wCdmWDh38+Qw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82284},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.6"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.6","@matatbread/matbot-plugin-api":"^0.4.6"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.6","@matatbread/matbot-plugin-api":"^0.4.6"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.6_1787155850135_0.5275889682140806","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.7","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.7","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"dist":{"shasum":"df71ccec80e4caa256e06f211ea7df21243fb475","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.7.tgz","fileCount":13,"integrity":"sha512-vBYdU9ng6DDP/FkVFcfAnjFDJHEOLmVzgPE/1d4hW2/aQYKZZlUfOvrUqDiqnZrZ6ZfgfLZF++d6JXJ7GO1gXw==","signatures":[{"sig":"MEUCIDLggZ8n2Cn88M7nZZ2wbolPNdb7MNx/QMCr4hYE28wsAiEAosGKxQXaTdfv8x1CqWZgolsdAguauDQPbbim/u0+E+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82284},"type":"module","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.7"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.7","@matatbread/matbot-plugin-api":"^0.4.7"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.7","@matatbread/matbot-plugin-api":"^0.4.7"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.7_1787220987139_0.16818173443347995","host":"s3://npm-registry-packages-npm-production"}},"0.4.12":{"name":"@matatbread/matbot-storage-google-drive","version":"0.4.12","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","_id":"@matatbread/matbot-storage-google-drive@0.4.12","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"homepage":"https://github.com/MatAtBread/matbot#readme","bugs":{"url":"https://github.com/MatAtBread/matbot/issues"},"dist":{"shasum":"9fa6edd100622dc7dbd76b7b37c4fed9af1dfb2e","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.12.tgz","fileCount":13,"integrity":"sha512-8rSc0Bmlq5WgSEMa7hWe5btCsaBpvk9sDkY+13GuptXUVsB2S4wIm6N4Yu0c2auzaibo5tP551hhCI47FaQYTg==","signatures":[{"sig":"MEQCIALEkaT7P6WpwbBjZrG7V4QAnESKUtCg6BeI1NdOqwlUAiAs6BFTILi0feTLN71bxAMagN2U8lQkeftNdH/+bkxyJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82164},"type":"module","_from":"file:matatbread-matbot-storage-google-drive-0.4.12.tgz","engines":{"node":">=24.0.0"},"exports":{".":"./src/index.ts"},"scripts":{"typecheck":"tsc --noEmit"},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"_resolved":"/private/var/folders/tc/xjk60z3j1wq4dxgk7kl_7x1m03vd22/T/8457e987c97a66fd0812ded90a21f1c7/matatbread-matbot-storage-google-drive-0.4.12.tgz","_integrity":"sha512-8rSc0Bmlq5WgSEMa7hWe5btCsaBpvk9sDkY+13GuptXUVsB2S4wIm6N4Yu0c2auzaibo5tP551hhCI47FaQYTg==","repository":{"url":"git+https://github.com/MatAtBread/matbot.git","type":"git","directory":"plugins/storage/google-drive"},"_npmVersion":"11.9.0","description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@matatbread/matbot-browser":"^0.4.12"},"matbotRuntime":["browser"],"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-core":"^0.4.12","@matatbread/matbot-plugin-api":"^0.4.12"},"peerDependencies":{"@matatbread/matbot-core":"^0.4.12","@matatbread/matbot-plugin-api":"^0.4.12"},"_npmOperationalInternal":{"tmp":"tmp/matbot-storage-google-drive_0.4.12_1788852819252_0.16008158551622764","host":"s3://npm-registry-packages-npm-production"}},"0.4.13":{"name":"@matatbread/matbot-storage-google-drive","matbotRuntime":["browser"],"version":"0.4.13","engines":{"node":">=24.0.0"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"license":"Apache-2.0","type":"module","exports":{".":"./src/index.ts"},"repository":{"type":"git","url":"git+https://github.com/MatAtBread/matbot.git","directory":"plugins/storage/google-drive"},"publishConfig":{"access":"public"},"dependencies":{"@matatbread/matbot-browser":"^0.4.13"},"peerDependencies":{"@matatbread/matbot-plugin-api":"^0.4.13","@matatbread/matbot-core":"^0.4.13"},"devDependencies":{"typescript":"^6.0.3","@matatbread/matbot-plugin-api":"^0.4.13","@matatbread/matbot-core":"^0.4.13"},"scripts":{"typecheck":"tsc --noEmit"},"_nodeVersion":"24.14.1","_id":"@matatbread/matbot-storage-google-drive@0.4.13","dist":{"integrity":"sha512-rOwxRYKowV3n/HJsH06uxQ62SbtMKi9+pG+dLKWysY5YZYaa1SiW0KqCGo7YkayYsFPFMW+75ePSiWTwYJyf2w==","shasum":"6e822abee6d096701140a1fb4dde2a85a905af13","tarball":"https://registry.npmjs.org/@matatbread/matbot-storage-google-drive/-/matbot-storage-google-drive-0.4.13.tgz","fileCount":13,"unpackedSize":83000,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDlpob41+Co4YiW4hIpH5pd3u3E7fmXUd2/AlTHlJ6j4AiEA2QVMjoL4oa/6HavyYisHtM1ewoyEKaSmsRpnHrPds6o="}]},"_npmUser":{"name":"matatbread","email":"npm@mailed.me.uk"},"directories":{},"maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/matbot-storage-google-drive_0.4.13_1789064861098_0.9869784598529374"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T16:53:11.831Z","modified":"2026-09-10T18:27:41.468Z","0.1.6":"2026-06-25T16:53:12.138Z","0.1.7":"2026-06-25T17:15:55.316Z","0.1.8":"2026-06-25T17:48:32.821Z","0.2.0":"2026-06-26T17:11:21.268Z","0.2.1":"2026-06-26T18:17:00.847Z","0.2.2":"2026-06-26T18:34:47.383Z","0.2.3":"2026-06-26T19:11:07.849Z","0.2.4":"2026-06-28T13:56:46.313Z","0.2.5":"2026-06-29T19:19:15.375Z","0.2.6":"2026-06-30T10:19:06.449Z","0.2.7":"2026-07-01T12:33:46.386Z","0.2.9":"2026-07-01T22:58:23.276Z","0.3.0":"2026-07-03T15:50:30.278Z","0.3.1":"2026-07-06T12:28:27.773Z","0.3.2":"2026-07-09T08:27:23.835Z","0.3.3":"2026-07-10T07:31:26.865Z","0.3.4":"2026-07-23T18:15:11.275Z","0.3.5":"2026-07-28T13:21:16.333Z","0.3.6":"2026-07-28T19:55:16.525Z","0.3.7":"2026-07-28T20:45:24.649Z","0.3.8":"2026-08-02T22:15:53.278Z","0.4.0":"2026-08-05T08:31:55.190Z","0.4.1":"2026-08-05T09:12:16.846Z","0.4.3":"2026-08-16T16:28:00.985Z","0.4.4":"2026-08-17T09:50:17.495Z","0.4.5":"2026-08-19T14:58:24.866Z","0.4.6":"2026-08-19T16:10:50.310Z","0.4.7":"2026-08-20T10:16:27.297Z","0.4.12":"2026-09-08T07:33:39.432Z","0.4.13":"2026-09-10T18:27:41.251Z"},"license":"Apache-2.0","keywords":["matbot","matbot-plugin","matbot-storage","llm","ai","agent"],"repository":{"type":"git","url":"git+https://github.com/MatAtBread/matbot.git","directory":"plugins/storage/google-drive"},"description":"Google Drive storage backend: document stores and file blobs persisted to a folder in the user's Google Drive, authenticated in-browser via Google Identity Services.","maintainers":[{"name":"matatbread","email":"npm@mailed.me.uk"}],"readme":"# @matatbread/matbot-storage-google-drive\n\nA browser `StorageBackend` that persists matbot's documents and file blobs to a folder in the\nuser's **Google Drive**, instead of the default IndexedDB + OPFS. Activate it and your sessions,\nsettings, skills, triggers, knowledge entries and uploaded files live in Drive — so they follow you\nbetween machines and browsers.\n\n## Layout in Drive\n\n```\n<rootFolder>/                 (default: \"matbot\")\n  sessions/<id>.json          one file per document, per namespace\n  settings/<id>.json\n  skills/<id>.json\n  …\n  __files/<id>.data           file-store blobs\n          <id>.meta.json      + metadata sidecar (mirrors the OPFS store)\n```\n\nDocuments in a namespace are read into memory once on first access and served from there; every\nwrite is flushed through to Drive. This matches the filesystem backend's \"load all, query in\nmemory\" model — fine for chat-scale data, not for enormous stores.\n\n## Authentication\n\nUses **Google Identity Services** (GIS) in the browser — the OAuth *token* model for single-page\napps. There is **no server and no client secret**. The only configuration is a public **OAuth\nClient ID**, and the scope is `drive.file` (matbot can only see files it created).\n\nThe first activation pops Google's consent dialog; the access token is cached (localStorage) and\nsilently renewed when it expires.\n\n### One-time setup (Google Cloud console)\n\n1. **Create credentials → OAuth client ID → Web application**\n   (the connect dialog links straight here: <https://console.cloud.google.com/auth/clients/create>).\n   Create or pick a project as part of this.\n2. Add the origin you serve the matbot bundle from (e.g. `http://localhost:9778`) as an\n   **Authorised JavaScript origin**. The connect dialog shows you the exact origin to paste.\n3. Copy the **Client ID** (it looks like `…apps.googleusercontent.com`). This is not a secret.\n4. **Enable the Google Drive API** for that project:\n   <https://console.cloud.google.com/apis/library/drive.googleapis.com> → **Enable**. Without this,\n   sign-in succeeds but every Drive call returns `403: API has not been used / is disabled` — allow\n   ~1 minute after enabling for it to propagate. matbot now probes Drive on activation, so if you\n   forget this step it leaves you on local storage with a clear message rather than erroring.\n\n> **The bundle must be served over `http(s)`** — Google OAuth refuses a `file://` origin. Open\n> `matbot.html` from a local web server, not by double-clicking the file.\n\n### Getting past \"Access blocked\" / \"unverified app\" (personal use)\n\nmatbot requests **only** the `drive.file` scope — per-file access to files *it* creates, never the\nrest of your Drive. That's a non-restricted scope, but Google's policy is that **any app used by the\ngeneral public in production must still pass brand verification** — which personal use does **not**\nneed. So don't publish to production; stay in **Testing** and add yourself as a test user:\n\n1. Console → **APIs & Services → OAuth consent screen** (new console: **Google Auth Platform →\n   Audience**). Keep **Publishing status = Testing**, **User type = External**.\n2. Under **Test users → Add users**, add the Google account you'll sign in with. **Save.**\n   *(Skip this and Google returns a hard `403: access_denied` — \"can only be accessed by\n   developer-approved testers\".)*\n3. Click **Connect** in matbot. On the **\"Google hasn't verified this app\"** screen, click\n   **Advanced → Go to {app} (unsafe) → Continue**, then **Allow**.\n\nThe \"unsafe\" wording is a generic unverified-app warning — for your own app touching only its own\n`drive.file` files in your own Drive, it's safe. Testing mode allows up to **100 test users**, which\nis plenty for personal/portable use. (Publishing to production to remove the warning entirely is only\nworth it if you're distributing matbot to strangers, and that's when you'd do Google's verification.)\n\n> Don't add a *sensitive/restricted* Drive scope (e.g. full `.../auth/drive`) on the consent screen —\n> matbot only ever requests `drive.file`; keep them matching.\n\n## Use\n\nIt ships **baked but not auto-loaded** in the web bundle. Activate it from the chat:\n\n```\nplugin discover_local        # lists it\nplugin add @matatbread/matbot-storage-google-drive\n```\n\nOn first activation you're prompted once for the Client ID and the root folder name (both saved to\nlocalStorage, since they're needed to *reach* Drive and so can't live in the Drive-backed settings).\nThe browser plugin replays the activation on every subsequent boot.\n\n## Vault (secrets) also sync\n\nOn activation the plugin re-points matbot's **vault** at Drive too: secrets are stored as a single\ndoc in the Drive `vault` namespace, and any secrets already held by the localStorage vault are\nmigrated in. So API keys follow you across machines alongside your sessions. (Stored in plaintext,\nmatching the localStorage vault.) This relies on the browser realm honouring `register('Vault')` —\nPR #2 added that to the CLI; this branch extends it to the web bundle's `bootstrap.ts`.\n\n## A Drive-synced plugin set\n\nPlugins follow you across machines too. Rather than ship a second, look-alike tool (which the model\nwould pick between at random), this plugin **shadows the built-in `plugin` tool** — same name, so the\nmodel and the frontend `/tools` path see exactly one `plugin` tool and can't tell the difference. It\nreuses the browser plugin tool verbatim, but backs persistence with a **Drive** manifest instead of\nIndexedDB. So once Drive is connected, `plugin add X` installs `X` now **and** on every browser where\nDrive is connected.\n\nHow it stays consistent with the unchanged local loader:\n\n- The browser build's boot-time loader is **untouched** — it still replays the local `extra-plugins`\n  list (IndexedDB), which is where this Google Drive plugin itself lives and how it boots.\n- On load, this plugin restores its **Drive** set on top, and installs the shadow `plugin` tool. The\n  ordering is deliberate: local loader loads this plugin → this plugin restores its Drive set.\n- **Routing by set membership** (no stored provenance needed for two managers): `add` always syncs to\n  Drive; `remove`/`reload` acts on Drive if the plugin is Drive-synced, otherwise **delegates to the\n  original local tool** — covering plugins installed locally before Drive was connected *and* this\n  Google Drive plugin itself (it lives in the local extras, so a Drive remove couldn't uninstall it,\n  it'd reload next boot). `list` marks each plugin **Drive-synced** or **local-only**.\n  *(If a third plugin-manager ever appears, promote this to a stored `installedBy` on the loaded\n  plugin — see the rationale in the commit/branch notes.)*\n\n## Scope / known gaps\n\n- **Provider *configs* are not synced yet.** They're read from `localStorage` (`matbot.providers`) at\n  boot, before any backend exists. The API *keys* they reference now sync (via the vault, above); the\n  non-secret config metadata (module/model/endpoint) does not yet.\n- **No data migration.** Activating this does not copy existing IndexedDB/OPFS *documents* into Drive;\n  it's a fresh location. On a machine that already has Drive data, that data simply loads.\n- **Single-realm concurrency only.** Like the filesystem backend across processes, two browsers\n  writing the same doc concurrently can race; there's no cross-client lock.\n","readmeFilename":""}