{"_id":"@microboxlabs/miot-cli","_rev":"8-42993463105114c6badfab2f8f8d7a20","name":"@microboxlabs/miot-cli","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@microboxlabs/miot-cli","version":"0.1.0","_id":"@microboxlabs/miot-cli@0.1.0","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"429cf7a20bb74c75ce78f09de2a0dcb0acf2073e","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.1.0.tgz","fileCount":4,"integrity":"sha512-iYh6VrjVZtYAjwEe1SVs8d23vMG3llSdnn+cWtL1+ZIT5z5wru/iWNANkU4RlykESS25xovm6LlglveJYYP3Lg==","signatures":[{"sig":"MEUCIQCDIo9itNJ60iuWVy5nhH3l+0dDZGeHkEv4jZ7JTd2AfgIgXFLDq/FAl3YMLWynaJfKb2Ld+3L1RXH8+BQ+HD6dGR8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36173},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"697ea1bc53b459c5dc376f87f4b8adcee266c101","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"korutx","email":"korutx@gmail.com"},"_npmVersion":"10.9.4","directories":{},"_nodeVersion":"22.22.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-calendar-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.1.0_1771723510202_0.5731872719550495","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@microboxlabs/miot-cli","version":"0.1.2","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.1.2","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"d3f0dcb52f590bec59bf2193fa734a9f1681b9d9","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.1.2.tgz","fileCount":6,"integrity":"sha512-baQw+HTyXdXdoVqsDPMsN45gyblJbuEaOTO7rU3w1x49okoxeZp3L57jwEqiCZHPfE0m/F0ROv1vrX8g240p/g==","signatures":[{"sig":"MEQCIHYTgZ4IcRdHbIhrzuWQs0X3Y6J3WZ/1I3VnzBsOR8ayAiBJtwcGf1J2sswDAo0g/PbCYF867EWQdFL4es3NkOJCKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":50849},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6ee72f05786245b75e0ab6769aee683b0b05fbfd","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.10.1","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"22.22.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-calendar-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.1.2_1771724094660_0.5115238942700793","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@microboxlabs/miot-cli","version":"0.2.0","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.2.0","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"92f06656a124ae0d4f05935cfd32e62018213c67","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.2.0.tgz","fileCount":6,"integrity":"sha512-Z7CLcFYRMTHdeHmscAZBklFKIpKzuWrQkhCLNcVOZBn5ph2flLhHTjyHQ2OZYL/oGrB0wHaa7U9C7YlwWNBttg==","signatures":[{"sig":"MEUCIQCd8SEItsqLCYDXlchWH08cw8cmLgO1t9eLw6vn1o3ksAIgRf5jEU3G2fIXk9pYeMsEdDZFBBv7WJiQ3bWTFUN+DIY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":51653},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5446880d93d11fb7fe84ec6ed60835915066edea","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.10.1","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"22.22.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-calendar-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.2.0_1771778606870_0.31704099815703835","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@microboxlabs/miot-cli","version":"0.3.0","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.3.0","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"d44119a32b5af9144d1e359626031ca659ea60f5","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.3.0.tgz","fileCount":6,"integrity":"sha512-2iCyvOC5KlEmGSkz998CEfZ7HCHFtfAOV8KGWIl6yvDlc6zTyEgtyUfRB/S+s8vJx3rrRG25n05Wuhcn0EAIRw==","signatures":[{"sig":"MEQCICbViHT9bXoIa1ZYZm2IwKtxtcqf1YMr5aEEj6CzsZK6AiAGHBN66dpOHJR+ffD1sr8I5ZEFN+9UQEANjhOuRBBnRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52191},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cfb8ab8f9a7060a56547d817404e484f595c8352","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.11.0","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"22.22.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-calendar-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.3.0_1772656759204_0.8943248429483133","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@microboxlabs/miot-cli","version":"0.4.0","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.4.0","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"16117d1d4dc22995533619a2e0c8d62358579c6c","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.4.0.tgz","fileCount":6,"integrity":"sha512-7xgD31YhcD9D5yKKHQrlX34b0FnbmlY1Die9zXXX94sZpc8oxwW6cbmFz5iv8QRB6XduEtjJT7rgspQ1A8iojg==","signatures":[{"sig":"MEYCIQCgfEoN+dX1apiZb3eaj6q4jaBY6CweMuPdFxv10WJ/hQIhALwOY6se+Xn8DPGcdvxaHlxAROliQew8UVoHgis+AlQf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":85377},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8244c62ff2102ab0f75d56ebea57976bc9ed5306","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.13.0","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"24.16.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-auth":"*","@microboxlabs/miot-chat":"*","@microboxlabs/miot-harness-client":"*","@microboxlabs/miot-calendar-client":"*","@microboxlabs/miot-connection-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.4.0_1781131928287_0.789640084038205","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@microboxlabs/miot-cli","version":"0.4.1","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.4.1","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"126cfb3328a9fbf0b183526fc3c88267ef52ba88","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.4.1.tgz","fileCount":6,"integrity":"sha512-Skn8AADPgDTA9LzEPrDOAJaQt4jn4/Dv51mXV6Xk2ipexxOsCvtLV52cNAjquWj8cAZOOqxmdlQeO6e64Ea94A==","signatures":[{"sig":"MEQCIAGwBrm7b8exdS2GpcuPpKTjzYB+KfdzOcoPVA6B4GB9AiBu2v5H8uRqL921+N3jaM5rFYqwJUyox3V7YVLouJw7YA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":85377},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3b2bcd463b0ae9203a96170bd7106dcfb7c69c58","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.13.0","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"24.16.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-auth":"*","@microboxlabs/miot-chat":"*","@microboxlabs/miot-harness-client":"*","@microboxlabs/miot-calendar-client":"*","@microboxlabs/miot-connection-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.4.1_1782313040270_0.6105630263416988","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@microboxlabs/miot-cli","version":"0.4.2","license":"Apache-2.0","_id":"@microboxlabs/miot-cli@0.4.2","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"homepage":"https://github.com/microboxlabs/modulariot#readme","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"bin":{"miot":"dist/cli.js"},"dist":{"shasum":"c540894ac352b1c9a40e870931ba142c5178d882","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.4.2.tgz","fileCount":6,"integrity":"sha512-F2WCcE2U3YJ90yy6kk7QSiQNKvBj75e0zpJ1aj6StcpP/vdEu2rZGnmCWDMthYDChyUgKSZ3YWJviQs1A2UN4g==","signatures":[{"sig":"MEQCIEmCNonzGceNzLvhfZED17GRsUYAbvZLBENKp2vxCinQAiB4Z1aKCj1p+DCTecDPVQVCmes8PnlzssGOaVX0XzdkgQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@microboxlabs%2fmiot-cli@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":85382},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"55a7ae10b522a87aeae090de8c05df27dfdb8e42","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e2882217-7b78-4889-bd32-41fc36d5b914"}},"repository":{"url":"git+https://github.com/microboxlabs/modulariot.git","type":"git","directory":"packages/miot-cli"},"_npmVersion":"11.13.0","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","directories":{},"_nodeVersion":"24.17.0","dependencies":{"commander":"^14.0.0","@microboxlabs/miot-auth":"*","@microboxlabs/miot-chat":"^0.1.1","@microboxlabs/miot-harness-client":"*","@microboxlabs/miot-calendar-client":"*","@microboxlabs/miot-connection-client":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","vitest":"^3.0.0","typescript":"5.8.2","@repo/eslint-config":"*","@repo/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/miot-cli_0.4.2_1782316437328_0.08231709156660694","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@microboxlabs/miot-cli","version":"0.5.0","license":"Apache-2.0","repository":{"type":"git","url":"git+https://github.com/microboxlabs/modulariot.git","directory":"packages/miot-cli"},"type":"module","bin":{"miot":"dist/cli.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest run","lint":"eslint .","check-types":"tsc --noEmit"},"dependencies":{"@microboxlabs/miot-auth":"*","@microboxlabs/miot-calendar-client":"*","@microboxlabs/miot-chat":"^0.2.0","@microboxlabs/miot-connection-client":"*","@microboxlabs/miot-harness-client":"*","commander":"^14.0.0"},"devDependencies":{"@repo/eslint-config":"*","@repo/typescript-config":"*","tsup":"^8.0.0","typescript":"5.8.2","vitest":"^3.0.0"},"publishConfig":{"access":"public"},"gitHead":"09df0a2421f2b0cafa35a788df6ee338ea592ba5","_id":"@microboxlabs/miot-cli@0.5.0","description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"homepage":"https://github.com/microboxlabs/modulariot#readme","_nodeVersion":"24.14.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-xMqHx48Ehof8/ce/9Zur2PYxZFvlrtglkfW8wxB6laNofvg9ExnV3ehgUbK0o7y8rEZ90j0i/FBoSBz2Zo7YBw==","shasum":"be835a6985ca159e8b230e1fd5b07478bb4995cc","tarball":"https://registry.npmjs.org/@microboxlabs/miot-cli/-/miot-cli-0.5.0.tgz","fileCount":6,"unpackedSize":86801,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAQncmKrt7KDP5T3E/HQLLLobAD+ftl/tIAn0hchKDQwAiEAgGj8XyUxVYtdfn1wGoZvNGODXGeAqnU22nq/nVO0wko="}]},"_npmUser":{"name":"korutx","email":"korutx@gmail.com"},"directories":{},"maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/miot-cli_0.5.0_1782403148934_0.30410028276974876"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-22T01:25:10.127Z","modified":"2026-06-25T15:59:09.270Z","0.1.0":"2026-02-22T01:25:10.348Z","0.1.2":"2026-02-22T01:34:54.816Z","0.2.0":"2026-02-22T16:43:27.020Z","0.3.0":"2026-03-04T20:39:19.349Z","0.4.0":"2026-06-10T22:52:08.430Z","0.4.1":"2026-06-24T14:57:20.399Z","0.4.2":"2026-06-24T15:53:57.468Z","0.5.0":"2026-06-25T15:59:09.105Z"},"bugs":{"url":"https://github.com/microboxlabs/modulariot/issues"},"license":"Apache-2.0","homepage":"https://github.com/microboxlabs/modulariot#readme","repository":{"type":"git","url":"git+https://github.com/microboxlabs/modulariot.git","directory":"packages/miot-cli"},"description":"[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli) [![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)","maintainers":[{"name":"ricardo87","email":"ricardo@vialabs.net"},{"name":"korutx","email":"korutx@gmail.com"}],"readme":"# @microboxlabs/miot-cli\n\n[![npm](https://img.shields.io/npm/v/@microboxlabs/miot-cli)](https://www.npmjs.com/package/@microboxlabs/miot-cli)\n[![License](https://img.shields.io/npm/l/@microboxlabs/miot-cli)](./LICENSE)\n\nCommand-line interface for the ModularIoT platform. Manage calendars, bookings, slots, and more from the terminal or through AI agents.\n\n## Installation\n\n```bash\nnpm install -g @microboxlabs/miot-cli\n```\n\nOr run directly with `npx`:\n\n```bash\nnpx @microboxlabs/miot-cli calendar list\n```\n\n## Configuration\n\n### Browser Session Login\n\nThe CLI can obtain and store a platform token by opening your browser and\nlistening for a localhost callback. The platform can use your existing browser\nsession to approve the CLI login:\n\n```bash\nmiot auth login\n```\n\nBy default the command uses:\n\n| Setting | Default | Override |\n|---|---|---|\n| Login URL | `<base-url>/app/cli/auth/login` | `--login-url` or `MIOT_LOGIN_URL` |\n| Token URL for code exchange | `<base-url>/app/api/cli/auth/token` | `--token-url` or `MIOT_OAUTH_TOKEN_URL` |\n| Callback URL | `http://127.0.0.1:<random>/callback` | `--callback-host`, `--callback-port` |\n\nThe platform login endpoint should use the current browser session to resolve\nthe user, organization, and token. It should redirect to the callback URL with\nthe same `state`, either `access_token` (or `token`) or a short-lived `code`,\nand optionally `organization_id`/`organizationId`. If it returns a `code`, the\nCLI exchanges it with the token URL.\n\nFor a standard OAuth PKCE flow, pass a client ID:\n\n```bash\nmiot auth login --client-id <public-oauth-client-id>\n```\n\nOAuth mode also supports `--auth-url`, `--audience`, and `--scope`.\n\nUse `--no-open` to print the login URL instead of opening the browser. The\nreceived access token is written to the selected profile in `~/.miotrc.json`\nwith file mode `0600`.\n\n```bash\nmiot auth status\nmiot --profile production auth logout\n```\n\nThe CLI resolves credentials in this order (highest priority first):\n\n| Source | Base URL | Token | Organization ID |\n|---|---|---|\n| CLI flags | `--base-url <url>` | `--token <token>` | `--organization <id>` |\n| Environment variables | `MIOT_BASE_URL` | `MIOT_TOKEN` | `MIOT_ORGANIZATION_ID` |\n| Dotfile (`~/.miotrc.json`) | From selected profile | From selected profile | From selected profile |\n\n### Dotfile\n\nCreate `~/.miotrc.json` to store named profiles:\n\n```json\n{\n  \"defaultProfile\": \"staging\",\n  \"profiles\": {\n    \"staging\": {\n      \"baseUrl\": \"https://staging.example.com\",\n      \"token\": \"staging-token\",\n      \"organizationId\": \"org-staging\"\n    },\n    \"production\": {\n      \"baseUrl\": \"https://prod.example.com\",\n      \"token\": \"prod-token\",\n      \"organizationId\": \"org-production\"\n    }\n  }\n}\n```\n\nSelect a profile with `--profile <name>`, or omit it to use `defaultProfile`.\n\n## Output Modes\n\n| Mode | Flag | Default when |\n|---|---|---|\n| `table` | `--output table` | stdout is a TTY (interactive terminal) |\n| `json` | `--output json` | stdout is piped or redirected |\n\n## Commands\n\n### Calendars\n\n```bash\nmiot calendar list [--group <code>] [--active] [--inactive]\nmiot calendar get <id>\nmiot calendar create --code <code> --name <name> [--timezone <tz>] [--description <desc>]\nmiot calendar update <id> [--code <code>] [--name <name>] [--timezone <tz>] [--description <desc>]\nmiot calendar deactivate <id>\n```\n\n### Slots\n\n```bash\nmiot calendar slots list --calendar <id> [--from <date>] [--to <date>] [--available]\nmiot calendar slots get <id>\nmiot calendar slots generate --calendar <id> --from <date> --to <date>\nmiot calendar slots update-status <id> --status <OPEN|CLOSED>\n```\n\n### Bookings\n\n```bash\nmiot calendar bookings list [--calendar <id>] [--from <date>] [--to <date>]\nmiot calendar bookings get <id>\nmiot calendar bookings create --calendar <id> --resource-id <id> [--resource-type <type>] [--resource-label <label>] --date <date> --hour <hour> --minutes <minutes>\nmiot calendar bookings cancel <id>\nmiot calendar bookings by-resource <resourceId>\n```\n\n### Groups\n\n```bash\nmiot calendar groups list [--active]\nmiot calendar groups get <id>\nmiot calendar groups create --code <code> --name <name> [--description <desc>]\nmiot calendar groups update <id> [--code <code>] [--name <name>] [--description <desc>]\nmiot calendar groups deactivate <id>\n```\n\n### Time Windows\n\n```bash\nmiot calendar time-windows list --calendar <id>\nmiot calendar time-windows create --calendar <id> --name <name> --start-hour <hour> --end-hour <hour> --valid-from <date> [--valid-to <date>] [--slot-duration <minutes>] [--capacity <n>] [--days-of-week <days>]\nmiot calendar time-windows update <calendarId> <timeWindowId> [--name <name>] [--start-hour <hour>] [--end-hour <hour>] [--valid-from <date>] [--valid-to <date>] [--slot-duration <minutes>] [--capacity <n>] [--days-of-week <days>]\n```\n\n### Slot Managers\n\n```bash\nmiot calendar slot-managers list [--active]\nmiot calendar slot-managers get <id>\nmiot calendar slot-managers create --calendar <id> [--days-in-advance <n>] [--batch-days <n>]\nmiot calendar slot-managers update <id> [--days-in-advance <n>] [--batch-days <n>] [--active] [--no-active]\nmiot calendar slot-managers deactivate <id>\nmiot calendar slot-managers run [id]\nmiot calendar slot-managers runs [managerId] [--limit <n>]\n```\n\n### Connections\n\n```bash\nmiot connections list\nmiot connections get <id>\nmiot connections create --name <name> --provider <type> --provider-base-url <url> --credential-profile <id> [--metadata-json <json>]\nmiot connections test <id> [--method <method>] [--path <path>]\n```\n\n### Credential Profiles\n\n```bash\nmiot connections profiles list\nmiot connections profiles create --display-name <name> --auth-type <type> [--public-config-json <json>] [--secret-config-json <json>]\n```\n\n### Connection Operations\n\n```bash\nmiot connections operations list <connectionId>\nmiot connections operations create <connectionId> --name <name> --method <method> --path <path> [--request-schema-json <json>] [--response-schema-json <json>] [--test-operation]\n```\n\n### Chat (interactive harness TUI)\n\n`miot chat` opens an Ink-based interactive TUI against a running [`miot-harness`](../miot-harness-client). Equivalent to running the standalone [`miot-chat`](../miot-chat) bin — the CLI re-exports it as a subcommand so users don't have to install two binaries.\n\n```bash\nmiot chat [--tenant <id>] [--user <id>] [--mode <auto|canned|meta|agentic>] [--profile <name>] [--harness-base-url <url>] [--harness-token <token>]\n```\n\nThe flags mirror the standalone bin. Config + env precedence: CLI flag > `MIOT_CHAT_*` env > `~/.miot-chat/config.json` profile > defaults. Force the headless line-REPL fallback (no Ink) with `MIOT_CHAT_NO_TUI=1`; useful for CI or piped stdin (`echo \"ping\" | miot chat`).\n\nWhat you get inside the TUI: multi-line editor with cursor / paste / history, persistent status bar (tenant · user · conv · mode · ctx-tokens · turns · streaming spinner), live event chain with an animated indicator on the active step, markdown rendering for final answers, theme support, session persistence at `~/.miot-chat/sessions/<conv-id>.json`, and 15 slash commands (`/help`, `/context`, `/whoami`, `/mode`, `/tenant`, `/user`, `/theme`, `/resume`, `/runs`, `/export`, `/save`, `/clear`, `/reset`, `/approve`, `/exit`). See the [miot-chat README](../miot-chat) for the full slash table.\n\n### Harness (scriptable run verbs)\n\nLow-level RPC surface over the harness's `/runs` endpoints. Use this for scripts, CI smoke tests, ad-hoc API probing, or wiring the harness into another non-interactive tool. No streaming, no UI — `harness create` is fire-and-forget; pair it with `harness runs get` to fetch the final record.\n\n```bash\nmiot harness [--harness-base-url <url>] [--harness-token <token>] <subcommand>\n```\n\n```bash\n# Dispatch a run and capture the run_id\nmiot harness create \"what's in stock?\" --tenant mintral [--user <id>] [--mode auto|canned|meta|agentic] [--conversation <id>] [--thread <id>]\n\n# Fetch a completed run record (events + artifacts + answer)\nmiot harness runs get <run_id>\n```\n\n`harness create` prints `{ \"run_id\": \"...\" }` and exits; the run continues server-side. `runs get` returns the full `HarnessRunRecord` JSON, including the canonical `answer` once the run completes. Suitable for:\n\n```bash\nRUN_ID=$(miot harness create \"list stock SKUs\" --tenant mintral | jq -r .run_id)\nmiot harness runs get \"$RUN_ID\" | jq -r .answer\n```\n\nIf you want streaming + multi-turn state instead, use `miot chat`. The two commands share the same `@microboxlabs/miot-harness-client` underneath; they differ only in what they compose on top of it.\n\n## Development\n\n`miot-cli` lives in the `turbo-repo` npm workspace and depends on sibling packages (`@microboxlabs/miot-chat`, `@microboxlabs/miot-harness-client`, …) declared as `\"*\"`. Turbo handles build ordering; `tsup` emits `dist/`, and the `miot` bin points at `./dist/cli.js` — so the package must be built before `npm link`.\n\n```bash\n# from the monorepo root\ncd turbo-repo\n\n# install workspace deps (once, and after pulls)\nnpm install\n\n# build miot-cli plus everything it depends on\nnpx turbo run build --filter=@microboxlabs/miot-cli\n#   iterative work: rebuild on change\n#   npx turbo run dev --filter=@microboxlabs/miot-cli\n```\n\nExpose the bin globally:\n\n```bash\ncd packages/miot-cli\nnpm link              # registers ./dist/cli.js as global `miot`\nmiot --help\n```\n\nTo link the standalone chat binary instead:\n\n```bash\nnpx turbo run build --filter=@microboxlabs/miot-chat\ncd packages/miot-chat && npm link\nmiot-chat --help\n```\n\nUnlink with `npm unlink -g @microboxlabs/miot-cli` (or `@microboxlabs/miot-chat`).\n\nNotes:\n\n- Always run `npm install` from `turbo-repo/` (the workspace root), not from inside a package — workspace hoisting is what wires `@microboxlabs/miot-chat` into `miot-cli/node_modules`.\n- `npm link` will appear to succeed even if `dist/` is missing; the resulting `miot` command then fails at runtime. Build first.\n\n## License\n\nSee [LICENSE](./LICENSE).\n","readmeFilename":"README.md"}