{"_id":"bunny-tools","_rev":"68-cdb314a0a0a3a92490fa39bac8de6095","name":"bunny-tools","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.0-rc.2":{"name":"bunny-tools","version":"0.1.0-rc.2","license":"MIT","_id":"bunny-tools@0.1.0-rc.2","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"3d5065056cad913b9f8734ded3aa4097e6aa173a","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.2.tgz","fileCount":91,"integrity":"sha512-TY+SNK0aB8FkiuiqFROfUnmcQMA5rORAv2StWtpM2922EqH29PKHt3vKBxHubndOzcxxXbWZMcXYE48Zwlas1Q==","signatures":[{"sig":"MEUCIQCghZSEIOWu2myRL8gi674CMI3EPf01ukesJ3cBYCjw0wIgRWJESXCyCiOuTeeJCCecSj0nny8ScjYWJ1/1ggX1Wzo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220640},"type":"module","engines":{"node":">=20"},"gitHead":"6f7c8da9f49901e4f3901766768d9f4a49acd81e","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy + CDN purge + full resource management. Like firebase-tools, for Bunny.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.2_1777730951029_0.9624408633742205","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.3":{"name":"bunny-tools","version":"0.1.0-rc.3","license":"MIT","_id":"bunny-tools@0.1.0-rc.3","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"cea30042fba56f490cb2f389229d1201e586f2d5","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.3.tgz","fileCount":91,"integrity":"sha512-J6XHtFUvu5lP0yI+JMD3C8UwkvEI1CVyctMvTUjsk3tK6wwhlru/IT6DyP77sApqCB9RABTphqGvnx05nxAJjQ==","signatures":[{"sig":"MEYCIQDYTuJvWuIj5WwHixcz6vWsn8lmMwP2S+AalcV34B4CUgIhAIv0lgLMSrhaOA47Z5v9hni8kJZp6fXeR210U0IsNs04","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233243},"type":"module","engines":{"node":">=20"},"gitHead":"3a588d9134bb7c1f4bba308eed9beb4821bd148f","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy + CDN purge + full resource management. Like firebase-tools, for Bunny.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.3_1777732055115_0.8506832876477073","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.6":{"name":"bunny-tools","version":"0.1.0-rc.6","license":"MIT","_id":"bunny-tools@0.1.0-rc.6","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"5cae9bad0d883a1a294a367b6d26aa152fd293aa","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.6.tgz","fileCount":89,"integrity":"sha512-bzJVYzZZjKMD8FKu8x6OS8lfrb0o+uct2d/ft0Fl/9bja9jVMSxd9ddCVR7JeewGbInGJpqc4gwxSMx9bt3yvg==","signatures":[{"sig":"MEQCIFAqjwAXbrYie5tzVqTPjt5TwBdENnTxfSL8Zeq/NcMAAiBmIqoYGQ1rR/Z/sXma/nSsqkuE+davRO4H03jhjDCpbw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":228426},"type":"module","engines":{"node":">=20"},"gitHead":"0ce4287c571473024560f0e738279d1f555d87fd","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.6_1777735945004_0.0910168447189692","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.7":{"name":"bunny-tools","version":"0.1.0-rc.7","license":"MIT","_id":"bunny-tools@0.1.0-rc.7","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"ae9e799a8de8ac9737183f3f1d0c3197f60272c7","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.7.tgz","fileCount":89,"integrity":"sha512-tVDWYZg7+JfQcZUT6oSgEY+bAmaJplFBDM7jmc9mv3IxQa9DyV1VVdyyCeM+QAFzw6kk8HBFoinZK/wZx8bq6A==","signatures":[{"sig":"MEUCICLZqyNIduOLDEZR6iMosJ3U/Gab1C9y2pt0z5oipTChAiEAmkNbofH0+3WJnYD4OOwh/SKaTseCMfgoEhP8CQQ4G6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":229279},"type":"module","engines":{"node":">=20"},"gitHead":"fed27e5ca5582cb5fba02bbfd3657fbbb1f9c560","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.7_1777737917277_0.9188513741011155","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.8":{"name":"bunny-tools","version":"0.1.0-rc.8","license":"MIT","_id":"bunny-tools@0.1.0-rc.8","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"5207c7e1b2baf168b8994c70338887e169814ab6","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.8.tgz","fileCount":91,"integrity":"sha512-XXcFfpFqPyUS00H3EB4RLzhg4gXoimtfJkHB0BpWAmMga+xZNUNjjDdBMnJEnCE0i4QnzDFbnl4nH7Q7PmeKvg==","signatures":[{"sig":"MEQCIFwrg+DkhWRtFFkCby49LZYHAulSJ0GjtbTqzKPs+4AFAiBPs8pIdS1PW0i9YhqVCJ6YwkBNaDTeTy8qR2FTlTT9LQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":238144},"type":"module","engines":{"node":">=20"},"gitHead":"d0200a98ee0042b6349a48a7b967462d3d67881e","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.8_1777738531518_0.07826977028348314","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.9":{"name":"bunny-tools","version":"0.1.0-rc.9","license":"MIT","_id":"bunny-tools@0.1.0-rc.9","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"5d611356b7766534dc001a7a6b090d237af48cb9","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.9.tgz","fileCount":93,"integrity":"sha512-vCe0r7WeIbYEnSO0dawup8O89A9JnZppFXYuIMw32nh+z7WJJqMHj+98RLKwZzVZIF5evcrmYd853cjrlwaS7g==","signatures":[{"sig":"MEYCIQDeYLtCttoE/cEbJ8xUPXpLN+XsOtDqf7Nf6+GHl/DgVQIhAORzzks+E8oSciizFBntyx6fF6nE/K6p6qPhgRnlr5hl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":254052},"type":"module","engines":{"node":">=20"},"gitHead":"894557803d94802489d0e9336a8464be9afcb0f9","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.9_1777765566976_0.24955734790263762","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.10":{"name":"bunny-tools","version":"0.1.0-rc.10","license":"MIT","_id":"bunny-tools@0.1.0-rc.10","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"5b78de535aa41e0dcb8129c09991c6a5a4dbdd65","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.10.tgz","fileCount":93,"integrity":"sha512-Da6WKELjqcnfPmnNrg+bAEQzW8vkvHJnfIl5BFfO2dedPuP0h5p1MirCG+zehH+8us2vTK0XQlLIvS3XymTNNw==","signatures":[{"sig":"MEUCIQD1DzwU7Y6dOR2bP0M5MYLnPdhTc+aCQ9MTLiokp6mgRgIgIcrbugkRwKrNPbBh2/AaLwKo5t889JJjp12rcc0IajE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":259668},"type":"module","engines":{"node":">=20"},"gitHead":"dcf3e60e6f68939c35fa7c4a412cb5853bf0eae5","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.10_1777774273467_0.2360768560464077","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.12":{"name":"bunny-tools","version":"0.1.0-rc.12","license":"MIT","_id":"bunny-tools@0.1.0-rc.12","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"26b151ccc62ba84764339d1aa09fb7597223b302","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.12.tgz","fileCount":94,"integrity":"sha512-DiVuP/aCwqFlCW9tLQYJP0Ob+5cy52cm/BCVCHI+Ac70zhpf3t/Rmjq78IXkwIg4iUOxRFvdN46z4SUJPxub9Q==","signatures":[{"sig":"MEUCIQCC43WYid537qQe2D+ZYXey+rNzh3C5T79PAt75anM0AAIgC6kh/nEOivkxa4KX57/himz0ZXUW8tKQoQIEd5R+wjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":270449},"type":"module","engines":{"node":">=20"},"gitHead":"3bb3378c15223d4f1fc07fcf436fa11a42b19880","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^2.1.8","esbuild":"^0.24.0","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^2.1.8","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.12_1777785757522_0.800135586984722","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.13":{"name":"bunny-tools","version":"0.1.0-rc.13","license":"MIT","_id":"bunny-tools@0.1.0-rc.13","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"8dc5e7a1ac11e2d332adfd5acba231ea89e38ce6","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.13.tgz","fileCount":94,"integrity":"sha512-hywafab6KmoNAeVLW3suFn8Lwwgyv0JPtN6iISkVCvv+U1Wg13hMIe9p1D4roHhrgSER87drtyhMNQ7NpKBveQ==","signatures":[{"sig":"MEYCIQDIEbbjA3pXpsLntgMspo//TzRc6KlyRZ7gqIVVu/2HcAIhAJYTXcQof41boWzA9z/fHP7pPPa8T4ppruX0kx4x7F2C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":270423},"type":"module","engines":{"node":">=20"},"gitHead":"8fde71e6522bdc753d09e171a710923357f26528","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.13_1777785978042_0.8647151482097344","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.14":{"name":"bunny-tools","version":"0.1.0-rc.14","license":"MIT","_id":"bunny-tools@0.1.0-rc.14","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"028f1de88e47f27be13b168636547ef5135f1cca","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.14.tgz","fileCount":94,"integrity":"sha512-que8Hzh6RQ+z10bd+e60JpWbNuGm6Bf/DYJu6VJyhdGC/MCIJVd42vjH9a3H1t55eNYGFmdylnB6HhqrzpTo7w==","signatures":[{"sig":"MEUCIGyliRzM6KT70hvm+7/GdIzdpk7mGwKypM9jHx2kDd2NAiEAh0iGA13V4OiMMPesRZMSLOSw3Z5JAN76eEYN4RDdKYo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":271550},"type":"module","engines":{"node":">=20"},"gitHead":"4cabbe2eb4e370d7784b348a84a80e62499e6cdc","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.14_1777787798446_0.5121906805923178","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.15":{"name":"bunny-tools","version":"0.1.0-rc.15","license":"MIT","_id":"bunny-tools@0.1.0-rc.15","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"daf0883acd10f97da791d6b5906ed20b10ed5aaf","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.15.tgz","fileCount":94,"integrity":"sha512-NFKTxau14NblRnuOuMwK7QTx5FGR57WlZ1AtfMo6PwssYrH7Q9gfyDsABx/qfMl7GkaLSO6/TVwmahe3+lPhog==","signatures":[{"sig":"MEUCIQDFNcO9OU1hzyua/wZAeh1ODVC3sTJBAU1POAv307ByEAIgXmNIQn60gwqzL0QVXRzOneBJxz2MwmNxKq4pgpVWC5o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":272370},"type":"module","engines":{"node":">=20"},"gitHead":"500f7387dbe7466278427851b690504b553ec35f","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.15_1777788273383_0.44857378177356955","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.16":{"name":"bunny-tools","version":"0.1.0-rc.16","license":"MIT","_id":"bunny-tools@0.1.0-rc.16","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"6ad022fcd112f67a743f95e221c3e6e55a426777","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.16.tgz","fileCount":94,"integrity":"sha512-YvZT+ocLewCcNqFe/vxz2odn/gNfE7Y6CH/6P/l8VsggCa8BGSPenho+9iAFrPdV4HytBOmq0+UEEuTJqV1A2Q==","signatures":[{"sig":"MEQCIAsf+NK5PutsOqW7n/OfIiRANZ1vSOzdLKxr+cSyewEsAiBqeyHJnksRzRrr7dlI7wQ+zolpHWj5HWCy3Lw+JXD7Gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":272825},"type":"module","engines":{"node":">=20"},"gitHead":"f45fffafd925786f9c8eed86214c918c0d08c939","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.16_1777788480787_0.22549414262789846","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.17":{"name":"bunny-tools","version":"0.1.0-rc.17","license":"MIT","_id":"bunny-tools@0.1.0-rc.17","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"baa8da9c23b5854b55e5e7baa939b546f212ec23","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.17.tgz","fileCount":94,"integrity":"sha512-XFrcAdRpzWAqC/aFbPXohkzEQUxaHPVtWfjH/PNpR7m0C3qY8HraiMLSht2WUu6ovpRmOG9EuBJcPSjwD4eChg==","signatures":[{"sig":"MEUCIQDjBXVVDF2dVOGVD2W+S+kIKEIWuM/sK3NJcakYGOSLVAIgLaMcol7d0EXbQNOIwMOHUyc9YiMJc7JrfWmzejl9Gnw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":273036},"type":"module","engines":{"node":">=20"},"gitHead":"92b3b3f1191e44999eff85402d015d914c407ff2","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.17_1777789453746_0.9606547614770986","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.18":{"name":"bunny-tools","version":"0.1.0-rc.18","license":"MIT","_id":"bunny-tools@0.1.0-rc.18","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"a4be9e2b671fac1e4b8574c82540ea2d2477454c","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.18.tgz","fileCount":94,"integrity":"sha512-Y1iVGSjartT7kKARbmeVOdx/ALxLnnvOVPn9eoLh1FKHLThgB9VrThUjT9BtYKypv7G0ca/C4UpZYSbJciZtMw==","signatures":[{"sig":"MEQCIElT1ovS8SrBRKa1WlovwrK7nhv+HK6w5KEE0QJshkPLAiAI1RqJGeKME66SdnD64XFTf4/wf4qc2jMQC6Bh/SyT1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":272882},"type":"module","engines":{"node":">=20"},"gitHead":"3148ce950b7cfc014c17fcd889f5c250b7bd6873","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.18_1777789696792_0.850139346657313","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.19":{"name":"bunny-tools","version":"0.1.0-rc.19","license":"MIT","_id":"bunny-tools@0.1.0-rc.19","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"8bed6dd1935ca30413f6c589ca49bac853409487","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.19.tgz","fileCount":97,"integrity":"sha512-ApJxzMgP2miyeACLaNyFqW2F99CqD0aoSMLfxNQwc49f2cq8i3WcNfZBgoCJQmv7QGnVOdLzRps/LaMQ/KYm0w==","signatures":[{"sig":"MEQCIA/y6j9Br6Ljr5/8owicsU3AJthsv4oMZMVLHQpuBBW1AiBsR8bAlbHZYZfaBcAm/jG+Ws6+5OhTCEFjRNXEKEXXSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":294443},"type":"module","engines":{"node":">=20"},"gitHead":"67f9e21046fcdb400feaeaa83fdde9fad6594604","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.19_1777790689154_0.20312125096639444","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.20":{"name":"bunny-tools","version":"0.1.0-rc.20","license":"MIT","_id":"bunny-tools@0.1.0-rc.20","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"c36cdefa5409adeb8b999de96cea06098e7d0ec1","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.20.tgz","fileCount":97,"integrity":"sha512-dPExtZB4srXzVpru7pPtXdqYWxpyk3RjnkwHqu6Hha8Iuyn1D7h6tUT+t3W5LPfLN+kc4hLlgNxgCxkA+p3V0w==","signatures":[{"sig":"MEQCICtysrQPBmnAtppHgTzkpXmXDKluU27pjW+FPwwORp9vAiAKXBvIpOY+ODGG9ySpwBf3qUabOJ3FNr3SGoi4mf6G/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":295362},"type":"module","engines":{"node":">=20"},"gitHead":"73d92c17eacee9d030dec2297a240aabbdd0291a","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.1.1","zod":"^3.23.8","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.21.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.23.5","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.19.2","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/node":"^20.16.10","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.18.2","@typescript-eslint/eslint-plugin":"^8.18.2"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.20_1777791763290_0.7241999233046246","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.21":{"name":"bunny-tools","version":"0.1.0-rc.21","license":"MIT","_id":"bunny-tools@0.1.0-rc.21","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"5fd10239f82771b0477d75d09ea6fbd1752c9fe1","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.21.tgz","fileCount":97,"integrity":"sha512-bDp4CeqxnL34h4sCVSfFRY78rKajbh+aGfhyNfed7MCGjM1fE6p8Ak644DQJex2wi3D9ZndZl63E4R4Zzb4w8g==","signatures":[{"sig":"MEUCIQCD23Xg2mGgjaZ6XmQldtEgDPVaQ/2QO79HBttqukOMOgIgBF1mEwqfJIj/row9IkHjfomwwqawtjWyv5SbwjaPm6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":294681},"type":"module","engines":{"node":">=20"},"gitHead":"bb3ec455b75ed4be2223ef1d39df6ab9dcefb833","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.21_1777792920844_0.8169831217754968","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.22":{"name":"bunny-tools","version":"0.1.0-rc.22","license":"MIT","_id":"bunny-tools@0.1.0-rc.22","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"cbd6e30473aaecc13fb5cdeae5304f062a3fb65a","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.22.tgz","fileCount":97,"integrity":"sha512-BS0EUoddW3dkgoblhYjOUqJHorm+n+tMzRKEAldG7frFxQezzDsTbR/mSxmt1zirZQ+f19ORhw/vQxrRMBkpJA==","signatures":[{"sig":"MEUCICiYgWWoMa91OJKDxChZR2ltr490eNlSMRmJPFHoKjvMAiEArHv4R0QQbQlxtgGy/jDRGc0kC1APuoA8YQ4xtNOEato=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.22","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":294991},"type":"module","engines":{"node":">=20"},"gitHead":"9accc63208679eaec27ea2f41cd13e03652d7763","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.22_1777793114792_0.7717677995025243","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.23":{"name":"bunny-tools","version":"0.1.0-rc.23","license":"MIT","_id":"bunny-tools@0.1.0-rc.23","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"f79bc27ecd960fed82987999f8ce3ccb6487a7d5","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.23.tgz","fileCount":97,"integrity":"sha512-PD+4SAtZrHKsL72+se0qUwBsLhrYNVxlrRGH/HLFbDDWdM2bm5/qb1tfZ6TiePNiBSggm+UTPB7XThK/ctUM0w==","signatures":[{"sig":"MEUCIGHJtJzvq3BuwwPWnf78JpPXonrB0nYgZKjFBGT94gblAiEAsnt5cA+MkkQ1pLYu90VZm1U1+SqZ9BGMLWUM5aUEEss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.23","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":295494},"type":"module","engines":{"node":">=20"},"gitHead":"df1f0db5abf33ef3b21ad21d91f319aa6c2b6675","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.23_1777794574380_0.6243277522552186","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.24":{"name":"bunny-tools","version":"0.1.0-rc.24","license":"MIT","_id":"bunny-tools@0.1.0-rc.24","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"8bd647f639e1661016eb4736643890a0f6bfb669","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.24.tgz","fileCount":97,"integrity":"sha512-uu69o9ioy5vK0nNim6LcUzvv5u96SQhThVbC7w8Enz04KEWkU3cd/zhnW0/IdbiK4MoyUBCVd0Zzvf2eQFfKyQ==","signatures":[{"sig":"MEUCIQDlmQSntzbnyYXArkmmfRBQuvYyt+Y6CKu/i7r3BU0N+AIge8bjF4KUwvUEUSFfS7Db4O4mKLIcWVbAy5S4Tu/St4E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.24","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":300005},"type":"module","engines":{"node":">=20"},"gitHead":"bfd1617635d7252694535a9e3cdde5ccd8bb4e66","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.24_1777796174059_0.5220790922344265","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.25":{"name":"bunny-tools","version":"0.1.0-rc.25","license":"MIT","_id":"bunny-tools@0.1.0-rc.25","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"e998fbb69594ea9c333344e9a606034609982840","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.25.tgz","fileCount":103,"integrity":"sha512-LrxFJaJCr0vidxavwYR6OfCI0P898TQ2pWBWee0kTTVatbXOAW9Ho6krhwYH+aT6LvzWrzvr3uEX88ZT4KA4uw==","signatures":[{"sig":"MEQCIFte/O1kZGvTftVgaBfFfQcYdoORUa78PXXintvqgInIAiBiS2pA3F70RfTHVLVXNSTmSdKKhLoKwO4wKb+ADnYwtA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":313238},"type":"module","engines":{"node":">=20"},"gitHead":"dc9e89ba3af5b3aabb6e627f680caefe5a13bd21","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.25_1777798126766_0.4900276190454982","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.26":{"name":"bunny-tools","version":"0.1.0-rc.26","license":"MIT","_id":"bunny-tools@0.1.0-rc.26","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"2d7a52717c426d68ca93224ab55da44485b744a6","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.26.tgz","fileCount":104,"integrity":"sha512-R2Zsjw22ZKY/o3GZ4tX07qrPwQZyORFPi3PSQqwA2W7Nh4gR/W8spjjQ9WUYSJo76JoU8A98YvpU6oKmtP6whg==","signatures":[{"sig":"MEQCIFt3OBKCUUzrhIWWuN2uecIzhVtY58ADpim1Bf6w5PPXAiBpt4QQMuBgt+xNCz/lXAxuoxJ7g3rf6UGCzu8DOjwqvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319700},"type":"module","engines":{"node":">=20"},"gitHead":"62cc747c67f610cd46f96614d6f528f11ce7433a","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.26_1777799091222_0.687101452570454","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.27":{"name":"bunny-tools","version":"0.1.0-rc.27","license":"MIT","_id":"bunny-tools@0.1.0-rc.27","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"cb67293cab3d530ae355acf58852f1b00a1876a5","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.27.tgz","fileCount":104,"integrity":"sha512-4DDdExOyOxMzLHk7GEYu9RDYJw5jRCJCMyg4q5/m1G2HPzyDG0vmqZOGXczNzwsSw3KoZE8u2z1eovUkCh1lJg==","signatures":[{"sig":"MEUCIBtDIvVl+jC8JcCmxZPuagDkQcAY5RFt1qdula1lCcHOAiEAjekGOyZTssgdB2FGOSK53QzaIneKLAc0gwoYCAMaAmk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":320166},"type":"module","engines":{"node":">=20"},"gitHead":"41f81e8546db6a3580b6fbc6b4ab444f52a11795","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.27_1777799834230_0.304327091951599","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.28":{"name":"bunny-tools","version":"0.1.0-rc.28","license":"MIT","_id":"bunny-tools@0.1.0-rc.28","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"814f8696bac30b0c0cb30cca046a558e180a446d","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.28.tgz","fileCount":104,"integrity":"sha512-QdJh7jv9Cp6PaXw1dkZQiU+FyFZbk/rmpx38Of9cSQGtv8FQGyXF8UgrOWDNqML5Gwzx3LXJ7WBM0Xs7tHKTsg==","signatures":[{"sig":"MEYCIQCeh/9LcZBEm+1bvYFY3i0M0O34XzV/I//Q3o3mPovvAQIhAN26cRNgfvXIgYug4eSYQ3Zmnnaboznv6BdxcrsfhI6m","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":320719},"type":"module","engines":{"node":">=20"},"gitHead":"71e0aba86e173d236ca493928fe3537c170f1837","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.28_1777800761435_0.8839234981563908","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.30":{"name":"bunny-tools","version":"0.1.0-rc.30","license":"MIT","_id":"bunny-tools@0.1.0-rc.30","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"69153d869f7fd86a8d2da65e83d5fdbdae780dc3","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.30.tgz","fileCount":104,"integrity":"sha512-lqzk+Mzy2SNt16fV/WBOebVmFkxrsioxPVhQ8k618ww/QWp0bRgman6AtN3k+K/2whJXFDsT+cf9czBJVCE74Q==","signatures":[{"sig":"MEUCIQD6FhMmPuK7jzj9N/29Mzq1j5gxlVcSR14Ku9YhvR02PwIgPF+rgUWy73+2p5zr4zRTciy0LapwY+KipFRfPR14q8g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322131},"type":"module","engines":{"node":">=20"},"gitHead":"9cd742db73264c45684213d1be4916c8e8b630d7","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.30_1777802307647_0.6264093282201357","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.31":{"name":"bunny-tools","version":"0.1.0-rc.31","license":"MIT","_id":"bunny-tools@0.1.0-rc.31","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"56cd0738e2e5329bf942e5b5ea826f94ae3c8174","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.31.tgz","fileCount":104,"integrity":"sha512-RpZbGXRL3sgYKE/6wR1ML2dHdwMHfY9LROsP7sYQelkbE3I10le54eq+hDzGtSXZKrml4wZ6IfDnBqnHmne+Vw==","signatures":[{"sig":"MEYCIQDtTnTNQ0t8VmsrrhHDl7uHQ3vQWXVpBDLQZToMqTCMfAIhAJocIkVV7pwAa5ePsIuzlFsfKOCeX0m16cCSlehsxcCS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319664},"type":"module","engines":{"node":">=20"},"gitHead":"69e5f0fec4e59d9e31d20f9cdaab70d8bbf0c7ca","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.31_1777805609798_0.3949210669632619","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.32":{"name":"bunny-tools","version":"0.1.0-rc.32","license":"MIT","_id":"bunny-tools@0.1.0-rc.32","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"2538d48d1b852e8bbac43c4c382597599a035bae","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.32.tgz","fileCount":104,"integrity":"sha512-yF/sUCUW8OA/STCWUDgsF578TlBCZW36Lxk2vryONTHAXbHH0+cG9FbexYNh0+Mz8DKMTaHF1go7FHhhh6aEMQ==","signatures":[{"sig":"MEUCIAjbu6Y2FiQNS75gQejQTMcGi/alNJGIWDKcgDg9/sGFAiEA20dY4ts2tu73MYRu5eoNe/YUtTf+98xE2EgcfqJWyyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":319664},"type":"module","engines":{"node":">=20"},"gitHead":"d3ac34de895967e23ab21d5a6f18b8a73029bf39","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.32_1777806129008_0.22826602978903066","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.33":{"name":"bunny-tools","version":"0.1.0-rc.33","license":"MIT","_id":"bunny-tools@0.1.0-rc.33","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"a4c52e0b826a83991c41e5a4714cb3230f005422","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.33.tgz","fileCount":105,"integrity":"sha512-1MZSncsApOUb5Oztzjovz+SvHEE1MHxtsltuwiF3wU0nkKugnU+7hmwNMsiI0pVIzQ9Wz+xIyNIhvoPS6Sdlzw==","signatures":[{"sig":"MEUCIG0BpLcALI90yxaT8Mp2gvNGXe8n5CwhwehBKd8yQrGBAiEAv/kdTcCImPMW0EpccnqboU2hng92VJVOTywk0tB9heY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328261},"type":"module","engines":{"node":">=20"},"gitHead":"213c21346f586d5913350c45ae5a3fd5715486dd","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.33_1777808123170_0.9403919562263314","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.34":{"name":"bunny-tools","version":"0.1.0-rc.34","license":"MIT","_id":"bunny-tools@0.1.0-rc.34","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"0546a9847a19c97e462f0101cd48fa203590d440","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.34.tgz","fileCount":110,"integrity":"sha512-wMXHF6RH9sfG4uXDqoqze4jXWk3jsQQhNOlojpdtLOOvtZ1SGjZj0PrfJXKu/dm+2AImZMnEbTlpTNGbkVARYQ==","signatures":[{"sig":"MEUCIQDay6JtG+BJG8xVObyitOuxK+QHYiyQK+DmUnq9QFjhfAIgG1IE52yxnYFcikxdMa0lB6FNWCm4BS4Euj0+vcH9QPg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":357080},"type":"module","engines":{"node":">=20"},"gitHead":"903abb10d6feb6e9b3157cdcf9a4a38d6db6cf67","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.34_1777809125350_0.871481421894442","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.38":{"name":"bunny-tools","version":"0.1.0-rc.38","license":"MIT","_id":"bunny-tools@0.1.0-rc.38","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"0e901bf3837a8905069cffd00b7bd57751a91891","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.38.tgz","fileCount":111,"integrity":"sha512-YsXNfrmFtAu24eIC62PJNJyMJ2S7h0rkffsAwXCOnG+TPSb3k2KNa3BkvEU5tSrAjsw8sdvh59tgqXJU4P6zwA==","signatures":[{"sig":"MEUCIQCxdvzIfa2jPkc+i19d5zlI0wxdAdDJq9h99WVH1f8xTwIgCQqc4sp9hzY8Aq1HbSncfXrxWl7nsSo9oMkqMckIy9A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":365812},"type":"module","engines":{"node":">=20"},"gitHead":"1f2597e2935a1f3b05d5b2e9032502e050519d3d","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"bytekcorp","email":"chien@bytek.org"},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"10.8.2","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.38_1777812834732_0.35760077004593116","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.39":{"name":"bunny-tools","version":"0.1.0-rc.39","license":"MIT","_id":"bunny-tools@0.1.0-rc.39","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"e4e09cbc7fabc22fe5632b045cc00b0c5156bd77","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.39.tgz","fileCount":106,"integrity":"sha512-pZ2Zp2LLK76OunCBsKLG6oZU2GvjcxOxjxBi2SopJy/TPZzcXCoaZaPJ5jlFAlZx+t0vdptt+5KlYoQSh0ye+Q==","signatures":[{"sig":"MEUCIHCL6m4FK192H822yQTceI20g51QITMHZg0EIyBQLE5GAiEAqtW2fnXfYyQCXF6APBt4J76sLclKU+xWN8dKPYPjWrk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.39","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":361282},"type":"module","engines":{"node":">=20"},"gitHead":"353deb7647f1199eff6b1c9e86657a46faeb9b05","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.39_1777813306357_0.729309681446416","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.40":{"name":"bunny-tools","version":"0.1.0-rc.40","license":"MIT","_id":"bunny-tools@0.1.0-rc.40","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"dced91fd4552633222a28cffd5e287ea4b095fd0","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.40.tgz","fileCount":106,"integrity":"sha512-BqeSfu/F609mY/Df0ZKm/2LOiT5wbZGKE4mk6xW+y9w2X3XVJKk4OQxPRrNqefsomMc0rmbxYe951oohJ9ckJg==","signatures":[{"sig":"MEYCIQCW2J5hUSJ8Sn7ScM/echc5A01v/fVCzBNmxhotTOzvSQIhAJhSrIkZ57kmbLtRwHON87y6AEx0ZETHtFtLDKCoaazo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.40","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":363710},"type":"module","engines":{"node":">=20"},"gitHead":"6ed528216ec475078857404b5f45c569eeda7ad6","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.40_1777815063739_0.3952063393886689","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.41":{"name":"bunny-tools","version":"0.1.0-rc.41","license":"MIT","_id":"bunny-tools@0.1.0-rc.41","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"afdb3a672f30a27c34df900ec66d2cd700e93165","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.41.tgz","fileCount":106,"integrity":"sha512-L0/kTIsqnITDCACbUFI4J8Yu0XQi8x7+FcVTCC3GiJfBi1bDOU57Gju2dNpRfCbTPO/aG+LsQp76gtNkZ1FLkQ==","signatures":[{"sig":"MEUCIQCa5lNrdqQRa8vQFb41TPS9DJtFNrXuHo+YITlZk4norAIgWIodk6/d06hMq/TO2XeQnlFGBOv1pEEbbDLbtPB6pQA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.41","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":363762},"type":"module","engines":{"node":">=20"},"gitHead":"98d8994cd8ffc84ea7bd8ca97cfd4ad5314abb07","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.41_1777815464733_0.9118689708184327","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.42":{"name":"bunny-tools","version":"0.1.0-rc.42","license":"MIT","_id":"bunny-tools@0.1.0-rc.42","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"a44d4157108fc74ab39caad9f0eb50e9da61702e","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.42.tgz","fileCount":106,"integrity":"sha512-KdxIwy7Vn2aLlTwkNrGEiyA+9WNUwagomITklzbxj6pPmqeZ6xxIRNBoILdG3Tcmdo0tofcZnWnEUzikZsMpzQ==","signatures":[{"sig":"MEYCIQDjMAr6Oo5N7wJnaMw7H9zhpCKMEmUS8zbX4tF6NMsFAgIhAKr0M0VfuDf12gz4SYO4jfK6+c40Fgw6HmCXuptPvKZX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.42","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":365788},"type":"module","engines":{"node":">=20"},"gitHead":"03ab94abbd169ed3f8e665c7d2cc1fc62372ad98","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.42_1777815662146_0.06551519242752368","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.43":{"name":"bunny-tools","version":"0.1.0-rc.43","license":"MIT","_id":"bunny-tools@0.1.0-rc.43","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"6c887429711a19ea412fb416f1821c9845f7da40","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.43.tgz","fileCount":106,"integrity":"sha512-dAfU4/0zoiZou4rwr93d5MVf4t0pUJT/oa2wh211ELQTTH6GHTuTzVkc8lEhBOgoweJNmYxM5CZcMT8wry3vgg==","signatures":[{"sig":"MEQCIGduqirtS+7jLLjrrz4/o/dDvoKsWAXCyn9OKLH1uhprAiAcx6IKoursl0z/Cz4scvoaDAXgzrGz1OxeBYd5fLZIQg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.43","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":365773},"type":"module","engines":{"node":">=20"},"gitHead":"032007632fd4a4213b41b0ac2296cef2b5c27c6a","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.43_1777816169027_0.8999594869345036","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.44":{"name":"bunny-tools","version":"0.1.0-rc.44","license":"MIT","_id":"bunny-tools@0.1.0-rc.44","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"96a044bca94e9fae46acdf8325d11e5230a8bcd2","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.44.tgz","fileCount":106,"integrity":"sha512-C5DcKRpaQndPWMdE7F0NFsr3stKNpIlFyRMpopMjGHfPvRKTRGfktoHm6/qaFJlTsdxhVN5dVM0CanHv9CfT3Q==","signatures":[{"sig":"MEUCIAXKc1GttJXjWIkpx+1sEIaw1sgnVXevqzCkIG4mBobGAiEAl2B7VinTr11sV6dsq81G6OV68Kb3gvupFN6TWHyjmdg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.44","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":366301},"type":"module","engines":{"node":">=20"},"gitHead":"812b8b419f4849d14cacc36349b26b8bca1447f4","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.44_1777816938765_0.0861363271629274","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.45":{"name":"bunny-tools","version":"0.1.0-rc.45","license":"MIT","_id":"bunny-tools@0.1.0-rc.45","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"2ecf2ff285add1ba3b61df761f0bbd0c43a1182b","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.45.tgz","fileCount":106,"integrity":"sha512-E+8n3DZApwIdhQ+W2fhOjCT4W40uGGOqJn4zB9DErMZW4dYUBZE3pLH5b5p5lYv/thi6VW8nT+v5qoPJ22hQ0Q==","signatures":[{"sig":"MEUCIQCxuL39gOQRHR6iV11aJzF8jaSf2SWmZHzlltucYSuk8QIgdo0avF04odTRM4LqyKXrIi9fDnnRpZuwBYdH74KzfdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.45","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":375097},"type":"module","engines":{"node":">=20"},"gitHead":"38d14e4cf40aaa537e4af7c674a072f5da13db34","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.45_1777818029899_0.3672438032600289","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.46":{"name":"bunny-tools","version":"0.1.0-rc.46","license":"MIT","_id":"bunny-tools@0.1.0-rc.46","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"980bb5971e58be4e76116a9dc60f99d898e87d75","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.46.tgz","fileCount":106,"integrity":"sha512-dIXCTIgP6r+Z+En3LC5P4c4ExJ7a8g2doOkSioJl4wKNhYfjQw3hxY5J+BGkOeiduIuQsQaBDyFJ3FhwqlSqzA==","signatures":[{"sig":"MEYCIQD7VG8wYa9vrMVLitn977hARrECrtKgtG9npwQx948O/QIhAP6ZPSBFBm3htT/GaIL6HlVVCTD8r7uxEjfzVAaOWdtW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.46","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":375097},"type":"module","engines":{"node":">=20"},"gitHead":"37725c9896fa334c429bae8a6916e9f1187f2bcc","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.46_1777819831096_0.16739093411982298","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.47":{"name":"bunny-tools","version":"0.1.0-rc.47","license":"MIT","_id":"bunny-tools@0.1.0-rc.47","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"0775cc9271de3a565088ce5f0131409023638744","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.47.tgz","fileCount":106,"integrity":"sha512-hT1Yv4pJJqZTYjVzbqcVxUtY3helPHD8BNTSErZWIuCHAGpOte7qZa04ERPxpv6VS9S/rPntGzCZVs/0skYzyg==","signatures":[{"sig":"MEUCIQCbUHW8BP+Tc2KXNbJQkAKPxngCKHWR+3d3G+4mVkCHuAIgNPit2rsPsSQjuwR5BDo7567JL166QwGYiOYDaflVDZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.47","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":375789},"type":"module","engines":{"node":">=20"},"gitHead":"a3ec12b9b652294431a98718544b694879bc8762","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.47_1777861500368_0.6534620838793797","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.48":{"name":"bunny-tools","version":"0.1.0-rc.48","license":"MIT","_id":"bunny-tools@0.1.0-rc.48","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"c4f6116dd5082bda3f41a854c2dea61999ac55c6","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.48.tgz","fileCount":106,"integrity":"sha512-W/45lACvHaIDe/ouSv40SXjuOPpOqzZR8NWZuDyE1+abNW8LfMx4FxeV4BBtVixul8Z+PPLnrueEPoGAM+VHiA==","signatures":[{"sig":"MEUCIQCtrXxObVORcqB77jg6RKPFc0HqxN7YBDKcgR2u0fBquwIgTaveCELVzNeiBdAQJurp7YpAebbzBzVt44u9IgI/N/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.48","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376746},"type":"module","engines":{"node":">=20"},"gitHead":"12aefdd755659893e397f0ce965b9863a75164e7","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.48_1777861865023_0.28503963807500377","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.49":{"name":"bunny-tools","version":"0.1.0-rc.49","license":"MIT","_id":"bunny-tools@0.1.0-rc.49","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"edae3631afe6cc4d9e3ee7d8f095192b7549d21a","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.49.tgz","fileCount":106,"integrity":"sha512-KgbdNvfbJTCRd64c0jHpE92MI831c6Z5uWVNhTJ/MbTChki7OA18R7aNo5oqBYDrE7S818wi9C3fDiJnk4aqZA==","signatures":[{"sig":"MEQCIEpzHs8f6geUpkN0HAIg4BCamJq/EXDy9yC+0nHOgQabAiAymqyBoUwbRqSR4cwqKoL8aFShAfjKX+Tm0L2RukFJuw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.49","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376751},"type":"module","engines":{"node":">=20"},"gitHead":"ebd4515f3c19200e7cd90ac3f3fd82ea457f4311","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.49_1777865050911_0.7255206730047614","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.50":{"name":"bunny-tools","version":"0.1.0-rc.50","license":"MIT","_id":"bunny-tools@0.1.0-rc.50","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"2038d61b19d88bd47e6f5b2cbb63ac6ae68fbafc","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.50.tgz","fileCount":106,"integrity":"sha512-Kh35+5LewUt4MsP15LAl6P3BunouvCjgrnySsRgtn4An5lZ2X41H2P2nyUkibHMF2iH+YcvcOxy59Qhp+Lx7+Q==","signatures":[{"sig":"MEUCICpjB77L8oW6NL7tQS8jAZwgGq4YSZ8bZL4gjnbrv6ogAiEAxrut1cJlPGItxh7FQOe8JHa7Mdnlsiw0sh0Fq6mtmYg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.50","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376584},"type":"module","engines":{"node":">=20"},"gitHead":"2d186be6cc04e9b77c40ab2e8610c6a9645efcf2","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.50_1777865643326_0.3775749576646543","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.51":{"name":"bunny-tools","version":"0.1.0-rc.51","license":"MIT","_id":"bunny-tools@0.1.0-rc.51","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"a965992197121dd267fce497c00f1f95423a66f2","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.51.tgz","fileCount":106,"integrity":"sha512-B+gSHZaOGTRDbJRcvi6eB/Fdn2iOSaaDRHHZFLphnj8owXjg+vuUsC43gqn9J0lghWHWXcdbQ3F7barnLN8rcg==","signatures":[{"sig":"MEUCIEmGmvW0GcZZWnDMgNZGUmdUM/Bpi3zO8OVMeeTSl/B/AiEAwsOB8Qu9FONkfG+NaezlYQSdkzY91CvvW9X7jr0M3h4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.51","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376031},"type":"module","engines":{"node":">=20"},"gitHead":"0d311c2079f4f54e0eadb39836ec1d0059f8a364","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.51_1777866085268_0.9191900517845282","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.52":{"name":"bunny-tools","version":"0.1.0-rc.52","license":"MIT","_id":"bunny-tools@0.1.0-rc.52","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"0a17aaa14a3eb350d1eca9670aa962b54fa2fd8a","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.52.tgz","fileCount":106,"integrity":"sha512-ZOl1Ar91x8w8o33OA13BbkrPr82u6KbGjjKzoMtDkWIMIBDN5lFQqq2PnX0YKxxB0tn2DkPXsr9TzJ5KeHVwtA==","signatures":[{"sig":"MEQCIBzmmqEitO53QCzhHXdc6xH+Je2PzV3U+IRecWE4J9HKAiBSpg67fEzvZC8PnlYdXeYVeiicZu/TxtthtzNAUynL3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.52","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":376031},"type":"module","engines":{"node":">=20"},"gitHead":"570f9b6be22367e1b27c368a5be695e4b2ad0643","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.52_1777866880848_0.5103608356931846","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.53":{"name":"bunny-tools","version":"0.1.0-rc.53","license":"MIT","_id":"bunny-tools@0.1.0-rc.53","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"640065caceb8c63c37b866126210002446db9bc8","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.53.tgz","fileCount":106,"integrity":"sha512-62gk1t1XtE9JK+QSJiTJGvubj0IxagqwSarzlHdGjyeNVf62Fr9jJJszmWSQ4CHdlFNO969499OIF26G+hykUQ==","signatures":[{"sig":"MEQCIHQW+8ah9ZutW8jPmoimnhab/UAwUZteqoraYR8cdc9rAiBal3+1ZhSN3nRsSWQAUX+rICO5IZPgOh/Xp+f1/QPjWQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.53","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":377552},"type":"module","engines":{"node":">=20"},"gitHead":"6007d6c53d8861a5a0c57eb6faaea381eb1da6ce","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.53_1777867859767_0.7205301071344512","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-rc.54":{"name":"bunny-tools","version":"0.1.0-rc.54","license":"MIT","_id":"bunny-tools@0.1.0-rc.54","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"2552f78a7a9c4f518121bee76b78f20d2e4a1883","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0-rc.54.tgz","fileCount":106,"integrity":"sha512-qrKqbs29zcXtZF7I7lIk/IV5tmMbok57/7XOwD05pgikZ+UqMOB2vevRQ1SA4c6UB9tKHSaX95RoGOAmiEaA4Q==","signatures":[{"sig":"MEUCIQCBZ8GABKtoDuJlE6kV3eAfUjOwtdlDfmmEOar/JteAegIgJaP1Hfxr2ajzgMhh6DQ/vsb1r4fmfsvkTCcCK394fns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0-rc.54","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":377336},"type":"module","engines":{"node":">=20"},"gitHead":"acb502a473ffe3418b8464194ffc16eb968d69d4","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0-rc.54_1777869864649_0.34259736623307746","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"bunny-tools","version":"0.1.0","license":"MIT","_id":"bunny-tools@0.1.0","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"4ed6f1292c4eb0ca7e24a05a2761ca68d96c3383","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.0.tgz","fileCount":106,"integrity":"sha512-tzalmbWn0qDffJqISfAlvL3ol4c0LY7TCMto/Sc95CUyEf228+xgorUGitstStyr1OLicbsu1RnC5HgjJIXIrQ==","signatures":[{"sig":"MEQCIAPcjdEEXzRlYSHU26pBydZ178DQDAlzQVB51iBsjHAeAiAPLmeEvHVpga5sScxhenHna5E81p5V7CZY0sYAQCk3Qg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":377318},"type":"module","engines":{"node":">=20"},"gitHead":"28c69eb1344b5b2598eef627bb2c093ad7a94cfc","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.0_1777871210498_0.4146049709232549","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"bunny-tools","version":"0.1.1","keywords":["bunny","bunny-net","bunnycdn","cdn","cli","deploy","storage","dns","stream","edge-scripting","magic-containers","mcp","model-context-protocol","ai-tools","claude-code"],"license":"MIT","_id":"bunny-tools@0.1.1","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"e50b45085d7656a9997ffe27731c8a43fcab7179","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.1.tgz","fileCount":106,"integrity":"sha512-T51hyRjIjQFta26wJFCl9+O6U5cGYbdcpKjxrzUTTz/x0uaXr0QB/UUZaj/IY2AEcFWwTXUBn9Rrz8mh/7+4tw==","signatures":[{"sig":"MEUCIQCL9sQtRUU/hIWd1yPUQNhgPpLK1f4LcY5FohQ94WdZ7wIgJ3S77VI1or1DJrOwxL4MBPzz+9GJKzBsUUf4/na1ipk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":379274},"type":"module","engines":{"node":">=20"},"gitHead":"b0f9b4f707265b9525d6654e825aa061c436b4c5","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI for storage deploy, CDN purge, and full resource management. AI-friendly via MCP.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.1_1777872325753_0.8140021992896007","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"bunny-tools","version":"0.1.4","keywords":["bunny","bunny-net","bunny.net","bunnycdn","cdn","cdn-purge","cli","deploy","static-site","static-deploy","firebase-deploy","storage","dns","stream","edge-scripting","magic-containers","mcp","model-context-protocol","ai-tools","claude-code","nodejs","typescript"],"license":"MIT","_id":"bunny-tools@0.1.4","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"bin":{"bunny":"dist/cli.js"},"dist":{"shasum":"7cfc56965ffe2315519b019a2c4477b5f5de615b","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.4.tgz","fileCount":106,"integrity":"sha512-w4mkQvTwCsNx75Nly1laGyzTCE7sZlrjURy2wW/o3JmmEUbuTbtiYFej+9xN+QqVMsSjYuKyPmbsCVvAR5KLzw==","signatures":[{"sig":"MEQCIBIvWUF+ln/CmDvBMj1ltfnioPWWDzBKJtKfbaDEFRaMAiANQVnTnD9pGOfB9q5bLxZduFyNjEmb3IK5F1Pz4RRv+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":379470},"type":"module","engines":{"node":">=20"},"gitHead":"f3c12d6f6c0ce8816d134c54ac000a76f1cfa50c","scripts":{"dev":"tsx src/cli.ts","lint":"eslint src test scripts --ext .ts,.mjs","test":"vitest run","build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","format":"prettier --write src test scripts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","test:watch":"vitest","gen:manifest":"tsx scripts/generate-manifest.ts","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"repository":{"url":"git+https://github.com/bytekcorp/bunny-tools.git","type":"git"},"_npmVersion":"11.13.0","description":"Bunny.net CLI + MCP server. Deploy static sites to Bunny Storage and purge CDN with one command. Manage Storage, Pull Zones, DNS, Stream, Edge Scripting from a single binary - plus AI-native MCP for Claude Code & Claude Desktop.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ora":"^8.2.0","zod":"^3.25.76","ignore":"^6.0.2","keytar":"^7.9.0","undici":"^6.25.0","prompts":"^2.4.2","commander":"^12.1.0","fast-glob":"^3.3.3","mime-types":"^3.0.2","picocolors":"^1.1.1","zod-to-json-schema":"^3.25.2","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","nock":"^13.5.6","eslint":"^8.57.1","vitest":"^4.1.5","prettier":"^3.8.3","typescript":"^5.9.3","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@types/mime-types":"^3.0.1","@vitest/coverage-v8":"^4.1.5","@typescript-eslint/parser":"^8.59.1","@typescript-eslint/eslint-plugin":"^8.59.1"},"_npmOperationalInternal":{"tmp":"tmp/bunny-tools_0.1.4_1777874221403_0.00029205352763028714","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"bunny-tools","version":"0.1.5","description":"Bunny.net CLI + MCP server. Deploy static sites to Bunny Storage and purge CDN with one command. Manage Storage, Pull Zones, DNS, Stream, Edge Scripting from a single binary - plus AI-native MCP for Claude Code & Claude Desktop.","keywords":["bunny","bunny-net","bunny.net","bunnycdn","cdn","cdn-purge","cli","deploy","static-site","static-deploy","firebase-deploy","storage","dns","stream","edge-scripting","magic-containers","mcp","model-context-protocol","ai-tools","claude-code","nodejs","typescript"],"license":"MIT","type":"module","bin":{"bunny":"dist/cli.js"},"repository":{"type":"git","url":"git+https://github.com/bytekcorp/bunny-tools.git"},"homepage":"https://github.com/bytekcorp/bunny-tools#readme","bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"publishConfig":{"access":"public"},"engines":{"node":">=20"},"scripts":{"build":"tsc -p tsconfig.build.json && tsx scripts/post-build.ts","dev":"tsx src/cli.ts","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","test:e2e":"vitest run --config vitest.config.e2e.ts","typecheck":"tsc --noEmit","lint":"eslint src test scripts --ext .ts,.mjs","lint:fix":"eslint src test scripts --ext .ts,.mjs --fix","format":"prettier --write src test scripts","gen:manifest":"tsx scripts/generate-manifest.ts","gen:agents":"tsx scripts/generate-agents.ts","gen:schema":"tsx scripts/generate-schema.ts","gen:all":"npm run gen:manifest && npm run gen:agents && npm run gen:schema","verify:drift":"npm run gen:all && git diff --exit-code manifest.json AGENTS.md schema/bunny.schema.json"},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","commander":"^12.1.0","fast-glob":"^3.3.3","ignore":"^6.0.2","keytar":"^7.9.0","mime-types":"^3.0.2","ora":"^8.2.0","picocolors":"^1.1.1","prompts":"^2.4.2","undici":"^6.25.0","zod":"^3.25.76","zod-to-json-schema":"^3.25.2"},"devDependencies":{"@types/mime-types":"^3.0.1","@types/node":"^20.19.39","@types/prompts":"^2.4.9","@typescript-eslint/eslint-plugin":"^8.59.1","@typescript-eslint/parser":"^8.59.1","@vitest/coverage-v8":"^4.1.5","eslint":"^8.57.1","nock":"^13.5.6","prettier":"^3.8.3","tsx":"^4.21.0","typescript":"^5.9.3","vitest":"^4.1.5"},"gitHead":"1ff045275ad723a4e43f88e82e1b3fb7b7511f4d","_id":"bunny-tools@0.1.5","_nodeVersion":"20.20.2","_npmVersion":"11.13.0","dist":{"integrity":"sha512-TC4brc4jZR5DJP/41wGGxeq0IkZMvz2Tc8nlPibvzRr7zMUv+E4SRk4tsVgUDJaELud5deVBuklBgTTQxoNy+Q==","shasum":"bff5c2e6a30437055eea60e603ec08f3ed2a619e","tarball":"https://registry.npmjs.org/bunny-tools/-/bunny-tools-0.1.5.tgz","fileCount":106,"unpackedSize":379915,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/bunny-tools@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCAYiCCjy+K/oHd+G9BdmFahUDRSuLDG0HTWNH/JSKoWgIgHEsePXP0zHVZFc921XX9rwxu/IuEDHeP/gZApCvRFY0="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:87f7f66e-1e23-4a4a-a92f-8249a06a78df"}},"directories":{},"maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/bunny-tools_0.1.5_1777874954477_0.2857895362777907"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-02T14:09:10.917Z","modified":"2026-05-04T06:09:14.961Z","0.1.0-rc.2":"2026-05-02T14:09:11.207Z","0.1.0-rc.3":"2026-05-02T14:27:35.267Z","0.1.0-rc.6":"2026-05-02T15:32:25.148Z","0.1.0-rc.7":"2026-05-02T16:05:17.447Z","0.1.0-rc.8":"2026-05-02T16:15:31.674Z","0.1.0-rc.9":"2026-05-02T23:46:07.104Z","0.1.0-rc.10":"2026-05-03T02:11:13.628Z","0.1.0-rc.12":"2026-05-03T05:22:37.714Z","0.1.0-rc.13":"2026-05-03T05:26:18.225Z","0.1.0-rc.14":"2026-05-03T05:56:38.583Z","0.1.0-rc.15":"2026-05-03T06:04:33.528Z","0.1.0-rc.16":"2026-05-03T06:08:00.988Z","0.1.0-rc.17":"2026-05-03T06:24:13.928Z","0.1.0-rc.18":"2026-05-03T06:28:16.954Z","0.1.0-rc.19":"2026-05-03T06:44:49.303Z","0.1.0-rc.20":"2026-05-03T07:02:43.476Z","0.1.0-rc.21":"2026-05-03T07:22:00.970Z","0.1.0-rc.22":"2026-05-03T07:25:14.940Z","0.1.0-rc.23":"2026-05-03T07:49:34.530Z","0.1.0-rc.24":"2026-05-03T08:16:14.207Z","0.1.0-rc.25":"2026-05-03T08:48:46.912Z","0.1.0-rc.26":"2026-05-03T09:04:51.426Z","0.1.0-rc.27":"2026-05-03T09:17:14.422Z","0.1.0-rc.28":"2026-05-03T09:32:41.597Z","0.1.0-rc.30":"2026-05-03T09:58:27.783Z","0.1.0-rc.31":"2026-05-03T10:53:29.954Z","0.1.0-rc.32":"2026-05-03T11:02:09.174Z","0.1.0-rc.33":"2026-05-03T11:35:23.306Z","0.1.0-rc.34":"2026-05-03T11:52:05.519Z","0.1.0-rc.38":"2026-05-03T12:53:54.875Z","0.1.0-rc.39":"2026-05-03T13:01:46.517Z","0.1.0-rc.40":"2026-05-03T13:31:03.887Z","0.1.0-rc.41":"2026-05-03T13:37:44.900Z","0.1.0-rc.42":"2026-05-03T13:41:02.292Z","0.1.0-rc.43":"2026-05-03T13:49:29.163Z","0.1.0-rc.44":"2026-05-03T14:02:18.957Z","0.1.0-rc.45":"2026-05-03T14:20:30.081Z","0.1.0-rc.46":"2026-05-03T14:50:31.244Z","0.1.0-rc.47":"2026-05-04T02:25:00.523Z","0.1.0-rc.48":"2026-05-04T02:31:05.200Z","0.1.0-rc.49":"2026-05-04T03:24:11.107Z","0.1.0-rc.50":"2026-05-04T03:34:03.721Z","0.1.0-rc.51":"2026-05-04T03:41:25.484Z","0.1.0-rc.52":"2026-05-04T03:54:40.985Z","0.1.0-rc.53":"2026-05-04T04:10:59.915Z","0.1.0-rc.54":"2026-05-04T04:44:24.777Z","0.1.0":"2026-05-04T05:06:50.681Z","0.1.1":"2026-05-04T05:25:25.901Z","0.1.4":"2026-05-04T05:57:01.541Z","0.1.5":"2026-05-04T06:09:14.639Z"},"bugs":{"url":"https://github.com/bytekcorp/bunny-tools/issues"},"license":"MIT","homepage":"https://github.com/bytekcorp/bunny-tools#readme","keywords":["bunny","bunny-net","bunny.net","bunnycdn","cdn","cdn-purge","cli","deploy","static-site","static-deploy","firebase-deploy","storage","dns","stream","edge-scripting","magic-containers","mcp","model-context-protocol","ai-tools","claude-code","nodejs","typescript"],"repository":{"type":"git","url":"git+https://github.com/bytekcorp/bunny-tools.git"},"description":"Bunny.net CLI + MCP server. Deploy static sites to Bunny Storage and purge CDN with one command. Manage Storage, Pull Zones, DNS, Stream, Edge Scripting from a single binary - plus AI-native MCP for Claude Code & Claude Desktop.","maintainers":[{"name":"bytekcorp","email":"chien@bytek.org"}],"readme":"# Bunny CLI and MCP Server\n\n[![npm](https://img.shields.io/npm/v/bunny-tools.svg)](https://www.npmjs.com/package/bunny-tools)\n[![npm downloads](https://img.shields.io/npm/dm/bunny-tools.svg)](https://www.npmjs.com/package/bunny-tools)\n[![CI](https://github.com/bytekcorp/bunny-tools/actions/workflows/ci.yml/badge.svg)](https://github.com/bytekcorp/bunny-tools/actions/workflows/ci.yml)\n[![e2e nightly](https://github.com/bytekcorp/bunny-tools/actions/workflows/e2e-nightly.yml/badge.svg)](https://github.com/bytekcorp/bunny-tools/actions/workflows/e2e-nightly.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n**Package:** `bunny-tools` &middot; **Binary:** `bunny` &middot; **Node:** ≥20\n\n## Why bunny-tools\n\nBunny.net is a great CDN/storage/DNS/streaming platform but managing it from the terminal was DIY territory. bunny-tools fixes that with one binary covering Storage, CDN, DNS, Stream, and Edge Scripting - and a built-in MCP server so AI agents can drive every command:\n\n- **`bunny deploy` for static sites.** Familiar ergonomics if you've used `firebase deploy` - walk public dir → SHA-cached diff → parallel upload → CDN purge, in one command.\n- **`bunny.json` is your single source of truth.** Versioned in git. Every command honors it. JSON Schema published at `unpkg.com/bunny-tools/schema/bunny.schema.json`.\n- **AI-native via MCP.** AI agents see the same surface you do - no separate plugin per agent. `bunny install mcp` registers it with Claude Code in one shot.\n- **Verified end-to-end.** 185 unit tests + nightly drift detection against a real Bunny account. We catch Bunny API changes before they break your deploys.\n\n## Install\n\n### As a CLI\n\n```bash\nnpm install -g bunny-tools\n```\n\n### As an MCP server (recommended for AI workflows)\n\nFor Claude Code:\n\n```bash\nclaude mcp add bunny-tools npx -y bunny-tools mcp\n```\n\nFor Claude Desktop, add to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"bunny-tools\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"bunny-tools\", \"mcp\"]\n    }\n  }\n}\n```\n\nOnce installed, any Claude session can use 15 high-level tools (`bunny.deploy`, `bunny.purge`, zone/dns CRUD) plus 3 resources (`bunny://manifest`, `bunny://agents`, `bunny://config/current`) without needing prior context. See [MCP server](#mcp-server-ai-integration) below for the full tool surface.\n\n## Quickstart\n\n```bash\nbunny init                   # interactive: auth + feature picker + bunny.json\nbunny deploy --dry-run       # preview\nbunny deploy                 # storage sync + CDN purge\n```\n\n`bunny init` walks you through:\n\n1. Bunny account API key (skipped if already in env or keychain)\n2. Feature multi-select - Storage+CDN, DNS, Stream, Magic Containers, Edge Scripting\n3. Per-feature config (e.g. for Storage+CDN: public dir, storage zone, password, pull zone, purge strategy)\n\nNon-interactive form for CI:\n\n```bash\nbunny init --non-interactive --features=storage \\\n  --api-key=$BUNNY_API_KEY \\\n  --storage-zone=my-app \\\n  --storage-password=$BUNNY_STORAGE_PASSWORD \\\n  --pull-zone=12345\n```\n\nAdd `--ci` to also generate `.github/workflows/bunny-deploy.yml` for GitHub Actions.\n\n## Quickstart for AI agents\n\nWith the MCP server installed (see [Install](#install)), Claude Code and Claude Desktop can drive every command. Drop into any project and try:\n\n| What you say | What happens |\n| --- | --- |\n| **\"Use bunny-tools to set up CI/CD for this project\"** | Runs `bunny init`, writes `.github/workflows/deploy.yml` using the official action, and lists the secrets you need to add |\n| **\"Deploy this site to Bunny\"** | Reads existing `bunny.json`, runs `bunny deploy` (with dry-run preview first) |\n| **\"Purge the CDN cache for tag release-2026-04\"** | Calls `bunny.purge` with `tag:release-2026-04` |\n| **\"Show me what's on my Bunny account\"** | Calls `bunny.whoami` + lists reachable zone counts |\n| **\"Add an A record for www → 1.2.3.4 on my Bunny DNS zone for example.com\"** | Resolves the zone id, calls `bunny.dns_record_add` |\n\nFor best results in a new project, drop a 2-line hint into the project's `CLAUDE.md`:\n\n```markdown\n## Deploy\nThis project uses bunny-tools. Run `bunny init` for first-time setup, then `bunny deploy`.\n```\n\nThis anchors Claude to bunny-tools for that project's deploy work.\n\n---\n\n## Setup & Auth\n\n| Command | Description |\n| --- | --- |\n| `bunny init` | Interactive setup - auth + feature picker + bunny.json |\n| `bunny configure` | Walkthrough - store credentials in a named profile |\n| `bunny configure list` | List all credential profiles + scopes (masked) |\n| `bunny configure switch <name>` | Set the active profile |\n| `bunny configure remove <name> [scope]` | Remove a profile, or a single scope inside one |\n| `bunny use [alias]` | Switch active alias from `.bunnyrc` (or list aliases) |\n| `bunny whoami` | Show current account context + reachable zone counts |\n| `bunny docs [topic]` | Open Bunny.net docs in browser |\n\n**Example**\n\n```bash\nbunny configure --profile=staging\nbunny configure switch staging\n```\n\n## Deploy & Purge\n\n| Command | Description |\n| --- | --- |\n| `bunny deploy` | Sync public dir to storage zone and purge CDN cache |\n| `bunny purge <target>` | Purge by URL, `tag:<name>`, or `pullzone:<id>` |\n\n**Example**\n\n```bash\nbunny deploy --dry-run\nbunny purge tag:release-2026-05\n```\n\n## Storage (file operations)\n\n| Command | Description |\n| --- | --- |\n| `bunny storage upload <local> <remote>` | Upload a single file to the active zone |\n| `bunny storage download <remote> <local>` | Download a single file from a zone |\n| `bunny storage list [path]` | List a storage-zone path |\n| `bunny storage delete <path>` | Delete a file or path (use `--recursive` for dirs) |\n| `bunny storage sync <local-dir>` | Mirror local dir to zone - SHA-cached diff, parallel upload |\n\n**Example**\n\n```bash\nbunny storage sync ./dist --zone=my-app\n```\n\n## Storage Zones\n\n| Command | Description |\n| --- | --- |\n| `bunny storagezone list` | List storage zones |\n| `bunny storagezone get <id\\|name>` | Get a storage zone |\n| `bunny storagezone create <name>` | Create a storage zone |\n| `bunny storagezone update <id> --body=<json>` | Update a storage zone (raw JSON body) |\n| `bunny storagezone delete <id>` | Delete a storage zone |\n\n\n## Pull Zones (CDN)\n\n> **Tip:** `bunny cdn ...` works everywhere `bunny pullzone ...` does - Bunny's dashboard calls these \"CDN\", so the alias is there for muscle memory. Canonical name follows Bunny's API (`pullzone`).\n\n| Command | Description |\n| --- | --- |\n| `bunny pullzone list` (or `bunny cdn list`) | List pull zones |\n| `bunny pullzone get <id>` | Get a pull zone |\n| `bunny pullzone create <name>` | Create a pull zone |\n| `bunny pullzone update <id> --body=<json>` | Update a pull zone (raw JSON body) |\n| `bunny pullzone delete <id>` | Delete a pull zone |\n| `bunny pullzone edgerule list <id>` | List edge rules on a pull zone |\n| `bunny pullzone edgerule add <id> --rule=<json>` | Add an edge rule (raw JSON rule) |\n| `bunny pullzone edgerule delete <id> <rule-id>` | Delete an edge rule |\n| `bunny pullzone hostname list <id>` | List custom hostnames linked to a pull zone |\n| `bunny pullzone hostname add <id> <hostname>` | Link hostname + provision Let's Encrypt cert + ForceSSL. Idempotent. `--no-force-ssl` opts out of HTTP→HTTPS redirect |\n| `bunny pullzone hostname remove <id> <hostname>` | Unlink a custom hostname |\n\n\n**Example**\n\n```bash\nbunny cdn edgerule list 12345\n\n# Wire DNS to a pull zone (2 steps - `add` does link + cert + ForceSSL\n# in one idempotent call; the DNS record points at the wired-up PZ):\nbunny pullzone hostname add 5780316 example.com           # ~2-90s\nbunny dns record add 783181 PULLZONE @ --pull-zone=5780316\n\n# Or do everything in one shot via the atomic Connect Domain command:\nbunny domain connect 5780316 example.com --dns-zone=783181\n```\n\n## DNS\n\n| Command | Description |\n| --- | --- |\n| `bunny dns list` | List DNS zones |\n| `bunny dns get <id\\|domain>` | Get a DNS zone |\n| `bunny dns create <domain>` | Create a DNS zone |\n| `bunny dns delete <id>` | Delete a DNS zone |\n| `bunny dns record list <zone>` | List records on a zone |\n| `bunny dns record add <zone> <type> <name> <value>` | Add a record (positional args) |\n| `bunny dns record update <zone> <record-id> --body=<json>` | Update a record |\n| `bunny dns record delete <zone> <record-id>` | Delete a record |\n\n**Supported record types:** standard `A`, `AAAA`, `CNAME`, `TXT`, `MX`, `SRV`, `CAA`, `NS` plus Bunny routing types `REDIRECT`, `PULLZONE`, `PTR`, `SCRIPT`. `PULLZONE` and `SCRIPT` need `--link-name=<id>` (the linked pull zone / script id). For `PULLZONE` you can use the convenience flag `--pull-zone=<id>` instead and the CLI will fill in both the value and link-name from the pull zone's metadata. (`FLATTEN` is documented in Bunny's OpenAPI spec but the live API rejects it; dropped from supported types - re-add when Bunny enables it server-side.)\n\n**Examples**\n\n```bash\n# Standard A record\nbunny dns record add 783181 A www 1.2.3.4 --ttl=300\n\n# Redirect www → https://example.com\nbunny dns record add 783181 REDIRECT www https://example.com\n\n# Wire DNS to a pull zone - auto-fills value + link-name\nbunny dns record add 783181 PULLZONE \"\" --pull-zone=5780316\n\n# Or raw form if you already know the pz name\nbunny dns record add 783181 PULLZONE \"\" my-pz-name --link-name=5780316\n```\n\n## Stream\n\n| Command | Description |\n| --- | --- |\n| `bunny stream library list` | List Stream libraries |\n| `bunny stream library create <name>` | Create a Stream library |\n| `bunny stream library delete <id>` | Delete a Stream library |\n| `bunny stream video list <library>` | List videos in a library |\n| `bunny stream video upload <library> <file>` | Upload a video to a library |\n| `bunny stream video delete <library> <video-id>` | Delete a video |\n\n**Example**\n\n```bash\nbunny stream video upload 42 ./demo.mp4 --title=\"My demo\"\n```\n\n## Magic Containers\n\n| Command | Description |\n| --- | --- |\n| `bunny containers app list` | List container apps |\n| `bunny containers app delete <id>` | Delete a container app |\n\n> `containers app create` is deferred to v0.2 - Bunny's v3 schema requires `runtimeType` + `containerTemplates[]` + `autoScaling` which the current CLI surface doesn't yet model. Manage creation via the Bunny dashboard for now.\n\n## Edge Scripting\n\n| Command | Description |\n| --- | --- |\n| `bunny scripting list` | List edge scripts |\n| `bunny scripting deploy <name> --code=<file>` | Create or update a script (dual-mode) |\n| `bunny scripting delete <id>` | Delete a script |\n\n**Example**\n\n```bash\nbunny scripting deploy my-router --code=./worker.js\n```\n\n## Discovery & AI\n\n| Command | Description |\n| --- | --- |\n| `bunny manifest --pretty` | Full registry as JSON (machine-readable surface) |\n| `bunny manifest --names` | One command name per line - handy for shell completion |\n| `bunny <any-command> --help-json` | Help for any command as JSON |\n| `bunny mcp` | Boot MCP stdio server (15 tools, 3 resources) |\n\nSee [`AGENTS.md`](./AGENTS.md) for AI-agent guidance.\n\n---\n\n## Global flags\n\nApply to any command:\n\n| Flag | Effect |\n| --- | --- |\n| `-c, --config <path>` | Override `bunny.json` location |\n| `--cwd <dir>` | Run as if launched from this directory |\n| `-e, --env <alias>` | One-shot `.bunnyrc` alias |\n| `-p, --profile <name>` | One-shot credential profile |\n\n**Example**\n\n```bash\nbunny --profile=staging deploy\n```\n\n## Configuration\n\n**`bunny.json`** (per-project, git-tracked):\n\n```jsonc\n{\n  \"$schema\": \"https://unpkg.com/bunny-tools/schema/bunny.schema.json\",\n  \"deploy\": {\n    \"publicDir\": \"dist\",\n    \"ignore\": [\"bunny.json\", \".bunnyrc\", \"**/.*\", \"**/node_modules/**\"],\n    \"storageZone\": \"my-app\",\n    \"region\": \"ny\",\n    \"concurrency\": 8,\n    \"pullZones\": [{ \"id\": 12345, \"purge\": \"all\" }]\n  }\n}\n```\n\n**`.bunnyrc`** (per-developer aliases, gitignored):\n\n```json\n{\n  \"default\": \"prod\",\n  \"aliases\": {\n    \"prod\":    { \"storageZone\": \"my-app\",     \"pullZones\": [12345] },\n    \"staging\": { \"storageZone\": \"my-app-stg\", \"pullZones\": [12346] }\n  }\n}\n```\n\n**Multi-account profiles** (`~/.config/bunny-tools/credentials.json`):\n\n```jsonc\n{\n  \"active\": \"default\",\n  \"profiles\": {\n    \"default\": { \"account\": \"...\", \"storage:my-app\": \"...\" },\n    \"staging\": { \"account\": \"...\", \"storage:my-app-stg\": \"...\" }\n  }\n}\n```\n\nSwitch the active profile with `bunny configure switch <name>`, or one-shot with `bunny --profile=<name> <cmd>` or `BUNNY_PROFILE=<name>`.\n\n## Auth model\n\nFour credential scopes (all use the `AccessKey` HTTP header):\n\n- `account` - Account API key\n- `storage:<zone>` - Storage zone password (per zone)\n- `stream:<lib>` - Stream library API key (per library)\n- `database:<name>` - Database access key\n\n**Resolver chain (per call site):** `--flag` → scoped env (e.g. `BUNNY_STORAGE_PASSWORD_MY_APP`) → generic env (`BUNNY_STORAGE_PASSWORD`) → OS keychain (`<profile>:<scope>` keys) → `~/.config/bunny-tools/credentials.json` → interactive prompt.\n\n## GitHub Actions\n\n`bunny init --ci` generates a workflow that uses npm-install + `bunny deploy`:\n\n```yaml\n- name: Install bunny-tools\n  run: npm install -g bunny-tools\n- name: Deploy\n  env:\n    BUNNY_API_KEY: ${{ secrets.BUNNY_API_KEY }}\n    BUNNY_STORAGE_PASSWORD_MY_APP: ${{ secrets.BUNNY_STORAGE_PASSWORD_MY_APP }}\n  run: bunny deploy\n```\n\nA composite action wrapper (`bytekcorp/bunny-tools-deploy-action@v1`) is on the v0.2 roadmap for tighter ergonomics. The npm-install form above is the canonical path for v0.1.\n\n## MCP server (AI integration)\n\nInstall steps are at the top under [Install → As an MCP server](#as-an-mcp-server-recommended-for-ai-workflows). Once configured, the server exposes:\n\n**Tools (15):** `bunny.deploy`, `bunny.purge`, `bunny.init`, `bunny.manifest`, `bunny.whoami`, storage zone CRUD, pull zone CRUD, DNS zone + record CRUD, plus `bunny.run` as an escape hatch for any CLI invocation.\n\n**Resources (3):**\n- `bunny://manifest` - full command registry as JSON\n- `bunny://agents` - AGENTS.md (workflows, gotchas, conventions for AI agents)\n- `bunny://config/current` - resolved config from `bunny.json` + active alias\n\n**Cross-project usage.** With the MCP server installed, drop a 2-line hint into any new project's `CLAUDE.md` to anchor Claude to bunny-tools for that project:\n\n```markdown\n## Deploy\nThis project uses bunny-tools. Run `bunny init` for first-time setup, then `bunny deploy`. See `bunny manifest --pretty` for the full command surface.\n```\n\n## Development\n\n```bash\ngit clone https://github.com/bytekcorp/bunny-tools\ncd bunny-tools\nnpm ci\nnpm run build\nnpm test\nnpm run dev -- manifest --pretty\n```\n\nFor end-to-end testing against a real Bunny account (drift detection), see [`docs/e2e-testing.md`](docs/e2e-testing.md).\n\nFor release instructions, see [`docs/deployment-guide.md`](docs/deployment-guide.md).\n\n## FAQ\n\n**Is this the official Bunny.net CLI?**\nNo. bunny-tools is a community CLI. Bunny.net publishes [`@bunny.net/cli`](https://www.npmjs.com/package/@bunny.net/cli), which focuses on Databases, Magic Containers, and Edge Scripts. bunny-tools covers a different surface (Storage, CDN, DNS, Stream, Edge Scripting) and ships an MCP server for AI agents.\n\n**Why the binary name `bunny`?**\nShort and matches the brand. Note that `@bunny.net/cli` also installs a `bunny` binary, so installing both globally will collide - pick one or use `npx` for the other.\n\n**Can I use this in CI?**\nYes. `bunny init --ci` generates a `.github/workflows/bunny-deploy.yml`. All commands honor `BUNNY_API_KEY` and per-zone scoped env vars.\n\n**Does it work without Node.js?**\nCurrently npm-only (Node 20+). A standalone binary is on the v0.2 roadmap.\n\n## License\n\nMIT - see [LICENSE](./LICENSE).\n","readmeFilename":"README.md"}