{"_id":"@ably/cli","_rev":"58-a693baff58b4ba8953d214af43e39abf","name":"@ably/cli","dist-tags":{"alpha":"0.9.0-alpha.4","beta":"0.11.0-beta.1","latest":"1.3.0"},"versions":{"0.1.0":{"name":"@ably/cli","version":"0.1.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"46194878deff18e3bc76d78cda8fcb82942a1a24","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.0.tgz","fileCount":119,"integrity":"sha512-/C6nVkvPqQNcF0cH+TMQfPkFy3gd5Zzt+zpKAgjMdZ7YPH6lMBjb44qVRdt6STlqQJuwKtp0Nj7r9QD7Q1lwGA==","signatures":[{"sig":"MEQCIF3HfXXYD/yGl7jMNeLxv5LUWgWC9IXIpJv76SDneldUAiBXFT5jxCBE1+HBQsR0CjsiVudFqY8qCfhwYoWgByzudA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":523246},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"1d11e21d0920c6c911b902d5a93f518a1b049fe0","scripts":{"test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","prepublishOnly":"npm run build"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.0_1742782400968_0.024928378485900016","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@ably/cli","version":"0.1.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"eb79b47b66b024997e33f7fad314097836677010","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.1.tgz","fileCount":119,"integrity":"sha512-rFqbaVglB/MA/NgFVdfZtiso2yLiXW8ALkTUofbmVQFvaQ5qW3KMfpUkEOAwKaBFYzpRvx5tnxJ05xR3oG37FA==","signatures":[{"sig":"MEQCIFdyh+QsFzK5+Npd5UXoEWKvcxMTMoM4bz7Wc0DpJoU9AiBppmEcTIvejNn12KwEtj+bU8Ls3xJcUZ6vuhc4J+ywyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":523488},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"gitHead":"4c5f0d04249fa347c30c3694096b5842649e4a9d","scripts":{"test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","prepublishOnly":"npm run build"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.1_1742782805067_0.26683038799408965","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@ably/cli","version":"0.1.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"2bbd3973bf853863eb08beffa3233531a1be3cf6","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.2.tgz","fileCount":119,"integrity":"sha512-+E69hXw+lExk+Qh2BAVLP7fGIEKoEjklYFd3z8eyIM1XhtUDRtAHtBl7IjwZ3XzUvADs/MsJE0UTTRM0SfNasA==","signatures":[{"sig":"MEQCIHSAEqgsFKvnjPISNJcdGPXhB/+BqRzUHe55dPQI+Ie0AiBfGmvei8aD6jc/SDQSNqDipFTUCGju6R8zwrc1fsDFYw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":523488},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"7cd896fae04daf4217a7896d6feade3eb55955ef","scripts":{"test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","prepublishOnly":"npm run build"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.2_1742782938748_0.9245697240779953","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@ably/cli","version":"0.1.3","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.3","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"9fd1f6e68ced65ff35a3bae18f6201a4008bb7fa","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.3.tgz","fileCount":163,"integrity":"sha512-2a64MR76glkjUy3n42LU0U0RGQxv7/uI8nr4HTew2EdAnb3ylJhd+z3oObeYBlscdsscA1pcAirL5/l/p2AaPQ==","signatures":[{"sig":"MEQCIBUcKY6aPxQbveG2HszZ5odNWaZZzSOMRyna/3Jnfb9ZAiBvNPey6gISY2YTCR2nt3Dih5QNykXFMcX+TcdMiGkMwg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":696461},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"b19e81a0cbd12db8eafeb8a5d8a9a6b45e737a2d","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.3_1742808059646_0.34287557723707507","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@ably/cli","version":"0.1.4","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.4","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"578d98df007d8eed5f7618b6ff52c27ea5189b6d","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.4.tgz","fileCount":185,"integrity":"sha512-ncydFj3RD0t0O5XNwYWrgIzVGAzxBbXGeg4XfPbIXe8QpCKEDLEbmacet54ddyEDmifu1y9wWg2a99eR+GFqIA==","signatures":[{"sig":"MEQCIDp/UrEU/7EaTyZO3EZHF4AycTvZHMw+LI++Whd+VQLLAiA0A2eyu1XULwF56OL9MzGC3zMVkxPih0ZHiMhTsniK1A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686613},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"7916f101ccd0329181a8aa2057180cd805013a79","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.4_1742816124522_0.2266605813819158","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@ably/cli","version":"0.1.5","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.1.5","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"f7fc7f611978dd5621dfd004070580c5ed05f476","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.1.5.tgz","fileCount":193,"integrity":"sha512-OTYdPfVa7+EFqa2Sm4zyrE2p0+kWC4L4p1Wqoe8rYEI/oRlwkowoKTzvR+/Ho1FBqSUcxsP/ca6zh1fDubDdHA==","signatures":[{"sig":"MEUCICnfNMWKyxyFL7/9daNaXU620CM6BAbkwzP2lZS8ttpRAiEAyY0EReKJxTQg9QkQO4F2RBsuvcssrAxi7FPWTC/iWbk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":807098},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"9c784cb322470ad112b112e5daff834f5e2060f6","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"github:ably/ably-js#type-correction-publishoptions","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.5_1742827311111_0.6259415116712377","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@ably/cli","version":"0.2.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"1cdd4fc080c06429716ccb37bdcdf8b609d9fbf8","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.0.tgz","fileCount":281,"integrity":"sha512-a/dM8RkaODMDkx16T0Sm+rl3IZEDXd7n5fnS7bBqxwhG66YMzF4Fg9CO0zikyHjMgXDgED0+qf6vk1jTO00uDw==","signatures":[{"sig":"MEYCIQDSWHQ3o7z/03w1nOsLoUXomQeoLu7HyIQx7sC2bR33IwIhAKq5F7zFlXKTgTo+VXMeLaVA6WHRRz96oSHpMCFu6EZC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1147529},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"fb82e95566bfd9e4f73d6678e0f752413c7bf946","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"^2.6.5","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.0_1742858391269_0.3985922083066349","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@ably/cli","version":"0.2.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"747537c25c99a02761423cb236d222d0e0918c33","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.1.tgz","fileCount":351,"integrity":"sha512-+liLAJQ2CS2CHaeld/tKxwRUIeqJ5cvBETCNIae+iXELo0/pjiP4qHj6JH3l0eAMWddQx3V2+NKQRVs1csXsMg==","signatures":[{"sig":"MEUCIQDAXyuSmVV9DSznG6/E/iYTYW2HO/SdX24+tmU1937YmQIgYmE7/lyDO2tyUi0rwMYBBaL1fdLtQZ4yf1Y+Tc6/Dio=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1393385},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"49f808b2b06afb48d54f29dfd9e88bb71c5c810b","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"^2.6.5","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.1_1742882988922_0.4083378821420034","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@ably/cli","version":"0.2.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"0a67164cc7162d7fa902e42aad8f6c2596dbb670","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.2.tgz","fileCount":351,"integrity":"sha512-KFTRsgPVkcli0nAMNGZkiNshH6svnypFFjiATsaDgJBQ6PDpGGaPDSdSMHj6u5MHk98E4fM9iZ6icNOrJTcf0A==","signatures":[{"sig":"MEUCIQCdf0q+ZkoBsI3eJYnMcEe9U1n42tx+LcUOh9rFlmG49gIgUoqW/9ZebeEQVq83B2q/o5gZMN0Xuli0831P9MV2dyE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1396207},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"0b06513e9788ace4a4a61c2c1cd108d2fea30cbf","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"^2.6.5","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.2_1742891667096_0.721450284388365","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@ably/cli","version":"0.2.3","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.3","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"d81fd1e0031d8e55a0df85a370bf22abff25c33e","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.3.tgz","fileCount":353,"integrity":"sha512-zWiL5yIyqNTzdPQqlvCQ5tv2flibGHuzZLLhiRiltBxTMmc5BurnGjwEanrZbnJFSe9Icmh0U0HHvgdT3yGmxA==","signatures":[{"sig":"MEUCIBtcfZ1MAQLXLRDV0Y17BIlk79WHZQMEImPdOybkRQslAiEAnL0HpYSnH/MIK89nXJgvfOkQ54LfpSx8wV7xt1ltGfs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1408095},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"1684631f8cdd203a6e00ccde3b9dce391dbb1db5","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ably":"^2.6.5","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.3_1742893996517_0.18925635227731052","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@ably/cli","version":"0.2.5","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.5","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"908f8f424ed3d80b3efe8b867b7cdd2d986ed6c3","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.5.tgz","fileCount":371,"integrity":"sha512-sWibJhFPGrDSSRGeuactLWjOo2PMV+O75wQ4eUyjviua+KQPv0GXBKwwTYOn/qyqTzVBRCCz7jJ9dYsmWXAOHA==","signatures":[{"sig":"MEYCIQCbATW00NN6gaOud2yJAyIi8UFWIQm5asdT8S9c0hc5vwIhANHYVo8RtzdhXbV1kyDtJSoZsBQen17DVnnOpAbEQ2iG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1491167},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/hooks/init/alias-command","command_not_found":"./dist/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"f7053efe02c6d5485a74638822d51c6421b8dce7","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ora":"^8.2.0","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.5_1743510626438_0.3248322725853714","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@ably/cli","version":"0.2.6","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.6","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"0995d6c74dd5bafcc9caf47c7915632b50351f6c","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.6.tgz","fileCount":371,"integrity":"sha512-DAoQLGWyk8j7t7s5H7eQLgptRH7vDywFRe0Gl15LG739tL6Gm3ObLWlN0s7ftqiBEOTjvuWTm6ra3tHfM0/I6w==","signatures":[{"sig":"MEYCIQDc/X4vZXyP4JdgFg3PhEmPk80y3bm55aLSl5tPu3+qbgIhAPUNXedqFX7yspEseKRDX+Kn+zZVC70pAAwOiAXJv76g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1489810},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/hooks/init/alias-command","command_not_found":"./dist/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/commands","helpClass":"./dist/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"b7816f6dfb7fb5999da0752cd7fa143ea9cfb9dc","scripts":{"cli":"bin/run.js","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"oclif manifest && oclif readme","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ora":"^8.2.0","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^19.0.0","inquirer":"^12.5.0","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","jsonwebtoken":"^9.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4","mocha":"^11","ts-node":"^10.9.2","typescript":"^5.8.2","@oclif/test":"^3","@types/chai":"^4","@types/node":"^22.13.11","@types/mocha":"^10.0.1","@types/inquirer":"^9.0.7","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.9"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.6_1743525142927_0.6467838582548744","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@ably/cli","version":"0.2.8","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.2.8","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"9bab59e1965bbc62ab9c641d36209dee606ad9e5","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.2.8.tgz","fileCount":378,"integrity":"sha512-IuyI+d6ZaUr67ULO3EB8nB/mhdnPWX2UqFfDFFFsi31OXICpkILBOcOKuV+hvedZUwA+FZ83NyO7QSd3oZe2Ww==","signatures":[{"sig":"MEYCIQDj8Hf2abJdnSv6kh0hI2ZIP1+PzvDBixD+MnRqGZ83zwIhAM8o7w3N/4W4gwEbZMpMMEHIp8gqZq+Hg27QwI4v9pVH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1909491},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"e965e31828d99e51683ef6a4788aa9268f7a11bd","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"npm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","posttest":"npm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.17.42","eslint":"^8.54.0","ts-node":"^10.9.2","@types/ws":"^8.5.11","dockerode":"^4.0.2","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.6","@types/inquirer":"^9.0.7","@types/dockerode":"^3.3.29","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.2.8_1744325425643_0.7885789046673206","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@ably/cli","version":"0.3.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.3.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"6e92b26deb78eb36aa564a0638b4275eeb70c97c","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.3.0.tgz","fileCount":378,"integrity":"sha512-EUomg9MDoTBoBGYzwmBeJ7tJE1oynHM+qbsKMnP3CCSej802U3mmMeBcU2Zq0PCqVzLkgM5NSvUP5g7lS1uiwg==","signatures":[{"sig":"MEUCIQDcP4Qshxml80x+ECjwXm45hiwTk1v21ZkUGpIJp8rkqwIgEr0ku62b0gmAGng17VAG2oQjHdHbLsKsYzuw7aCqqsg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2031417},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"82e20a7ef6b1b8fc0b75c8a024dea1c7b609acfd","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"npm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","posttest":"npm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.17.42","eslint":"^8.54.0","ts-node":"^10.9.2","@types/ws":"^8.5.11","dockerode":"^4.0.2","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.6","@types/inquirer":"^9.0.7","@types/dockerode":"^3.3.29","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.0_1744365625561_0.6333062036824284","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@ably/cli","version":"0.3.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.3.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"01e61a0824a863af40d20059290f0cb8df76098c","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.3.1.tgz","fileCount":384,"integrity":"sha512-POoeCCTKdFRU+S8nSPxl7uSjNStz/yq7yktrvJ0tclgH4zSJ8XsAqehK2EZkGRnSX5AUqfbuB63zr1r2jNDSwg==","signatures":[{"sig":"MEUCIQCIjPCM/XWblASV2tlMUPchZnO9GryHGuCIIHGC6RyDuQIgDOS5v5X+MDRbG6t/brjUMomomUHjRiEgrtmpZDOfAqU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1866167},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"02b394ed8bdbf26a16b2b3fd4a25ffbac592c27a","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"npm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","posttest":"npm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.9.0","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.17.42","eslint":"^8.54.0","ts-node":"^10.9.2","@types/ws":"^8.5.11","dockerode":"^4.0.2","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.6","@types/inquirer":"^9.0.7","@types/dockerode":"^3.3.29","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.1_1744371527389_0.42270653401470715","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@ably/cli","version":"0.3.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.3.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"0287b3a301ea598beef7abfdbc86b6760f77e89b","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.3.2.tgz","fileCount":388,"integrity":"sha512-hbVDbAyR9iAoMs660TiOjwcAC66tJ8APlILnAAq5U8fPuIrLQkBZ+NRowt0e3DDxZM0Gmk1idR5fwLti0h8WAQ==","signatures":[{"sig":"MEUCIEisMkt3niFLzkFWKX68//vALpRZvT4gn8RfS9OevnViAiEA++z2GSDOmVp6zZPF9A3Z3Hsf1mAo69CFZtFz9YAx0lc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2227738},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/alias-command"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"b297d27643e1f51119a951a14c4891622ac9af08","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"npm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"npm run build && npm run prepack","version":"oclif readme && git add README.md","postpack":"rm -f oclif.manifest.json","posttest":"npm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.9.0","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.17.42","eslint":"^8.54.0","ts-node":"^10.9.2","@types/ws":"^8.5.11","dockerode":"^4.0.2","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.6","@types/inquirer":"^9.0.7","@types/dockerode":"^3.3.29","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.2_1744589913276_0.2368314512239733","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@ably/cli","version":"0.3.3","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.3.3","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"83121dbb57f04a98addcb59bb8a714593677ed5d","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.3.3.tgz","fileCount":323,"integrity":"sha512-hryD3h+pNBV89wpd/RV8Db65VagFDe+OK4v2Nau5v6Xg15jVGYGMysX7J3gaEslKzK8Ngdcmg5ebQ1cAMqPNtg==","signatures":[{"sig":"MEUCIQD0nLQAsVjgQyelOu17PIaubvRB2pmP4I7ipPYuJinqoAIgeQr0L+8ZZtxZ6WNBZjlRTZDfC2S+X1NZQ5wxmjr//kk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1952001},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"f19cc5c90c2ffb268ad2b0cda35da997e0da6bc9","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && pnpm run prepack","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"pnpm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.9.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.2.10","sinon":"^18.0.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@types/sinon":"^17.0.3","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.3_1745097415424_0.6940010993319192","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@ably/cli","version":"0.3.4","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.3.4","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"8ae9b3a5bd905f0cbaca985f5946a7d4abaf7a5a","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.3.4.tgz","fileCount":324,"integrity":"sha512-+Ii+LEA4MPQsNQ0qrnWTQ49FZOvm3hHo8poE7lVQIcCH//fVd3DSjxtMEiLZR9RfAsNl/eivilNh3JKMgKjuXA==","signatures":[{"sig":"MEQCIE4+n109t/H6SHBRxujb0LlVH3QNWcnWYz8oCl92wyc2AiAJZcd2uzrMaRpuLes8xj0Rl424NNna4d6UYTpR/trUCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1971381},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":"./dist/src/hooks/init/alias-command","command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"2e604b7377ac184ab1d1f082d0449630434ea3fe","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"mocha --forbid-only \"test/**/*.test.ts\"","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && pnpm run prepack","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"pnpm run lint","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","terminal-server:test-client":"node dist/scripts/terminal-test-client.js"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","mocha":"^11","oclif":"^4.2.10","sinon":"^18.0.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/mocha":"^10.0.10","@types/sinon":"^17.0.3","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/node-fetch":"^2.6.12","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.3.4_1745122457777_0.4555705198284785","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@ably/cli","version":"0.4.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.4.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"517bc2d87c5a6455c5190ea612cee4a709d6e795","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.4.0.tgz","fileCount":332,"integrity":"sha512-CM8+wUVbk5LOd7IXIJPMK4UWPX9IOvRnBZ1c1SXMiUo3xBBYrzth/MMgmjXz8TS+uWEZuQYiMZotT5btF1hUKQ==","signatures":[{"sig":"MEUCIEqoAeXtRuwBMK+6VZ03BxJoE5JNjPAw/HtlzfveStqWAiEAhS6JcH2N/aec2j2WCVaUsdbdbcgeg9wEqIEHjPcmSJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2010438},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"bf98103a14e251eb563dbf8eed8864435085e761","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 30000","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && pnpm run prepack","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"./scripts/lint-test-paths.sh","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 30000","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 10000","lint:docker":"docker run --rm -i hadolint/hadolint < Dockerfile","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","test:playwright":"./scripts/run-tests.sh test/e2e/web-cli/web-cli.test.ts --timeout 60000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 10000","diagnostics:server":"pnpm run build && node dist/scripts/diagnostics-server.js","diagnostics:container":"bash scripts/diagnostics-container.sh"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^4.0.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.0_1745788066273_0.5917736214655751","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-alpha.0":{"name":"@ably/cli","version":"0.4.1-alpha.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.4.1-alpha.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"be960f66867e5d1b59f8325882ae58828d8d88db","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.4.1-alpha.0.tgz","fileCount":361,"integrity":"sha512-2zaShxLEC7IyFIqmdhqhE5sZP+PVaF4pJRg7eZ4B75ssVMREpyxvV1V+eeDqvG+hB2PUEW6ObUshaETW1YuCbA==","signatures":[{"sig":"MEQCIGTpauPijl5H4RCE+6swiBhTQ2xVSNZpXTH3m0++E7XhAiADRY/oc1N63T9cdKQF6bWdPPQi0MU/26TBvn3MSVBdtQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2296514},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","lint":"eslint .","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 30000","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run prepack","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"./scripts/lint-test-paths.sh","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 30000","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 10000","lint:docker":"docker run --rm -i hadolint/hadolint < Dockerfile","postinstall":"node -e \"process.env.npm_config_global === 'true' && require('./dist/utils/logo.js').showLogoAndText('Ably CLI installed! Run \\'ably\\' to get started')\"","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 10000","diagnostics:server":"pnpm run build && node dist/scripts/diagnostics-server.js","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","dev:terminal-server":"docker build . -t ably-cli-sandbox && pnpm build && pnpm terminal-server","diagnostics:container":"bash scripts/diagnostics-container.sh"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^4.0.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.1-alpha.0_1747071889853_0.3944586767088525","host":"s3://npm-registry-packages-npm-production"}},"0.4.1-alpha.1":{"name":"@ably/cli","version":"0.4.1-alpha.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.4.1-alpha.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"1c28ca1e8d9ac9b43a07c4198b702178b737ea48","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.4.1-alpha.1.tgz","fileCount":361,"integrity":"sha512-ZZ9R6lVldXQQsCUNeMPfBf5fTFo/UQUEPFiFqvEJujeew6vaLKKMDX/muYUjbo8d4mrkRZ/7FX6erZ6Rb2GkCQ==","signatures":[{"sig":"MEUCIQCMiWYCW19bcrZs2s9P+Ynh1r/yK2oqmRc7RjcsRTZFpAIgXJMXqvI/eN882HfGqILltnEYHVHHXuhiQ3gccEc0d7c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2297130},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","lint":"eslint .","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 30000","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run prepack","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"./scripts/lint-test-paths.sh","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 30000","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 10000","lint:docker":"docker run --rm -i hadolint/hadolint < Dockerfile","postinstall":"node -e \"try { if (process.env.npm_config_global === 'true') { import('./dist/src/utils/logo.js').then(m => m.showLogoAndText('Ably CLI installed! Run \\'ably\\' to get started')).catch(e => console.log('Ably CLI installed! Run \\'ably\\' to get started')); } } catch (e) { console.log('Ably CLI installed! Run \\'ably\\' to get started'); }\"","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 10000","diagnostics:server":"pnpm run build && node dist/scripts/diagnostics-server.js","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","dev:terminal-server":"docker build . -t ably-cli-sandbox && pnpm build && pnpm terminal-server","diagnostics:container":"bash scripts/diagnostics-container.sh"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^4.0.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.4.1-alpha.1_1747075577345_0.008551041606200238","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@ably/cli","version":"0.5.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.5.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"472036b725523e7ca8b92b837bd7687fe44719cf","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.5.0.tgz","fileCount":332,"integrity":"sha512-fXW4U8bm353WmRXrk3ZfxQ2jc+3aLwdNVSKyHvMUcn/26qqSiQUapE2khSnF2OJ/7HDQLtVL5Hz8zvd74dyuqw==","signatures":[{"sig":"MEUCIQDM9kqie3Z0uTap+O00WegBuWk/txWe8D5AygajWxiJAQIgT6DGkbhceoe7XLXPJRs7aWfDbcB11YemHfnCRsACIRc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2010438},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist/src"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"83d14c8262fc209d4df5dc9cf5974e963306c3a4","scripts":{"cli":"bin/run.js","lint":"eslint .","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 30000","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && pnpm run prepack","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"./scripts/lint-test-paths.sh","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 30000","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 10000","lint:docker":"docker run --rm -i hadolint/hadolint < Dockerfile","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","terminal-server":"node dist/scripts/terminal-server.js","test:playwright":"./scripts/run-tests.sh test/e2e/web-cli/web-cli.test.ts --timeout 60000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 10000","diagnostics:server":"pnpm run build && node dist/scripts/diagnostics-server.js","diagnostics:container":"bash scripts/diagnostics-container.sh"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@types/react":"^18.3.20","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@types/react-dom":"^18.3.5","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^4.0.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.0_1747336451490_0.9798281569685958","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@ably/cli","version":"0.5.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.5.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"4494c470694945a013b5727e4cd80dafcf57d29d","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.5.1.tgz","fileCount":361,"integrity":"sha512-7nf2UCamWCc0VM399CV55Fs65Ka4E4XaJ0nC3TbKFSBB6YfReECiJuiEGbunjP+8SXW3g4kVk21A/xk+gH58hw==","signatures":[{"sig":"MEQCIE81eBP3ZJmU0RSIb6Lj4xovBKawo2oRHCoAhoN184QnAiAzXzHP+2Yg3ZK0pfpS9zRbmqn/F/rRxigKLSyFcoonvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2298245},"main":"dist/index.js","type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["./dist"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"f2839fb270623e7f8b08310ca73af33f61fcc7a6","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint .","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 30000","build":"rm -rf dist && rm -f tsconfig.tsbuildinfo && tsc","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && oclif manifest && oclif readme --no-aliases","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","posttest":"./scripts/lint-test-paths.sh","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 30000","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 10000","preversion":"pnpm run prepare","lint:docker":"docker run --rm -i hadolint/hadolint < Dockerfile","postinstall":"[[ \"$CI\" == \"true\" ]] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","dev:container":"pnpm build:container && bash scripts/run-dev-container.sh","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","build:container":"docker build . -t ably-cli-sandbox","terminal-server":"node dist/scripts/terminal-server.js","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 10000","diagnostics:server":"pnpm run build && node dist/scripts/diagnostics-server.js","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","dev:terminal-server":"pnpm build:container && pnpm build && pnpm terminal-server","diagnostics:container":"bash scripts/diagnostics-container.sh"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.6.5","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.5.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"^10.9.2","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","dockerode":"^4.0.2","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/dockerode":"^3.3.38","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.5.1_1747340857033_0.2659159497076746","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@ably/cli","version":"0.7.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"845ab58491c4203be3fd7ef3115a5cf73bcafb38","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.0.tgz","fileCount":366,"integrity":"sha512-PpgpAtcACaogFOC+67XOhwdc8aIQm+PqS7gVDA/WHyejcmlUeucGtv8sAk+aWH5uFgMgRT82x6F51u9AEU8dVw==","signatures":[{"sig":"MEQCIFOrF98v1EtY6tVTr1eyvprmNEgQSh4oViU5uePIwXkvAiASYv7znthkJ3CXQw8vykKbw7nsscrt6b6mpnw3NGsdSw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2470254},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","@ably/cli":"link:","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"bde12a480dd3b8e047b3787d126540e4340f3fa6","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest && CI=true ABLY_INTERACTIVE=false oclif readme --no-aliases","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","@ably/cli":"link:","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.0_1749767596947_0.19507797215927458","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@ably/cli","version":"0.7.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"cdeb03be2636cfe5a8ec39d1ee0e208c8e3b93db","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.1.tgz","fileCount":366,"integrity":"sha512-6eIlztFafUstH22Io+hu6200jv4TY2H32HheMxlrGjjB3a0paYKDXvj3PIkmz47NBeI04c3anGa/9loeFZOL+w==","signatures":[{"sig":"MEUCIQCg0pRCfZoZtGf4iLmqAS62m61d8sVjTlegiF4IwN9BBQIgRe6FW4dRHa3vLl2aCaaDouaDrjhVt/M3vtnl8QG9VbE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2470254},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","@ably/cli":"link:","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"6d8d8456aa3a0273d70aefa688bc3cf67204c29e","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest && CI=true ABLY_INTERACTIVE=false oclif readme --no-aliases","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","@ably/cli":"link:","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.1_1749767872259_0.5284604799347252","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@ably/cli","version":"0.7.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"023cafa3fc4e7f0515180362f999464de1a58009","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.2.tgz","fileCount":367,"integrity":"sha512-QTQvlPwyXoZANYVVV2CJNi6w/rpeyxkr1RVdwkcnR411j/4bEyFJLxfs7QVQjRw0LnSGKtVDbX3qAyXi7b4fyA==","signatures":[{"sig":"MEYCIQCGGEWcBVhcMjLH8mI/Nv6GR2yhKmdg3R1YdBqP7WdtdQIhAPo9uBZtpNWbnmpINkU6NdGX6+rCHU8LFkvara4vp1Ki","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2478976},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","@ably/cli":"link:","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"e4ff5211d3a570786760f4975a57e6fb9d2084a0","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest && CI=true ABLY_INTERACTIVE=false oclif readme --no-aliases","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","@ably/cli":"link:","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.2_1749768255232_0.877882772206247","host":"s3://npm-registry-packages-npm-production"}},"0.7.3":{"name":"@ably/cli","version":"0.7.3","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.3","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"330e9993f3c93ed8fa94c38db458a252cea4f89e","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.3.tgz","fileCount":367,"integrity":"sha512-QAQbpFLWyaF6RdM70gf0T7BnMWoCwS/Vx1lCxdEELFw1Q6FDg/BDnbqbdYwdso20Rc+tGVJ9L41HiIcBbluTNg==","signatures":[{"sig":"MEYCIQDLkhrGYQd4DQiyTcvE57TfvnJM1j9niNVdngDAOu19YQIhAK+dlkOZN1rz8oOQAc1OrgDbTm99D/lIB+hZcyNIIdq+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2478922},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"4a068915b9f7a9a8511df3adc0e0c5e50b071ad3","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest && CI=true ABLY_INTERACTIVE=false oclif readme --no-aliases","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.3_1749768481857_0.6902282414350498","host":"s3://npm-registry-packages-npm-production"}},"0.7.4":{"name":"@ably/cli","version":"0.7.4","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.4","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"068ea1e74fbcbfe95ca90129c535df673510c333","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.4.tgz","fileCount":367,"integrity":"sha512-AqYyOMtlN9YMcWpDkk43We921aYHOy/Vkv3EoyEoxeKvVqRNySzEexSDITBOla1GJskK2i6VgHS1RwNjNMRvoQ==","signatures":[{"sig":"MEYCIQCmkqAFNelVggKdVxFVowyFMF+If1Xb1EaKJ//GCRh8mwIhAPRZTk2AkVBtCgp4Uo8bpvrmmkQeW5N7IhGc3Q3JSgwg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2478408},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.7.4.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"_resolved":"/private/var/folders/r4/_f3w470n2mbfdgg49x1jh60r0000gq/T/019c3f9b32a8910b48c6bb0138348ef0/ably-cli-0.7.4.tgz","_integrity":"sha512-AqYyOMtlN9YMcWpDkk43We921aYHOy/Vkv3EoyEoxeKvVqRNySzEexSDITBOla1GJskK2i6VgHS1RwNjNMRvoQ==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.4_1749769123963_0.6010985637395743","host":"s3://npm-registry-packages-npm-production"}},"0.7.5":{"name":"@ably/cli","version":"0.7.5","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.5","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"685f182ed54d622b30e47a05c5ec32226523f28b","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.5.tgz","fileCount":367,"integrity":"sha512-hBZq03klwSmvf3XyhreUXtE1sGy7H6j3pDFKUWrGiA8IXgP/cE4gnSj+NyKpbOYP1ztataJIuPTfiY2uj+Z0Jg==","signatures":[{"sig":"MEUCIHaKTsa69gBSjKzZh9pO4fI1ms2ylpEofYh4ARWJjrPBAiEA3eWQ3VhHPpy2FPMtMzR3+vZmMPqru2sFR2qYh6A1LaU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2479062},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"5f84110cb44217a802542f8d3a869a24cbb86d50","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest && node_modules/.bin/oclif readme || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest && CI=true ABLY_INTERACTIVE=false oclif readme --no-aliases && [ -f README.md ] || echo 'Warning: README.md not found after oclif generation'","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.5_1749769799915_0.7487542491159664","host":"s3://npm-registry-packages-npm-production"}},"0.7.6":{"name":"@ably/cli","version":"0.7.6","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.6","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"8227cee7238e5e7adc20d65ad43b26e3048631a3","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.6.tgz","fileCount":367,"integrity":"sha512-oNzCkR/H+jRa9/7X409YRsFH0nKifjcXkIrk0a4+cQNpoMsK6lxBz/JTAQNnyt8/hLqCW5lyAbxwIwHK9trslg==","signatures":[{"sig":"MEUCID+WoumwVH8EN2SZoaRDNMokmcyvw+Wo93kk/FJU28ZhAiEA6XOtp7z4TmdTB2annC0pI1PcqdO41YyfJUOwpFmXWMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2478828},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"846aebc07f1f3b8573b7119cf6d058f85b29b1e1","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.6_1749770443334_0.8382445638954708","host":"s3://npm-registry-packages-npm-production"}},"0.7.7":{"name":"@ably/cli","version":"0.7.7","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.7.7","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"9f0abfcc9c63c7bf29f1ead974b0598927a2ad2b","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.7.7.tgz","fileCount":367,"integrity":"sha512-4Rt76nGBP/ZytiJ/elTJ4rqlxXPKoUz/6Tu5s3wzLM881md1WiaXwutXdetk68qMjVYBDjbGJ0Y6sg3Nl95Tag==","signatures":[{"sig":"MEYCIQDxmrVbTJ4jM25nC/aAKi7JMC0K12G6+zOWUCbbnjz+cAIhAKp8p6ifrhO69QY2pST75V4vRm4RxHdlT+Et3QwEqBP6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.7.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2477942},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.7.7.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" "},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/30dd2d5af6dc80842f9ae5583f95644d/ably-cli-0.7.7.tgz","_integrity":"sha512-4Rt76nGBP/ZytiJ/elTJ4rqlxXPKoUz/6Tu5s3wzLM881md1WiaXwutXdetk68qMjVYBDjbGJ0Y6sg3Nl95Tag==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.16.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.7.7_1749822794079_0.12820977569404035","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@ably/cli","version":"0.8.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.8.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"e5a33d155b57a46e702fd8808b48f94086654a59","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.8.0.tgz","fileCount":377,"integrity":"sha512-v/2FDtvAxBeBrVE16RPv896SumSpMTTV/PM7b38q2xuYfhwIrFTax2R39119j/0AqYki+WyAxoD5oYYNCZ9T8Q==","signatures":[{"sig":"MEUCIAx+7ODrkEYzaSX2SNlaDPGKLtEi/+hKOBAPRBAORsaOAiEAle4mxticoIEiPBuqZVwzm3xtH0VgYTP8qn2icZyc1yU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2493575},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.8.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","actor":{"name":"ably-realtime","type":"user","email":"account.owners@ably.com"},"email":"account.owners@ably.com"},"_resolved":"/tmp/1f73ee9593ef61435408860c000e366e/ably-cli-0.8.0.tgz","_integrity":"sha512-v/2FDtvAxBeBrVE16RPv896SumSpMTTV/PM7b38q2xuYfhwIrFTax2R39119j/0AqYki+WyAxoD5oYYNCZ9T8Q==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.16.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.0_1750431832699_0.8794343665753803","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@ably/cli","version":"0.8.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.8.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"9f70b61903b6f59b784c57a4cb78a924d7beeae3","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.8.1.tgz","fileCount":371,"integrity":"sha512-eZKCod1gw0ntgOVH5Tg4rS+35d1BxKZcZ2asPXBOBUvetIMjSWT2c1de68FyoaMLaxkDcgTQOeJIbuqTLNv2vQ==","signatures":[{"sig":"MEUCIEBsoyl8KFN/vYOSxjZsM8jjeRo6tPJEtb8zoodfWtArAiEApST5XLA9V2OfK1zHu1KOnGPSkYGrPoiq1Y/nSvQ9F3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2475486},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.8.1.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","actor":{"name":"ably-realtime","type":"user","email":"account.owners@ably.com"},"email":"account.owners@ably.com"},"_resolved":"/tmp/ebc9cc1843e167444d687c4e7615f189/ably-cli-0.8.1.tgz","_integrity":"sha512-eZKCod1gw0ntgOVH5Tg4rS+35d1BxKZcZ2asPXBOBUvetIMjSWT2c1de68FyoaMLaxkDcgTQOeJIbuqTLNv2vQ==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.16.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.1_1750776834279_0.45924292078008344","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@ably/cli","version":"0.8.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.8.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"9ba7665a04e42f71120002703e98b06cd0c33bd2","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.8.2.tgz","fileCount":371,"integrity":"sha512-xFawC7nf583USo6tKiXIBRTY8OjhYi5zCX7d4mXkjtrnP5YNR57i2U49WxlFIS9jxB30aULnfJg/xwM39rd4uQ==","signatures":[{"sig":"MEYCIQDfiHod2Nnzlpp7iGIoq1xxxjiIX0EmTYq7eKiQsrruHQIhANzlFYs4WZ7/zKaE0qr9Rm2W68kWxnNR+JwytiTtIuG9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2476590},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.8.2.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","actor":{"name":"ably-realtime","type":"user","email":"account.owners@ably.com"},"email":"account.owners@ably.com"},"_resolved":"/tmp/1bed8b56c9551c14ad4cd3dcd1e0b354/ably-cli-0.8.2.tgz","_integrity":"sha512-xFawC7nf583USo6tKiXIBRTY8OjhYi5zCX7d4mXkjtrnP5YNR57i2U49WxlFIS9jxB30aULnfJg/xwM39rd4uQ==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.16.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.8.2_1750867027974_0.25063303194562137","host":"s3://npm-registry-packages-npm-production"}},"0.9.0-alpha.1":{"name":"@ably/cli","version":"0.9.0-alpha.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.9.0-alpha.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"116eb787d9dc985b5f64c595b8d98d055ded8176","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.9.0-alpha.1.tgz","fileCount":381,"integrity":"sha512-hWRYBqMoVBkAEXeTijQLUvyn9xEdvag++/DlYWHZcnBF50D4hF7MPCMkA+G1KAnnWTwREmRqY2g/QyCcn390fg==","signatures":[{"sig":"MEUCIEzZ59/llkKWW0ehnvNwhrehU+FdV7Cr9f9uvUgBwB4BAiEAq3iN+7c/5aoa2WjomqxiQDoVej129sqSBsdzVJtjriE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2552816},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"5ab3fa4e0f57eea4eeb924d0aab958bde5f54901","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","actor":{"name":"mattheworiordan","type":"user","email":"matthew.oriordan@gmail.com"},"email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0-alpha.1_1751359518902_0.2025938909381002","host":"s3://npm-registry-packages-npm-production"}},"0.9.0-alpha.2":{"name":"@ably/cli","version":"0.9.0-alpha.2","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.9.0-alpha.2","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"2dc8995a9f4d4d7dab50d353fb35f6b46c0cec68","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.9.0-alpha.2.tgz","fileCount":383,"integrity":"sha512-je6dXwGvWjC3axrjAHS2nIwBzKu0hexJLNbdE1KSSvusVDg3Q+TcgWkBihsrJxmbcow7XVsnUs58bXdBvwz9sw==","signatures":[{"sig":"MEUCIDStjyyzCVFGb4rjJx5yqolF6u8DsDc+7FphaFrHQI9pAiEAzP1KlFSRtfq4NnF8LkCdfuMB4qvMjQ8+y2cQRcFQKAU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2567146},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"3dd47905ee8d72c68c2848f6f3b389ab22f6e3ae","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","actor":{"name":"mattheworiordan","type":"user","email":"matthew.oriordan@gmail.com"},"email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0-alpha.2_1751528297391_0.116370026805513","host":"s3://npm-registry-packages-npm-production"}},"0.9.0-alpha.3":{"name":"@ably/cli","version":"0.9.0-alpha.3","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.9.0-alpha.3","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"0d0d6ea0b3ff8ac45d4d461e1dcd39365326b560","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.9.0-alpha.3.tgz","fileCount":389,"integrity":"sha512-KIwWKvcoNTVStBDRoP5xZtBvj/ex5RMCq5bzesvnK6QuYrBfwkYcmVUJVpr7xh61CXXXwwn7o4ckeao+jIui3w==","signatures":[{"sig":"MEUCIQDbVVOgJ2AFuCVIjY6JQNrOgVGszOpaFB78UaY9Gs0WsAIgPqN7r+90fY/cZqh4yMK35fMO1FDgfhutcp56waunshw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2577476},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"30d0941ffc6166adc70432d18ebbf63c0b3e5d79","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","actor":{"name":"mattheworiordan","type":"user","email":"matthew.oriordan@gmail.com"},"email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0-alpha.3_1751621223672_0.25584436047980885","host":"s3://npm-registry-packages-npm-production"}},"0.9.0-alpha.4":{"name":"@ably/cli","version":"0.9.0-alpha.4","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.9.0-alpha.4","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"f73c792ce6f2a7192186f553514962a7d7d81a71","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.9.0-alpha.4.tgz","fileCount":389,"integrity":"sha512-TtpQTgydxnCdRFDU17qu5umXTJGHv+1V9RnwMjJyiHCxP9H0CVbXNmx+Xt+G3PXOfm5cJplIZNx6B8UYlMVL0A==","signatures":[{"sig":"MEUCIFGXp8hZlnuvq/qwdOMFENlkIFrC22TSLXtyWpX7bH+JAiEAqbeOKEW+rJydiEYRoqwe/xSH9+TiuCTECwLuO1W/Bak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2580567},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"21f9c909f974e1bd0d8e992027fda5733183de86","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"mattheworiordan","actor":{"name":"mattheworiordan","type":"user","email":"matthew.oriordan@gmail.com"},"email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat, Spaces and the Control API","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0-alpha.4_1751800230405_0.32469928869862974","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@ably/cli","version":"0.9.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.9.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"108a4d1b7822c3b060cb4d1e02c6520be7b06065","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.9.0.tgz","fileCount":389,"integrity":"sha512-DppncofVOKRBxxyQFXjiXu5j6dZ3J+mEfKZpY2rvbyUU+W1lv3RfOlvNsrsLD8+dvgUjWVizr9/OF0hHrSk4Yg==","signatures":[{"sig":"MEUCIANIOocU5lpl2/7R9VYpJ0i8Vx3m3D49lnEsu5Xv4thYAiEA6+q/jZHUF9ZSeKpyMpMxjHZq+cv0LsJfc1na5zEnHT0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2574348},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.9.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","actor":{"name":"ably-realtime","type":"user","email":"account.owners@ably.com"},"email":"account.owners@ably.com"},"_resolved":"/tmp/38ba507923e7dab72965ec9088b997a8/ably-cli-0.9.0.tgz","_integrity":"sha512-DppncofVOKRBxxyQFXjiXu5j6dZ3J+mEfKZpY2rvbyUU+W1lv3RfOlvNsrsLD8+dvgUjWVizr9/OF0hHrSk4Yg==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.16.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.9.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.7.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.9.0_1751928897538_0.597121713199416","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@ably/cli","version":"0.10.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.10.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"dac72be63b061954815831cec87e62bdefdf6c6c","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.10.0.tgz","fileCount":389,"integrity":"sha512-NIc89jedC/POfmXK6EJQkSCbATRp403ncAehFbGgdG/XGwtl8JOrUWqoZm7wEY9MAh2O+rI4kCRoKnsD35CMjA==","signatures":[{"sig":"MEUCIDf7vTSCsK1K/26kJL0ccPng/2oOT6Ys51FKDFpTclyiAiEA4IKoAACabkKbk6wSdJn7bd18gygrpKApsYSsnJErcWI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2642307},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.10.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:coverage:report":"nyc report --reporter=html --reporter=text"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/1feab65b98573b665c438344882b6703/ably-cli-0.10.0.tgz","_integrity":"sha512-NIc89jedC/POfmXK6EJQkSCbATRp403ncAehFbGgdG/XGwtl8JOrUWqoZm7wEY9MAh2O+rI4kCRoKnsD35CMjA==","repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.17.1","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.11.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.10.0_1753367772165_0.5020344316175387","host":"s3://npm-registry-packages-npm-production"}},"0.11.0-beta.1":{"name":"@ably/cli","version":"0.11.0-beta.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.11.0-beta.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/cli#readme","bugs":{"url":"https://github.com/ably/cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"fcb877c23313c8d93b4c8574263aca36ea0d1966","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.11.0-beta.1.tgz","fileCount":389,"integrity":"sha512-UKWe58wljNVIYDcfd/p7sSievLI5GLH2V+RLr3ZmD7shVjsTpdmhV0nZYizaS1zYx0ldmCEFoh1ijx6SCCKLNw==","signatures":[{"sig":"MEUCIBBIMpac6EaSfr8tgnwiKe3HekryzI+tbDar2SY/VnQvAiEAsd8L1OQEa6X6V1aWw0v/hDIYF6f2Kvm0utgekrXTACk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2655803},"main":"dist/index.js","pnpm":{"overrides":{"tar-fs":"2.1.3","brace-expansion@1":"1.1.12","brace-expansion@2":"2.0.2"}},"type":"module","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"gitHead":"4c81afe870751435aa7c02facf7d4908ecf1865d","scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","prepack":"pnpm run build && ([ -f node_modules/.bin/oclif ] && node_modules/.bin/oclif manifest || echo 'Skipping oclif commands in production')","prepare":"pnpm run build && CI=true ABLY_INTERACTIVE=false oclif manifest","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","postpack":"rm -f oclif.manifest.json","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},"repository":{"url":"git+https://github.com/ably/cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.11.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.11.0-beta.1_1753967060703_0.2800015807289773","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@ably/cli","version":"0.11.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.11.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"cdb53b51187b065c81a937503ade38052979512d","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.11.0.tgz","fileCount":389,"integrity":"sha512-aFH1WuxuOSd/iXtvvVmO58bQGdKHhiEF5qe1/UjBXBoQONPGGX0cbGyOx67Tbw6/qFDlMVX6AbWt9Bw88aU4+Q==","signatures":[{"sig":"MEUCIQD9wIHUWuaYisKaH/wtQ/ytJfAUCZEDx+uaTyfz/pJGWQIgGuIXLYVlqVvKo4jdu+rpeVj6sttkHq+ePd041J93EwU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2656957},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.11.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/4a9b20193e814cb5c545189bbdcc07a0/ably-cli-0.11.0.tgz","_integrity":"sha512-aFH1WuxuOSd/iXtvvVmO58bQGdKHhiEF5qe1/UjBXBoQONPGGX0cbGyOx67Tbw6/qFDlMVX6AbWt9Bw88aU4+Q==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.3","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.18.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.11.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.24.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.12","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.30.1","@typescript-eslint/eslint-plugin":"^8.30.1","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.11.0_1756220690466_0.8452653871800713","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@ably/cli","version":"0.12.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.12.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"ef855e58d047e8693ed278f9a490f5e75a7556ae","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.12.0.tgz","fileCount":389,"integrity":"sha512-xSvi1jxxEshVJQZ02ege2ghve8hFZPk8RmyTn7VBZJK1rUVsVIr4m/a4EdVJTfePqSc8Rb3K6wPVpXq3wRBu/Q==","signatures":[{"sig":"MEQCIASnURGQL6Bscb7Ba1tVr1kp5Aa3E+wVN0WUFgkNwvWOAiB062Klohm+arZaBZsH+SSGKMfUCGzviUoz4adhymc8iw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2661025},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.12.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/32e913bc21db0c77b5992daba46282d3/ably-cli-0.12.0.tgz","_integrity":"sha512-xSvi1jxxEshVJQZ02ege2ghve8hFZPk8RmyTn7VBZJK1rUVsVIr4m/a4EdVJTfePqSc8Rb3K6wPVpXq3wRBu/Q==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.3","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.18.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.11.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.34.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.12.0_1756680780482_0.9551006886651008","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@ably/cli","version":"0.13.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.13.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"e793164c32dbe285aae4a4dbe44b98a0727362af","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.13.0.tgz","fileCount":389,"integrity":"sha512-GM94eQsK76EdLds9Lh25qfK5UxTws3+uj294u8e0/Ha0PlRwbzB9mg/baqVh3kxf+WDqQNe6q58Ot+ZrepYedg==","signatures":[{"sig":"MEQCIFX27PsMR0FCS9Dd3gsUSQVJ7S4ydL5tSWzKg/jyiAaCAiAYjrlhua8I95hlxS+S6CVvxQVvT4ZA8PtC0NCuhhf1cA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2666526},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.13.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/714b6dc2ab3ef879344cd9d27031d5ef/ably-cli-0.13.0.tgz","_integrity":"sha512-GM94eQsK76EdLds9Lh25qfK5UxTws3+uj294u8e0/Ha0PlRwbzB9mg/baqVh3kxf+WDqQNe6q58Ot+ZrepYedg==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.3","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.19.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.11.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.34.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.0_1757500401696_0.7157385344818332","host":"s3://npm-registry-packages-npm-production"}},"0.13.1":{"name":"@ably/cli","version":"0.13.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.13.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"62c8d6e5bb30ab3a104453151ffcc64b8fee6787","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.13.1.tgz","fileCount":389,"integrity":"sha512-6dXXuPVDfOMiz34+4Y2CKYvX9w6jfkSU7dW5OV15oj7YJZ003ARTq+yKexoq3Nxdp1mcAfCvJvwg4kNS5Yd9bg==","signatures":[{"sig":"MEUCIQDXcyk19MXJ81jufuP59Hmr77E6lnzEtpGfhEH8bMxB2AIgSFxKQ0FihTyfd+EVEPcBqC9rZuayxr5jPEC8T2nE/Y4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2673390},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.13.1.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"hingasellu","email":"hingasellu@gmail.com"},"_resolved":"/private/var/folders/g8/cy5k_8gx3dj7yzr2vbf8clbr0000gp/T/37b239238b73a0774150b89b48fa954b/ably-cli-0.13.1.tgz","_integrity":"sha512-6dXXuPVDfOMiz34+4Y2CKYvX9w6jfkSU7dW5OV15oj7YJZ003ARTq+yKexoq3Nxdp1mcAfCvJvwg4kNS5Yd9bg==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.14.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^0.13.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.34.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.13.1_1758726469983_0.30041261662741525","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@ably/cli","version":"0.14.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.14.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"8a45449d82f738eb94fdab6631eb9fa74ea683a7","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.14.0.tgz","fileCount":389,"integrity":"sha512-YrIDUBmIMD2viOJwhI96iYqyl/9PMw9Zshv4AqIYcxJWNJdpgnR2BQHA7W31FLGOuNPdKt/TxLNUisTCNqs2hg==","signatures":[{"sig":"MEUCIGuWzVjk6ywHuQV+Tx4/PpczV34n5Z2dijBvwixn3csUAiEAmIb0oqp8nH9H4IBIjuS3GUKPFvEP6fczSXT364YAHEs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2673252},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.14.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && pnpm link . && ably","lint":"eslint . --ext .ts","test":"./scripts/run-all-tests.sh","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:all":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:cli":"./scripts/run-tests.sh \"test/**/*.test.ts\" --timeout 600000","test:e2e":"./scripts/run-tests.sh \"test/e2e/**/*.test.ts\" --timeout 300000","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"./scripts/run-tests.sh \"test/unit/**/*.test.ts\" --timeout 60000","pre-commit":"pnpm validate","preversion":"pnpm run prepare","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:coverage":"nyc --reporter=html --reporter=text --reporter=lcov pnpm test:unit && pnpm test:integration","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"./scripts/run-tests.sh \"test/e2e/core/basic-cli*.test.ts\" --timeout 60000","test:e2e:rooms":"./scripts/run-tests.sh \"test/e2e/rooms/*.test.ts\" --timeout 300000","test:e2e:spaces":"./scripts/run-tests.sh \"test/e2e/spaces/*.test.ts\" --timeout 300000","test:playwright":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:e2e:control":"./scripts/run-tests.sh \"test/e2e/control/*.test.ts\" --timeout 180000","test:e2e:web-cli":"./scripts/run-tests.sh \"test/e2e/web-cli/*.test.ts\" --timeout 120000","test:integration":"./scripts/run-tests.sh \"test/integration/**/*.test.ts\" --timeout 120000","test:e2e:channels":"./scripts/run-tests.sh \"test/e2e/channels/*.test.ts\" --timeout 180000","test:coverage:unit":"nyc --reporter=html --reporter=text pnpm test:unit","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage:check":"nyc check-coverage --lines 75 --functions 75 --branches 65 --statements 75","test:e2e:web-cli:ui":"./scripts/test-web-cli-parallel.sh ui","test:coverage:report":"nyc report --reporter=html --reporter=text","test:e2e:web-cli:auth":"./scripts/test-web-cli-parallel.sh auth","test:e2e:web-cli:local":"./scripts/test-web-cli-local-server.sh","test:e2e:web-cli:session":"./scripts/test-web-cli-parallel.sh session","test:e2e:web-cli:parallel":"./scripts/test-web-cli-parallel.sh all"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/ff8c40ff9e833b489e8df35b56f63bbc/ably-cli-0.14.0.tgz","_integrity":"sha512-YrIDUBmIMD2viOJwhI96iYqyl/9PMw9Zshv4AqIYcxJWNJdpgnR2BQHA7W31FLGOuNPdKt/TxLNUisTCNqs2hg==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.3","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^1.0.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"nyc":"^17.1.0","shx":"^0.4","chai":"^4.4.1","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","mocha":"^11","oclif":"^4.2.10","serve":"^14.2.4","sinon":"^18.0.0","dotenv":"^16.5.0","eslint":"^9.34.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","playwright":"^1.52.0","sinon-chai":"^3.7.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^2.5.5","@types/chai":"^4.3.11","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/mocha":"^10.0.10","@types/react":"^18.3.20","@types/sinon":"^17.0.3","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/sinon-chai":"^4.0.0","@types/jsonwebtoken":"^9.0.7","eslint-config-oclif":"^6.0.44","eslint-plugin-mocha":"^10.5.0","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0","@istanbuljs/nyc-config-typescript":"^1.0.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.14.0_1761237079714_0.8450462009334898","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@ably/cli","version":"0.15.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.15.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"8d4495e5b8f414a3730a2ecfb0804addfeb6ce40","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.15.0.tgz","fileCount":397,"integrity":"sha512-jBFLPoAghcdWMg/61XF7gGqPBenj+U2fQu7fqjTO1/cM+g85Qv7c9X6kseY06FNr0S9a/t4vmtXvIRkwlMEgww==","signatures":[{"sig":"MEUCIGPV9pzFKofX9qsJyhe/9ZM9dLhqOcab1ZEZXk7EtfvfAiEAsXVRiBdHlKmh3om92dxb60cQXcoaEomfQ06+jDjXiH4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2648618},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.15.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/7064d577b412eb73d3efacf70294ca5e/ably-cli-0.15.0.tgz","_integrity":"sha512-jBFLPoAghcdWMg/61XF7gGqPBenj+U2fQu7fqjTO1/cM+g85Qv7c9X6kseY06FNr0S9a/t4vmtXvIRkwlMEgww==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.21.1","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.10.0","open":"^10.1.0","toml":"^3.0.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","@ably/chat":"^1.0.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@xterm/addon-web-links":"^0.11.0","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","oclif":"^4.2.10","serve":"^14.2.4","dotenv":"^16.5.0","eslint":"^9.34.0","vitest":"^4.0.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","@vitest/ui":"^4.0.0","playwright":"^1.52.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^4.0.0","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/react":"^18.3.20","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.7","@vitest/coverage-v8":"^4.0.0","eslint-config-oclif":"^6.0.44","@vitest/eslint-plugin":"^1.5","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.15.0_1764840254872_0.7115405206800105","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@ably/cli","version":"0.16.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.16.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"e02c9c9febb207d88954cd32dedb1a0a1d1e86f3","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.16.0.tgz","fileCount":385,"integrity":"sha512-tE4aWH+iCKjZ1bSJlgVP1ANzRZ/xHKzBtm33Uxiee5e6gc2Bd+be2SZW3q1rSF6MBnuEzL+pv/WsVoiBwhqpMA==","signatures":[{"sig":"MEUCIQDQDB5yBhudOeJbEoD+iiHjjLCxT169xo5wUGWNDjF5rwIgQ21Vtl9p78Dv0PYrhnw6GyxVDKImZzNBlrgvc3fcKVk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2522274},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.16.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/a1048d24a847e31e0ebfc3a20dc54a12/ably-cli-0.16.0.tgz","_integrity":"sha512-tE4aWH+iCKjZ1bSJlgVP1ANzRZ/xHKzBtm33Uxiee5e6gc2Bd+be2SZW3q1rSF6MBnuEzL+pv/WsVoiBwhqpMA==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.21.1","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.14.0","open":"^10.1.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","smol-toml":"^1.5.2","@ably/chat":"^1.0.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@xterm/addon-web-links":"^0.11.0","@modelcontextprotocol/sdk":"^1.8.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","oclif":"^4.2.10","serve":"^14.2.4","dotenv":"^16.5.0","eslint":"^9.34.0","vitest":"^4.0.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","@vitest/ui":"^4.0.0","playwright":"^1.52.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^4.0.0","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/react":"^18.3.20","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.7","@vitest/coverage-v8":"^4.0.0","eslint-config-oclif":"^6.0.44","@vitest/eslint-plugin":"^1.5","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.16.0_1768906958141_0.12745664270337564","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@ably/cli","version":"0.17.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@0.17.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"hingasellu","email":"hingasellu@gmail.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"227ae22f264108ae95def5b5bdb92326a0c77072","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-0.17.0.tgz","fileCount":401,"integrity":"sha512-ntORwBDovITa1PotNOLISHUqnWdAjylbXwdpqhub4COMlcS1mRFhBIEN4MilP8YEO6dZj8MITcmYoML2KDwxKA==","signatures":[{"sig":"MEUCIQDjTUFCdbMfQM9OTQAYvraMoAdEFEIrLWceIADtI0TdnAIgY2ffdQRkeDJmz/NgYq3MJ245/WMn9rXrAN+o7AaO/BY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1974824},"main":"dist/index.js","type":"module","_from":"file:ably-cli-0.17.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","version":"oclif readme && git add README.md","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/6b6df9cf863e6eba4b7e9c0023cf28ef/ably-cli-0.17.0.tgz","_integrity":"sha512-ntORwBDovITa1PotNOLISHUqnWdAjylbXwdpqhub4COMlcS1mRFhBIEN4MilP8YEO6dZj8MITcmYoML2KDwxKA==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.4","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.22.0","dependencies":{"ws":"^8.16.0","ora":"^8.2.0","zod":"^3.24.2","ably":"^2.14.0","open":"^10.1.0","chalk":"5","react":"^18.3.1","inquirer":"^9.2.16","react-dom":"^18.3.1","smol-toml":"^1.5.2","@ably/chat":"^1.0.0","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.2.10","@ably/spaces":"^0.4.0","@xterm/xterm":"^5.5.0","jsonwebtoken":"^9.0.2","@xterm/addon-fit":"^0.10.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.1.3","@xterm/addon-web-links":"^0.11.0","@oclif/plugin-autocomplete":"^3.2.30","@oclif/plugin-warn-if-update-available":"^3.1.41"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.3","uuid":"^11.1.0","execa":"^9.5.2","oclif":"^4.2.10","serve":"^14.2.4","dotenv":"^16.5.0","eslint":"^9.34.0","vitest":"^4.0.0","globals":"^15.15.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.0","get-port":"^7.1.0","node-pty":"^1.0.0","prettier":"^3.5.3","@types/ws":"^8.5.11","@eslint/js":"^9.21.0","@vitest/ui":"^4.0.0","playwright":"^1.52.0","strip-ansi":"^7.1.0","typescript":"^5.8.2","@oclif/test":"^4.0.0","@types/node":"^20.10.0","@types/uuid":"^10.0.0","http-server":"^14.1.1","@types/react":"^18.3.20","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.7","eslint-plugin-n":"^17.17.0","@types/react-dom":"^18.3.5","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.7","@vitest/coverage-v8":"^4.0.0","eslint-config-oclif":"^6.0.44","@vitest/eslint-plugin":"^1.5","eslint-plugin-unicorn":"^58.0.0","eslint-config-prettier":"^10.1.2","eslint-plugin-prettier":"^5.2.6","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.41.0","@typescript-eslint/eslint-plugin":"^8.41.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.17.0_1773052382578_0.8359524206587727","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@ably/cli","version":"1.0.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@1.0.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"2abdcb5b84e913ebb911e8f207160a0dabb23c88","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.0.0.tgz","fileCount":720,"integrity":"sha512-+c8pvtoIw3wKukKx73xw5cd1vbcU5N+7OBppV/7g2zwbxRir23HK2JaLMDLKRAsK3+8gAJsQcEc8Du3JTonq7Q==","signatures":[{"sig":"MEQCIAznzbiKfq6Pwi/xY/aSbPkS3/btUiuC2hzXV8uqIFf5AiBAeUhOOJcUd0DH/U6pgQ+MmAM4SLbsg9h/4B11CJ7zZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3113281},"main":"dist/index.js","type":"module","_from":"file:ably-cli-1.0.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","test:tty":"VITEST_TTY=1 vitest run --project tty","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/30a8cf7bf65286896ff7cdde2a26cb39/ably-cli-1.0.0.tgz","_integrity":"sha512-+c8pvtoIw3wKukKx73xw5cd1vbcU5N+7OBppV/7g2zwbxRir23HK2JaLMDLKRAsK3+8gAJsQcEc8Du3JTonq7Q==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.7","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ws":"^8.20.0","ora":"^9.3.0","zod":"^3.25.76","ably":"^2.21.0","open":"^11.0.0","chalk":"^5.6.2","react":"^19.2.5","slugify":"^1.6.9","inquirer":"^9.3.8","react-dom":"^19.2.5","smol-toml":"^1.6.1","@ably/chat":"^1.3.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.10.5","@ably/spaces":"^0.5.2","@xterm/xterm":"^6.0.0","jsonwebtoken":"^9.0.3","@xterm/addon-fit":"^0.11.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^5.5.0","@xterm/addon-web-links":"^0.12.0","@oclif/plugin-autocomplete":"^3.2.45","@oclif/plugin-warn-if-update-available":"^3.1.60"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.12","execa":"^9.6.1","oclif":"^4.22.98","serve":"^14.2.6","dotenv":"^17.4.2","eslint":"^10.2.0","vitest":"^4.1.4","globals":"^17.5.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.4","get-port":"^7.2.0","node-pty":"^1.1.0","prettier":"^3.8.3","@types/ws":"^8.5.11","@eslint/js":"^10.0.1","@vitest/ui":"^4.1.4","playwright":"^1.59.1","strip-ansi":"^7.2.0","typescript":"^5.9.3","@oclif/test":"^4.1.18","@types/node":"^25.6.0","http-server":"^14.1.1","@types/react":"^19.2.14","@eslint/compat":"^2.0.5","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","eslint-plugin-n":"^17.24.0","@types/react-dom":"^19.2.3","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.10","@vitest/coverage-v8":"^4.1.4","@vitest/eslint-plugin":"^1.6.16","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.58.2","eslint-plugin-react-hooks":"^7.1.0","@typescript-eslint/eslint-plugin":"^8.58.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.0_1777638212224_0.5513150140670813","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@ably/cli","version":"1.1.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@1.1.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"5cd959c200f217f86b68d066b916899a74d1bc74","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.1.0.tgz","fileCount":753,"integrity":"sha512-QKjGLD1uPzYFujtOz1xL8vwYAbSzLdQZB2tGeqUD6jEOXTbUh59Lq6Sid92pzmoSSTL310VXPz/iYYEXSI9Rvw==","signatures":[{"sig":"MEQCIEsgM4KDzdgZUcTkq4QeNdHpf+TslrrjvihN/I5ry4XAAiAJ5icXLudg04BlmwchvBiCIEUv2HgjbdcR4IJCxMc7Tg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3233440},"main":"dist/index.js","type":"module","_from":"file:ably-cli-1.1.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","test:tty":"VITEST_TTY=1 vitest run --project tty","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/17ebe3833563eae477671452b42eb324/ably-cli-1.1.0.tgz","_integrity":"sha512-QKjGLD1uPzYFujtOz1xL8vwYAbSzLdQZB2tGeqUD6jEOXTbUh59Lq6Sid92pzmoSSTL310VXPz/iYYEXSI9Rvw==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.7","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ws":"^8.20.0","ora":"^9.4.0","tar":"^7.5.15","zod":"^3.25.76","ably":"^2.21.0","open":"^11.0.0","chalk":"^5.6.2","react":"^19.2.6","slugify":"^1.6.9","inquirer":"^9.3.8","sigstore":"^4.1.0","react-dom":"^19.2.6","smol-toml":"^1.6.1","@ably/chat":"^1.3.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.11.1","@ably/spaces":"^0.5.2","@xterm/xterm":"^6.0.0","jsonwebtoken":"^9.0.3","@xterm/addon-fit":"^0.11.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^8.4.2","@xterm/addon-web-links":"^0.12.0","@oclif/plugin-autocomplete":"^3.2.48","@oclif/plugin-warn-if-update-available":"^3.1.63"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.15","execa":"^9.6.1","oclif":"^4.22.98","serve":"^14.2.6","dotenv":"^17.4.2","eslint":"^10.3.0","vitest":"^4.1.5","globals":"^17.6.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.5","get-port":"^7.2.0","node-pty":"^1.1.0","prettier":"^3.8.3","@types/ws":"^8.5.11","@eslint/js":"^10.0.1","@vitest/ui":"^4.1.5","playwright":"^1.59.1","strip-ansi":"^7.2.0","typescript":"^5.9.3","@oclif/test":"^4.1.18","@types/node":"^25.6.2","http-server":"^14.1.1","@types/react":"^19.2.14","@eslint/compat":"^2.1.0","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","eslint-plugin-n":"^17.24.0","@types/react-dom":"^19.2.3","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.10","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.17","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.59.2","eslint-plugin-react-hooks":"^7.1.1","@typescript-eslint/eslint-plugin":"^8.59.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.1.0_1778603992340_0.6675899191547872","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@ably/cli","version":"1.1.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@1.1.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"6817e87826385ae41c8d9ce3d1e3b7f72d0df30b","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.1.1.tgz","fileCount":753,"integrity":"sha512-e2nuJm0Cy3SU5/n+tEoP4oV+UlKGj73SdjayfH1lmZgUGyqQ+8u4361YQKXtIJBhXnxGiZFqoXiBc+XpJTfjAA==","signatures":[{"sig":"MEUCIQCfNA/O89jzTfCuXTwIrGmhWdwVe+fWdySazKlNn3L6BwIgLRGeRXpILoQStfGFxONsup1O/X5bh8h3f709SLbc6DY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3244895},"main":"dist/index.js","type":"module","_from":"file:ably-cli-1.1.1.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","test:tty":"VITEST_TTY=1 vitest run --project tty","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/e9c26afcfde0d4e25fc52b7adda37826/ably-cli-1.1.1.tgz","_integrity":"sha512-e2nuJm0Cy3SU5/n+tEoP4oV+UlKGj73SdjayfH1lmZgUGyqQ+8u4361YQKXtIJBhXnxGiZFqoXiBc+XpJTfjAA==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.7","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ws":"^8.20.0","ora":"^9.4.0","tar":"^7.5.15","zod":"^3.25.76","ably":"^2.21.0","open":"^11.0.0","chalk":"^5.6.2","react":"^19.2.6","slugify":"^1.6.9","inquirer":"^9.3.8","sigstore":"^4.1.0","react-dom":"^19.2.6","smol-toml":"^1.6.1","@ably/chat":"^1.3.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.11.1","@ably/spaces":"^0.5.2","@xterm/xterm":"^6.0.0","jsonwebtoken":"^9.0.3","@xterm/addon-fit":"^0.11.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^8.4.2","@xterm/addon-web-links":"^0.12.0","@oclif/plugin-autocomplete":"^3.2.48","@oclif/plugin-warn-if-update-available":"^3.1.63"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.15","execa":"^9.6.1","oclif":"^4.22.98","serve":"^14.2.6","dotenv":"^17.4.2","eslint":"^10.3.0","vitest":"^4.1.5","globals":"^17.6.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.5","get-port":"^7.2.0","node-pty":"^1.1.0","prettier":"^3.8.3","@types/ws":"^8.5.11","@eslint/js":"^10.0.1","@vitest/ui":"^4.1.5","playwright":"^1.59.1","strip-ansi":"^7.2.0","typescript":"^5.9.3","@oclif/test":"^4.1.18","@types/node":"^25.6.2","http-server":"^14.1.1","@types/react":"^19.2.14","@eslint/compat":"^2.1.0","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","eslint-plugin-n":"^17.24.0","@types/react-dom":"^19.2.3","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.10","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.17","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.59.2","eslint-plugin-react-hooks":"^7.1.1","@typescript-eslint/eslint-plugin":"^8.59.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.1.1_1778670039986_0.594403569968468","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@ably/cli","version":"1.2.0","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@1.2.0","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js","ably-interactive":"bin/ably-interactive"},"dist":{"shasum":"fb9e36bafe687df66f49c3a156add597643ef225","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.2.0.tgz","fileCount":753,"integrity":"sha512-0pcimyaMSu4iRAV2PtQzRADCwkxAtdmAXG3jrSJQ/E2LyP3pcbSb9wE3mLk1BZz9h1Plxmve9RsidauHjvix+g==","signatures":[{"sig":"MEYCIQDcpwLC4//jXZSY9eJHBHDzvSveF51jmkyDInXFEj+TTwIhAKEufpMmAwsDvSeu3q4fYvOWdEpgce0PedPLgrmm2+yj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3247541},"main":"dist/index.js","type":"module","_from":"file:ably-cli-1.2.0.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","test:tty":"VITEST_TTY=1 vitest run --project tty","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/2c427827099b215266fe9e85112bd16f/ably-cli-1.2.0.tgz","_integrity":"sha512-0pcimyaMSu4iRAV2PtQzRADCwkxAtdmAXG3jrSJQ/E2LyP3pcbSb9wE3mLk1BZz9h1Plxmve9RsidauHjvix+g==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.8","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ws":"^8.20.0","ora":"^9.4.0","tar":"^7.5.15","zod":"^3.25.76","ably":"^2.21.0","open":"^11.0.0","chalk":"^5.6.2","react":"^19.2.6","slugify":"^1.6.9","inquirer":"^9.3.8","sigstore":"^4.1.0","react-dom":"^19.2.6","smol-toml":"^1.6.1","@ably/chat":"^1.3.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.11.1","@ably/spaces":"^0.5.2","@xterm/xterm":"^6.0.0","jsonwebtoken":"^9.0.3","@xterm/addon-fit":"^0.11.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^8.4.2","@xterm/addon-web-links":"^0.12.0","@oclif/plugin-autocomplete":"^3.2.48","@oclif/plugin-warn-if-update-available":"^3.1.63"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.15","execa":"^9.6.1","oclif":"^4.22.98","serve":"^14.2.6","dotenv":"^17.4.2","eslint":"^10.3.0","vitest":"^4.1.5","globals":"^17.6.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.5","get-port":"^7.2.0","node-pty":"^1.1.0","prettier":"^3.8.3","@types/ws":"^8.5.11","@eslint/js":"^10.0.1","@vitest/ui":"^4.1.5","playwright":"^1.59.1","strip-ansi":"^7.2.0","typescript":"^5.9.3","@oclif/test":"^4.1.18","@types/node":"^25.6.2","http-server":"^14.1.1","@types/react":"^19.2.14","@eslint/compat":"^2.1.0","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","eslint-plugin-n":"^17.24.0","@types/react-dom":"^19.2.3","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.10","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.17","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.59.2","eslint-plugin-react-hooks":"^7.1.1","@typescript-eslint/eslint-plugin":"^8.59.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.2.0_1781270149758_0.09152547793576438","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@ably/cli","version":"1.2.1","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","_id":"@ably/cli@1.2.1","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"homepage":"https://github.com/ably/ably-cli#readme","bugs":{"url":"https://github.com/ably/ably-cli/issues"},"bin":{"ably":"bin/run.js"},"dist":{"shasum":"99be9789931fd2fa20a532ca1accc551135d7f2a","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.2.1.tgz","fileCount":751,"integrity":"sha512-/9MF0XDbUwYzclQ+ulEHUVNrMtOroV0cRoMZXzJhH2Y/5HVILhGKBOriqDRHP/uw/VHXnGr24NJsnS4XQkDP+g==","signatures":[{"sig":"MEQCIAJxpn/rIo1oTjqw/eh8GHe8IY34bqOkLG8mRor4rYzbAiBnhwyPdexq9dISRb8zX9IQf5p2skmLz7PgB6L0U1jBmw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3245142},"main":"dist/index.js","type":"module","_from":"file:ably-cli-1.2.1.tgz","oclif":{"bin":"ably","hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"theme":{"bin":"cyan","flag":"whiteBright","alias":"cyan","topic":"cyan","command":"cyan","version":"green","dollarSign":"green","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","commandSummary":"whiteBright","flagDefaultValue":"yellow"},"hidden":["aliases"],"dirname":"ably","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"commands":"./dist/src/commands","helpClass":"./dist/src/help.js","topicSeparator":" ","warn-if-update-available":{"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","registry":"https://registry.npmjs.org","frequency":1,"frequencyUnit":"days","timeoutInDays":7}},"types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"exports":{".":"./dist/index.js"},"scripts":{"cli":"bin/run.js","dev":"pnpm run build && node bin/run.js","lint":"eslint . --ext .ts","test":"vitest run","build":"shx rm -rf dist && tsc -b","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","pretest":"pnpm build && chmod +x bin/run.js","lint:fix":"eslint . --fix","test:e2e":"vitest run --project e2e","test:tty":"VITEST_TTY=1 vitest run --project tty","validate":"./scripts/pre-push-validation.sh","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","test:unit":"vitest run --project unit","pre-commit":"pnpm validate","preversion":"pnpm run prepare","test:hooks":"vitest run --project hooks","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","pretest:tty":"node scripts/ensure-node-pty-executable.mjs","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","test:unit:ui":"vitest --ui --project unit","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:coverage":"vitest run --coverage","test:e2e:auth":"vitest run --project e2e test/e2e/auth","build:examples":"pnpm -r --filter './examples/*' build","build:packages":"pnpm -r --filter './packages/*' build","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:playwright":"pnpm test:web-cli","test:unit:watch":"vitest --project unit","test:e2e:control":"vitest run --project e2e test/e2e/control","test:integration":"vitest run --project integration","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:coverage:unit":"vitest run --project unit --coverage","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:coverage:check":"vitest run --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:coverage:integration":"vitest run --project integration --coverage","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts"},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"_resolved":"/tmp/51c461829ab4285a909f1fbaad518956/ably-cli-1.2.1.tgz","_integrity":"sha512-/9MF0XDbUwYzclQ+ulEHUVNrMtOroV0cRoMZXzJhH2Y/5HVILhGKBOriqDRHP/uw/VHXnGr24NJsnS4XQkDP+g==","repository":{"url":"git+https://github.com/ably/ably-cli.git","type":"git"},"_npmVersion":"10.9.8","description":"Ably CLI for Pub/Sub, Chat and Spaces","directories":{},"_nodeVersion":"22.23.0","dependencies":{"ws":"^8.20.0","ora":"^9.4.0","tar":"^7.5.15","zod":"^3.25.76","ably":"^2.21.0","open":"^11.0.0","chalk":"^5.6.2","react":"^19.2.6","slugify":"^1.6.9","inquirer":"^9.3.8","sigstore":"^4.1.0","react-dom":"^19.2.6","smol-toml":"^1.6.1","@ably/chat":"^1.3.1","cli-table3":"^0.6.5","color-json":"^3.0.5","node-fetch":"^3.3.2","@oclif/core":"^4.11.1","@ably/spaces":"^0.5.2","@xterm/xterm":"^6.0.0","jsonwebtoken":"^9.0.3","@xterm/addon-fit":"^0.11.0","fast-levenshtein":"^3.0.0","@inquirer/prompts":"^8.4.2","@xterm/addon-web-links":"^0.12.0","@oclif/plugin-autocomplete":"^3.2.48","@oclif/plugin-warn-if-update-available":"^3.1.63"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4","nock":"^14.0.15","execa":"^9.6.1","oclif":"^4.22.98","serve":"^14.2.6","dotenv":"^17.4.2","eslint":"^10.3.0","vitest":"^4.1.5","globals":"^17.6.0","ts-node":"11.0.0-beta.1","fs-extra":"^11.3.5","get-port":"^7.2.0","node-pty":"^1.1.0","prettier":"^3.8.3","@types/ws":"^8.5.11","@eslint/js":"^10.0.1","@vitest/ui":"^4.1.5","playwright":"^1.59.1","strip-ansi":"^7.2.0","typescript":"^5.9.3","@oclif/test":"^4.1.18","@types/node":"^25.6.2","http-server":"^14.1.1","@types/react":"^19.2.14","@eslint/compat":"^2.1.0","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","eslint-plugin-n":"^17.24.0","@types/react-dom":"^19.2.3","@types/node-fetch":"^2.6.13","@types/jsonwebtoken":"^9.0.10","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.17","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","@types/fast-levenshtein":"^0.0.4","@typescript-eslint/parser":"^8.59.2","eslint-plugin-react-hooks":"^7.1.1","@typescript-eslint/eslint-plugin":"^8.59.2"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.2.1_1782835699160_0.26500281185489705","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@ably/cli","version":"1.3.0","description":"Ably CLI for Pub/Sub, Chat and Spaces","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js"},"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","bin":{"ably":"bin/run.js"},"type":"module","oclif":{"bin":"ably","dirname":"ably","commands":"./dist/src/commands","topicSeparator":" ","plugins":["@oclif/plugin-autocomplete","@oclif/plugin-warn-if-update-available"],"hooks":{"init":["./dist/src/hooks/init/alias-command","./dist/src/hooks/init/version-flag","./dist/src/hooks/init/patch-arg-names"],"command_not_found":"./dist/src/hooks/command_not_found/did-you-mean"},"hidden":["aliases"],"helpClass":"./dist/src/help.js","theme":{"alias":"cyan","bin":"cyan","command":"cyan","commandSummary":"whiteBright","dollarSign":"green","flag":"whiteBright","flagDefaultValue":"yellow","flagOptions":"yellow","flagRequired":"red","flagSeparator":"dim","sectionHeader":"bold","topic":"cyan","version":"green"},"warn-if-update-available":{"timeoutInDays":7,"message":"📦 Update available: <%= config.name %> <%= chalk.yellow(config.version) %> → <%= chalk.greenBright(latest) %>\nRun <%= chalk.cyan('npm install -g @ably/cli') %> to update.","frequency":1,"frequencyUnit":"days","registry":"https://registry.npmjs.org"}},"dependencies":{"@ably/chat":"^1.3.1","@ably/spaces":"^0.5.2","@inquirer/prompts":"^8.4.2","@oclif/core":"^4.11.1","@oclif/plugin-autocomplete":"^3.2.48","@oclif/plugin-warn-if-update-available":"^3.1.63","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0","@xterm/xterm":"^6.0.0","ably":"^2.21.0","chalk":"^5.6.2","cli-table3":"^0.6.5","color-json":"^3.0.5","fast-levenshtein":"^3.0.0","inquirer":"^9.3.8","jsonwebtoken":"^9.0.3","node-fetch":"^3.3.2","open":"^11.0.0","ora":"^9.4.0","react":"^19.2.6","react-dom":"^19.2.6","sigstore":"^4.1.0","slugify":"^1.6.9","smol-toml":"^1.6.1","tar":"^7.5.21","ws":"^8.20.0","zod":"^3.25.76"},"devDependencies":{"@eslint/compat":"^2.1.0","@eslint/js":"^10.0.1","@oclif/test":"^4.1.18","@types/fast-levenshtein":"^0.0.4","@types/fs-extra":"^11.0.4","@types/inquirer":"^9.0.9","@types/jsonwebtoken":"^9.0.10","@types/node":"^25.6.2","@types/node-fetch":"^2.6.13","@types/react":"^19.2.14","@types/react-dom":"^19.2.3","@types/ws":"^8.5.11","@typescript-eslint/eslint-plugin":"^8.59.2","@typescript-eslint/parser":"^8.59.2","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.17","@vitest/ui":"^4.1.5","dotenv":"^17.4.2","eslint":"^10.3.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.24.0","eslint-plugin-prettier":"^5.5.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-unicorn":"^64.0.0","execa":"^9.6.1","fs-extra":"^11.3.5","get-port":"^7.2.0","globals":"^17.6.0","http-server":"^14.1.1","nock":"^14.0.15","node-pty":"^1.1.0","oclif":"^4.22.98","playwright":"^1.59.1","prettier":"^3.8.3","serve":"^14.2.6","shx":"^0.4","strip-ansi":"^7.2.0","ts-node":"11.0.0-beta.1","typescript":"^5.9.3","vitest":"^4.1.5"},"engines":{"node":">=22.0.0"},"repository":{"type":"git","url":"git+https://github.com/ably/ably-cli.git"},"bugs":{"url":"https://github.com/ably/ably-cli/issues"},"homepage":"https://github.com/ably/ably-cli#readme","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"publishConfig":{"access":"public"},"scripts":{"build":"shx rm -rf dist && tsc -b","build:packages":"pnpm -r --filter './packages/*' build","build:examples":"pnpm -r --filter './examples/*' build","build:all":"pnpm build && pnpm build:packages && pnpm build:examples","clean":"rm -rf dist node_modules/.cache tsconfig.tsbuildinfo oclif.manifest.json","lint":"eslint . --ext .ts","lint:fix":"eslint . --fix","pretest":"pnpm build && chmod +x bin/run.js","test":"vitest run","test:unit":"vitest run --project unit","test:unit:watch":"vitest --project unit","test:unit:ui":"vitest --ui --project unit","test:integration":"vitest run --project integration","test:e2e":"vitest run --project e2e","test:e2e:basic":"vitest run --project e2e test/e2e/core/basic-cli","test:e2e:auth":"vitest run --project e2e test/e2e/auth","test:e2e:channels":"vitest run --project e2e test/e2e/channels","test:e2e:spaces":"vitest run --project e2e test/e2e/spaces","test:e2e:rooms":"vitest run --project e2e test/e2e/rooms","test:e2e:connections":"vitest run --project e2e test/e2e/connections","test:e2e:control":"vitest run --project e2e test/e2e/control","test:e2e:bench":"vitest run --project e2e test/e2e/bench","test:hooks":"vitest run --project hooks","pretest:tty":"node scripts/ensure-node-pty-executable.mjs","test:tty":"VITEST_TTY=1 vitest run --project tty","test:web-cli":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright.config.ts","test:web-cli:build":"pnpm build && pnpm --filter @ably/react-web-cli build && pnpm --filter ./examples/web-cli build","test:web-cli:parallel":"pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts","test:web-cli:parallel:auth":"TEST_GROUP=auth pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/authentication.test.ts test/e2e/web-cli/domain-scoped-auth.test.ts","test:web-cli:parallel:session":"TEST_GROUP=session pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/session-resume.test.ts test/e2e/web-cli/reconnection.test.ts test/e2e/web-cli/reconnection-diagnostic.test.ts","test:web-cli:parallel:ui":"TEST_GROUP=ui pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/terminal-ui.test.ts test/e2e/web-cli/web-cli.test.ts test/e2e/web-cli/prompt-integrity.test.ts","test:web-cli:parallel:rate-limit":"TEST_GROUP=rate-limit pnpm test:web-cli:build && playwright test --config test/e2e/web-cli/playwright-parallel.config.ts test/e2e/web-cli/z-rate-limit-trigger.test.ts","test:playwright":"pnpm test:web-cli","test:react-web-cli":"pnpm --filter @ably/react-web-cli test","test:coverage":"vitest run --coverage","test:coverage:unit":"vitest run --project unit --coverage","test:coverage:integration":"vitest run --project integration --coverage","test:coverage:report":"vitest run --coverage --reporter=html","test:coverage:check":"vitest run --coverage","postinstall":"[ \"$CI\" = \"true\" ] || (test -f ./dist/scripts/postinstall-welcome.js && node ./dist/scripts/postinstall-welcome.js || echo \"Skipping welcome script (not found)\")","preversion":"pnpm run prepare","generate-doc":"cp scripts/doc-template.md OCLIF_AUTOGENERATED_DOC.md && GENERATING_DOC=true NO_COLOR=1 oclif readme --readme-path OCLIF_AUTOGENERATED_DOC.md","validate":"./scripts/pre-push-validation.sh","pre-commit":"pnpm validate","ai-init":"echo 'AI Assistant Instructions:' && cat .claude/CLAUDE.md","cli":"bin/run.js","dev:examples":"pnpm build:packages && pnpm build:examples && cd examples/web-cli && pnpm dev","dev":"pnpm run build && node bin/run.js"},"_id":"@ably/cli@1.3.0","_integrity":"sha512-KOyvIWrfRec+CwxF4U/eOXQB9pIJhYh8r1Y/GNDzt+7U2udK7oZ+JJUwCGopGSPFXONKknVe6vL/8lvnapBsdQ==","_resolved":"/tmp/32e7a376ee40e759da13e8387aaf0062/ably-cli-1.3.0.tgz","_from":"file:ably-cli-1.3.0.tgz","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-KOyvIWrfRec+CwxF4U/eOXQB9pIJhYh8r1Y/GNDzt+7U2udK7oZ+JJUwCGopGSPFXONKknVe6vL/8lvnapBsdQ==","shasum":"39c093f796ed023b49bef02fb67ebec4a3c40df6","tarball":"https://registry.npmjs.org/@ably/cli/-/cli-1.3.0.tgz","fileCount":757,"unpackedSize":3387692,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ably%2fcli@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIC+Ow7meEFrbnQ0+7MHaiQ6vqIrlDIx5wAocxNzv8nqhAiEA0M/qoGerbXbsoUES0GEL0GaH4eDif4MKhedOHSVusVQ="}]},"_npmUser":{"name":"ably-realtime","email":"account.owners@ably.com"},"directories":{},"maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_1.3.0_1789058553115_0.5914523037321413"},"_hasShrinkwrap":false}},"time":{"created":"2025-03-24T02:13:20.871Z","modified":"2026-09-10T16:42:33.688Z","0.1.0":"2025-03-24T02:13:21.132Z","0.1.1":"2025-03-24T02:20:05.297Z","0.1.2":"2025-03-24T02:22:18.981Z","0.1.3":"2025-03-24T09:20:59.895Z","0.1.4":"2025-03-24T11:35:24.767Z","0.1.5":"2025-03-24T14:41:51.326Z","0.2.0":"2025-03-24T23:19:51.497Z","0.2.1":"2025-03-25T06:09:49.150Z","0.2.2":"2025-03-25T08:34:27.379Z","0.2.3":"2025-03-25T09:13:16.698Z","0.2.5":"2025-04-01T12:30:26.695Z","0.2.6":"2025-04-01T16:32:23.128Z","0.2.8":"2025-04-10T22:50:25.938Z","0.3.0":"2025-04-11T10:00:25.838Z","0.3.1":"2025-04-11T11:38:47.643Z","0.3.2":"2025-04-14T00:18:33.520Z","0.3.3":"2025-04-19T21:16:55.712Z","0.3.4":"2025-04-20T04:14:18.017Z","0.4.0":"2025-04-27T21:07:46.551Z","0.4.1-alpha.0":"2025-05-12T17:44:50.092Z","0.4.1-alpha.1":"2025-05-12T18:46:17.641Z","0.5.0":"2025-05-15T19:14:11.777Z","0.5.1":"2025-05-15T20:27:37.277Z","0.7.0":"2025-06-12T22:33:17.209Z","0.7.1":"2025-06-12T22:37:52.607Z","0.7.2":"2025-06-12T22:44:15.543Z","0.7.3":"2025-06-12T22:48:02.103Z","0.7.4":"2025-06-12T22:58:44.208Z","0.7.5":"2025-06-12T23:10:00.241Z","0.7.6":"2025-06-12T23:20:43.613Z","0.7.7":"2025-06-13T13:53:14.352Z","0.8.0":"2025-06-20T15:03:53.005Z","0.8.1":"2025-06-24T14:53:54.582Z","0.8.2":"2025-06-25T15:57:08.224Z","0.9.0-alpha.1":"2025-07-01T08:45:19.146Z","0.9.0-alpha.2":"2025-07-03T07:38:17.625Z","0.9.0-alpha.3":"2025-07-04T09:27:03.977Z","0.9.0-alpha.4":"2025-07-06T11:10:30.692Z","0.9.0":"2025-07-07T22:54:57.773Z","0.10.0":"2025-07-24T14:36:12.485Z","0.11.0-beta.1":"2025-07-31T13:04:20.975Z","0.11.0":"2025-08-26T15:04:50.746Z","0.12.0":"2025-08-31T22:53:00.766Z","0.13.0":"2025-09-10T10:33:21.907Z","0.13.1":"2025-09-24T15:07:50.225Z","0.14.0":"2025-10-23T16:31:19.912Z","0.15.0":"2025-12-04T09:24:15.075Z","0.16.0":"2026-01-20T11:02:38.376Z","0.17.0":"2026-03-09T10:33:02.734Z","1.0.0":"2026-05-01T12:23:32.383Z","1.1.0":"2026-05-12T16:39:52.576Z","1.1.1":"2026-05-13T11:00:40.183Z","1.2.0":"2026-06-12T13:15:50.007Z","1.2.1":"2026-06-30T16:08:19.350Z","1.3.0":"2026-09-10T16:42:33.326Z"},"bugs":{"url":"https://github.com/ably/ably-cli/issues"},"author":{"name":"Ably","email":"support@ably.com"},"license":"Apache-2.0","homepage":"https://github.com/ably/ably-cli#readme","keywords":["ably","cli","realtime","pubsub","chat","spaces"],"repository":{"type":"git","url":"git+https://github.com/ably/ably-cli.git"},"description":"Ably CLI for Pub/Sub, Chat and Spaces","maintainers":[{"name":"mschristensen","email":"mike@christensen.codes"},{"name":"ably-realtime","email":"account.owners@ably.com"},{"name":"simonw_ably","email":"simon.woolf@ably.com"},{"name":"owenpearson","email":"owen.pearson@ably.com"},{"name":"ttypic","email":"khokhlov.e.n@gmail.com"},{"name":"lawrence.forooghian.ably","email":"lawrence.forooghian@ably.com"},{"name":"andrii.bulat.ably","email":"andrii.bulat@ably.com"},{"name":"andytwf","email":"andyford993@gmail.com"},{"name":"splind06","email":"steven.lindsay@ably.com"},{"name":"zariel-ably","email":"chris.bannister@ably.com"},{"name":"mattheworiordan","email":"matthew.oriordan@gmail.com"},{"name":"vlad.velici.ably","email":"vlad.velici@ably.com"}],"readme":"![Ably CLI](images/cli-github.png)\n\n---\n\n# Ably CLI\n\n[![npm version](https://badge.fury.io/js/@ably%2Fcli.svg)](https://badge.fury.io/js/@ably%2Fcli)\n[![Node](https://img.shields.io/node/v/%40ably%2Fcli)](https://nodejs.org)\n[![License](https://img.shields.io/npm/l/%40ably%2Fcli)](https://github.com/ably/ably-cli/blob/main/LICENSE)\n\nThe Ably CLI brings the full power of Ably to your terminal. You can use it to manage your Ably account and its resources, and to explore Ably's APIs and features.\n\nThe Ably CLI interacts with:\n\n* The [Control API](https://ably.com/docs/platform/account/control-api) to manage your Ably account and applications.\n* [Pub/Sub](https://ably.com/docs/basics) to publish and subscribe to messages in realtime.\n* [Chat](https://ably.com/docs/chat) to send messages, display typing indicators and react to what's happening in a chat room.\n* [Spaces](https://ably.com/docs/spaces) to enter spaces and register member locations.\n\n## Installation\n\nThe Ably CLI is available as an NPM package. Install it using:\n\n```shell\nnpm install -g @ably/cli\n```\n\n## Usage\n\nFor a list of all available commands, run:\n\n```shell\nably help\n```\n\nVisit [the official Ably documentation](https://ably.com/docs/platform/tools/cli) for CLI login, features, and usage.\n\n## Contributing\n\nPlease see [`CONTRIBUTING.md`](CONTRIBUTING.md) for the development workflow, testing requirements, and release process.\n\nFor development standards and coding conventions, see [`AGENTS.md`](AGENTS.md).\n","readmeFilename":"README.md"}