{"_id":"cursorcam","_rev":"7-39a559f26f64bfc80316e2b308c0de37","name":"cursorcam","dist-tags":{"beta":"1.0.0-beta.4","latest":"1.1.0"},"versions":{"0.0.0-stage":{"name":"cursorcam","version":"0.0.0-stage","_id":"cursorcam@0.0.0-stage","stub":true,"maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"dist":{"shasum":"523b5ee03875ef07ba78a6f1963e72cf7938fa08","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-0.0.0-stage.tgz","fileCount":2,"integrity":"sha512-z5nTHU/FxutV3rkx44qzIZ58kj6OCvVGsKAUudXUF5ghgRpqACmgnJxpvH+mY3J3hBPRl2WgdmI1HZOl6z5Yjg==","signatures":[{"sig":"MEQCIHTO+HPebpDwDjgDP4wCKw9qTNNtMQWKVa6R+N7VkG2UAiAFsf+8T5SLZ4HdTph1wkA7WuxmOr6oikyI3wofVeh8TQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":331},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"description":"Temporary package placeholder for staged publishing","directories":{}},"1.0.0-beta.1":{"name":"cursorcam","version":"1.0.0-beta.1","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","claude code","cli"],"author":{"name":"Avijit Dey"},"license":"Apache-2.0","_id":"cursorcam@1.0.0-beta.1","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"homepage":"https://cursorcam.vercel.app","bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"bin":{"cursorcam":"dist/cli/index.js"},"dist":{"shasum":"bd94750fbea3f565348963a699d0f44c66516e93","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.0.0-beta.1.tgz","fileCount":112,"integrity":"sha512-4Jrx4uKiN1YrJFiEfR6LhLC+NKx76jdVlvndHoLnZ6cms/2VsVPmvdn8FScyklJ34vs43VEzihPsycwik0+K+Q==","signatures":[{"sig":"MEQCIDso7Hg6R9sZRFewyupsDJaaCmXikJmAKfIqOvhCcC5cAiAxym88fD27/dajeHPcbQZq4OXH/Tn6QNLGHJTtZVCtPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC4ItWK+ceXUZnudRIh6RIUVWNNa4MruBhrFNWZ0oJWeAIgaIFvgLfRJvRROmlkX92MY2RPaibA9uAeIjya5032pRM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.0.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":307315},"type":"module","engines":{"node":">=22.13"},"gitHead":"e1cc55fe43005943e890f7fb1a896d2f4d6cc6eb","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks"},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.19.0","description":"Ask Claude for a demo video. Claude clicks through your web app and hands back a polished MP4 that zooms in on each click.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"tmp":"tmp/cursorcam_1.0.0-beta.1_1791553540099_0.40005512310853875","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.2":{"name":"cursorcam","version":"1.0.0-beta.2","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","claude code","cli"],"author":{"name":"Avijit Dey"},"license":"Apache-2.0","_id":"cursorcam@1.0.0-beta.2","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"homepage":"https://cursorcam.vercel.app","bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"bin":{"cursorcam":"dist/cli/index.js"},"dist":{"shasum":"fec0a500a8f534a6b3fe8ab72d97aab20002b11a","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.0.0-beta.2.tgz","fileCount":118,"integrity":"sha512-tybNZd3+F5JsWOxffI/Are/nmDiul3Q5Y+ZoaIb5sG1TULJ/ZmicZmvF2hmLdY8ObIUE6+PWNAdUI5A+QULxHA==","signatures":[{"sig":"MEUCIEtcpq3gy7FQIgcoxSnhgoh6Ak2F4jAvWOgyri40WvWKAiEAps+IVAlVzKt12IYE/z4hXp/hYHcGZoZhFHJzXu75hR8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGiSdnFcTzsu5gRMbcSs2MA0yzYJlN0x7/dt6wubaZa/AiAGgRN20tZy6nZKCX+WYJIFKfdeusqNzYrawSvggZduWQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.0.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":327195},"type":"module","engines":{"node":">=22.13"},"gitHead":"fffb4dcc18240df6cfbe03d70f771b0c459e3a8b","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks","site:backgrounds":"pnpm build && node scripts/export-backgrounds.mjs"},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.19.0","description":"Ask Claude for a demo video. Claude clicks through your web app and hands back a polished MP4 that zooms in on each click.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","readmeFilename":"README.md","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"tmp":"tmp/cursorcam_1.0.0-beta.2_1791630844566_0.4409212565341618","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.3":{"name":"cursorcam","version":"1.0.0-beta.3","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","claude code","cli"],"author":{"name":"Avijit Dey"},"license":"Apache-2.0","_id":"cursorcam@1.0.0-beta.3","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"homepage":"https://cursorcam.vercel.app","bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"bin":{"cursorcam":"dist/cli/index.js"},"dist":{"shasum":"eed81effa82b0ad5907fb3e9f6191fd7e4ee3a9f","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.0.0-beta.3.tgz","fileCount":118,"integrity":"sha512-6G0460w4U6fv/D3jMg9ng4N4o/ohFJUiv66ClQoZBJvPTre1mtxQOnDAM9S19hqcqG2uV5Yl7UKSueWukoSwtg==","signatures":[{"sig":"MEYCIQD8JuIlKbSVNiA4mq9PbVDjaqBkDYaFL0DNOywidgDMegIhAJZKOlgDSd5LSEVmj1j1NZIYFmOoGi/Kuy7rQeq8y0v0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBWeiuZqk++WIHito9LPwwW02b+yxh/rviVphDlaiVgNAiEA33bbfSq0AYhNTLbJoTxHxLNkanzMoPP5W+DhY1Nxj9Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.0.0-beta.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":328544},"type":"module","engines":{"node":">=22.13"},"gitHead":"102f320984c9d491b2c53e7c8d8cbe7263444a34","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks","site:backgrounds":"pnpm build && node scripts/export-backgrounds.mjs"},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.19.0","description":"Ask Claude for a demo video. Claude clicks through your web app and hands back a polished MP4 that zooms in on each click.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","readmeFilename":"README.md","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"tmp":"tmp/cursorcam_1.0.0-beta.3_1791650135652_0.22051117517776175","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.4":{"name":"cursorcam","version":"1.0.0-beta.4","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","claude code","cli"],"author":{"name":"Avijit Dey"},"license":"Apache-2.0","_id":"cursorcam@1.0.0-beta.4","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"homepage":"https://cursorcam.vercel.app","bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"bin":{"cursorcam":"dist/cli/index.js"},"dist":{"shasum":"d301cc986291ad8b653c45c1d783b7a885afa193","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.0.0-beta.4.tgz","fileCount":118,"integrity":"sha512-dz02ExeiYIoG+ExnA9pHqSKZ7NbsKPjnPAfRQFzE2/YPCJYHxaNIliQDvTz7MDuXoEiNm3zFATqlV16TrD9NQg==","signatures":[{"sig":"MEUCIQDLkKOmtkHMHoG5m1IMJwwbVOo6NyTPuF5X/dFuEfC6fgIgTTXs3PdYh2Wt4MSjhF/N8Go1BF5zPP4XXPwqB/UKGuE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGuYyAOmBZUqEzj4Sk6bDhrH41Hg+BXZ8kD7vfFjcPvLAiEAoZv0SRsY5jpA/QcPeAj2s3zkD9V/ZdYxSh8G7wuvBQc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.0.0-beta.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":328789},"type":"module","engines":{"node":">=22.13"},"gitHead":"f2e6edc5f77c28bcad311c56090e16628c084a67","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks","site:backgrounds":"pnpm build && node scripts/export-backgrounds.mjs"},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.21.0","description":"Ask Claude for a demo video. Claude clicks through your web app and hands back a polished MP4 that zooms in on each click.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"tmp":"tmp/cursorcam_1.0.0-beta.4_1791653148502_0.32067031365077314","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"cursorcam","version":"1.0.0","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","ai agent","mcp","mcp server","claude code","cli"],"author":{"name":"Avijit Dey"},"license":"Apache-2.0","_id":"cursorcam@1.0.0","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"homepage":"https://cursorcam.vercel.app","bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"bin":{"cursorcam":"dist/cli/index.js"},"dist":{"shasum":"74802cd2b0c8863a0952310f8211d758dbfc383a","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.0.0.tgz","fileCount":124,"integrity":"sha512-2nZYemtNz0o6OcH2u/jol03oh3qhOyso1FWPZPQJ/FDVfXjpTG4kvRdMhHgi0sg8ffPNlJ4AgWKqa1rk0RiwHQ==","signatures":[{"sig":"MEUCIQDspIYz130c226vFbuAlVGSiBERDnHIASfdrJTTQYbq+wIgJ9lwilJWo1xEVK1V5E2xMje6d+fFh0tdNd6kZqliXtw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDJ/CRgHhdkS5MMjiHZsnuUvrXZg+RQbW2V/FDNrFlJHQIgTcZG6mQUuF7lJgFndujHi3aNKI6MT7DcArTmBqgnwfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":359900},"type":"module","engines":{"node":">=22.13"},"gitHead":"5557aa6bafe2b9174eb6a47f5906ef90812a882d","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin agent-plugin .cursor-plugin .github/plugin gemini-extension.json","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks","site:backgrounds":"pnpm build && node scripts/export-backgrounds.mjs"},"_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.21.0","description":"Ask your AI agent for a demo video. CursorCam clicks through your web app and renders a polished MP4 that zooms in on each click, from any MCP agent, Claude Code or the CLI.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"tmp":"tmp/cursorcam_1.0.0_1792033763482_0.28017339484428727","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"_id":"cursorcam@1.1.0","bin":{"cursorcam":"dist/cli/index.js"},"bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"dist":{"shasum":"9e888843bb0b2fd5d2a1d06799d2152ff183ad0c","tarball":"https://registry.npmjs.org/cursorcam/-/cursorcam-1.1.0.tgz","fileCount":128,"integrity":"sha512-SFQ+ZhLmTjCP/hr1rkQILKGTW4J/hXO9Thhx4Sj1MF3cM9fvR/ZmVXzodyvwtzNKAEuoG89/Ir8nrH924N5cCQ==","signatures":[{"sig":"MEUCIFiTb2tNBZyeHxQuXI7u6NpRJDwcrrQDEFw2N5N+mKU7AiEAnmJ1byX8B340x+9WbSXdjTnz9Y9EGwFdY0Z8KF4+fm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH1A+xM0tMj0xdlSMDy22vEAdrg/pVyLmdOi/kaNDvtCAiB/LyDVEHu53jwu/xEYFtHPVePY0IQdg/srU1VeEH0UlQ=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/cursorcam@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":386672},"name":"cursorcam","type":"module","author":{"name":"Avijit Dey"},"engines":{"node":">=22.13"},"gitHead":"8b0b1ef8d5a9eb0166c352f5078a69364a7ad9ea","license":"Apache-2.0","scripts":{"knip":"knip","lint":"eslint .","test":"vitest run --project unit --project e2e","build":"pnpm clean && tsc -p tsconfig.build.json","check":"pnpm format:check && pnpm lint && pnpm typecheck && pnpm knip && pnpm check:version && pnpm test","clean":"node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"","format":"prettier --write .","version":"node scripts/sync-version.mjs && git add plugin agent-plugin .cursor-plugin .github/plugin gemini-extension.json","coverage":"vitest run --project unit --coverage","site:dev":"pnpm --filter cursorcam-site dev","test:e2e":"vitest run --project e2e","test:unit":"vitest run --project unit","typecheck":"tsc --noEmit -p tsconfig.json","check:site":"pnpm --filter cursorcam-site check","test:crash":"vitest run --project crash","format:check":"prettier --check .","sync-version":"node scripts/sync-version.mjs","check:package":"pnpm build && publint","check:version":"node scripts/sync-version.mjs --check","hooks:install":"git config core.hooksPath .githooks","site:backgrounds":"pnpm build && node scripts/export-backgrounds.mjs"},"version":"1.1.0","_npmUser":{"name":"avijit07x","email":"deyavijit134@gmail.com"},"homepage":"https://cursorcam.vercel.app","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","ai agent","mcp","mcp server","claude code","cli"],"commitlint":{"rules":{"type-enum":[2,"always",["feat","fix","perf","chore","docs","refactor","test","ci","build","revert"]],"subject-case":[0],"body-max-line-length":[0],"footer-max-line-length":[0]},"extends":["@commitlint/config-conventional"]},"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"_npmVersion":"11.21.0","description":"Ask your AI agent for a demo video. CursorCam clicks through your web app and renders a polished MP4 that zooms in on each click, from any MCP agent, Claude Code or the CLI.","directories":{},"lint-staged":{"*.{json,yml,yaml}":"prettier --write","*.{ts,js,mjs,cjs}":["prettier --write","eslint --fix"]},"maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"zod":"^4.6.5","commander":"^15.0.0","env-paths":"^4.0.0","mediabunny":"1.61.3","playwright-core":"1.64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@12.6.0","devDependencies":{"knip":"^6.40.0","eslint":"^10.12.0","vitest":"^5.0.3","globals":"^17.13.0","publint":"^0.3.25","prettier":"^3.9.9","@eslint/js":"^10.0.1","typescript":"~6.0.3","@types/node":"^22.20.5","lint-staged":"^17.6.0","@commitlint/cli":"^21.2.3","typescript-eslint":"^8.71.1","@vitest/coverage-v8":"^5.0.3","eslint-config-prettier":"^10.1.8","@commitlint/config-conventional":"^21.2.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cursorcam_1.1.0_1792771359997_0.31062560533153616"}}},"time":{"created":"2026-10-09T13:43:57.121Z","modified":"2026-10-23T16:02:40.520Z","0.0.0-stage":"2026-10-09T13:43:57.121Z","1.0.0-beta.1":"2026-10-09T13:45:40.227Z","1.0.0-beta.2":"2026-10-10T11:14:04.670Z","1.0.0-beta.3":"2026-10-10T16:35:35.734Z","1.0.0-beta.4":"2026-10-10T17:25:48.590Z","1.0.0":"2026-10-15T03:09:23.578Z","1.1.0":"2026-10-23T16:02:40.099Z"},"bugs":{"url":"https://github.com/Avijit07x/cursorcam/issues"},"author":{"name":"Avijit Dey"},"license":"Apache-2.0","homepage":"https://cursorcam.vercel.app","keywords":["demo video","click demo","product demo","walkthrough","screen recording","browser recording","auto zoom","mp4","ai agent","mcp","mcp server","claude code","cli"],"repository":{"url":"git+https://github.com/Avijit07x/cursorcam.git","type":"git"},"description":"Ask your AI agent for a demo video. CursorCam clicks through your web app and renders a polished MP4 that zooms in on each click, from any MCP agent, Claude Code or the CLI.","maintainers":[{"name":"avijit07x","email":"deyavijit134@gmail.com"}],"readme":"<div align=\"center\">\n\n<h1>\n  <picture>\n    <source media=\"(prefers-color-scheme: dark)\" srcset=\"./assets/logo-wordmark-dark.svg\" />\n    <img alt=\"CursorCam\" src=\"./assets/logo-wordmark-light.svg\" height=\"64\" />\n  </picture>\n</h1>\n\n**Ask your AI agent for a demo video.** It clicks through your web app and hands back a polished MP4 that zooms in on each click. Works with any AI agent, or on its own as a CLI.\n\n[Website](https://cursorcam.vercel.app) &nbsp;·&nbsp; [Changelog](./CHANGELOG.md) &nbsp;·&nbsp; [Contributing](./CONTRIBUTING.md)\n\n<p>\n  <a href=\"https://www.npmjs.com/package/cursorcam\"><img alt=\"npm\" src=\"https://shieldcn.dev/npm/v/cursorcam.svg?variant=secondary&size=xs&theme=zinc\" /></a>\n  <a href=\"https://github.com/Avijit07x/cursorcam/stargazers\"><img alt=\"GitHub stars\" src=\"https://shieldcn.dev/github/stars/Avijit07x/cursorcam.svg?variant=secondary&size=xs&theme=zinc\" /></a>\n  <a href=\"https://github.com/Avijit07x/cursorcam/graphs/contributors\"><img alt=\"Contributors\" src=\"https://shieldcn.dev/github/contributors/Avijit07x/cursorcam.svg?variant=secondary&size=xs&theme=zinc\" /></a>\n  <a href=\"https://github.com/Avijit07x/cursorcam/commits\"><img alt=\"Last commit\" src=\"https://shieldcn.dev/github/last-commit/Avijit07x/cursorcam.svg?variant=secondary&size=xs&theme=zinc\" /></a>\n  <a href=\"./LICENSE\"><img alt=\"License Apache-2.0\" src=\"https://shieldcn.dev/github/license/Avijit07x/cursorcam.svg?variant=secondary&size=xs&theme=zinc\" /></a>\n</p>\n\n</div>\n\n<a href=\"./assets/demo.mp4\"><img alt=\"A video made with CursorCam: in a sample issue tracker it creates an issue with a title, description, priority and assignee, opens it and posts a comment, zooming in where each action happens\" src=\"./assets/demo.webp\" width=\"100%\" /></a>\n\n<p align=\"center\"><sub>Made with CursorCam from 13 steps. <a href=\"./assets/demo.mp4\">Watch the full-quality MP4</a> (1080p, 60 fps).</sub></p>\n\n---\n\n## Setup\n\n**You need** Node.js 22.13+ and Chrome, Edge, Chromium or Brave 120+. CursorCam uses the browser you already have and downloads nothing.\n\n**Install it in your agent:**\n\n| Agent | Install |\n| --- | --- |\n| Claude Code | `/plugin marketplace add Avijit07x/cursorcam`, then `/plugin install cursorcam@cursorcam` and `/reload-plugins` |\n| Codex | `codex plugin marketplace add Avijit07x/cursorcam`, then `codex plugin add cursorcam@cursorcam` |\n| VS Code and GitHub Copilot | Add `Avijit07x/cursorcam` to `chat.plugins.marketplaces`, then install it from `@agentPlugins` |\n| Gemini CLI | `gemini extensions install https://github.com/Avijit07x/cursorcam` |\n| Cursor | [One-click MCP install](./docs/agents.md#cursor) |\n| Claude Desktop | Open [`cursorcam.mcpb`](https://github.com/Avijit07x/cursorcam/releases/latest/download/cursorcam.mcpb) |\n| Any other app | The MCP server, `npx -y cursorcam mcp`. See the [MCP guide](./docs/mcp.md) |\n\n[Your AI agent](./docs/agents.md) has each one step by step.\n\n**Then ask for a video:**\n\n```\nMake a 20 second demo of http://localhost:3000: sign up and create a project.\n```\n\nYou get `video.mp4` (1080p, 60 fps) and a `poster.jpg` thumbnail in a run folder inside `cursorcam-output/`. Add that folder to `.gitignore`.\n\n## How it works\n\nYour agent explores your app, writes the steps and records them in a hidden browser. Then it checks stills of the video and fixes anything that looks wrong.\n\nIf it needs a login or a 2FA code, it asks you. What you type is used for that run only and never saved.\n\n## Use the CLI\n\nThe MCP server and the plugins run the `cursorcam` CLI. You can run it yourself too:\n\n```bash\nnpx cursorcam doctor\nnpx cursorcam run steps.json\n```\n\n```json\n{\n  \"url\": \"http://localhost:3000\",\n  \"steps\": [\n    { \"click\": \"role=button[name='Get started']\" },\n    { \"type\": \"alex@example.com\", \"into\": \"label=Email\" },\n    { \"press\": \"Enter\" },\n    { \"waitFor\": \"text=Dashboard\" }\n  ]\n}\n```\n\n## Docs\n\n| Guide | Covers |\n| --- | --- |\n| [Getting started](./docs/getting-started.md) | Set up CursorCam and make your first video |\n| [Your AI agent](./docs/agents.md) | Install it in Claude Code, Codex, VS Code, Gemini CLI, Cursor or Claude Desktop |\n| [MCP server](./docs/mcp.md) | Set it up by hand in any MCP app, and every tool it offers |\n| [Better videos](./docs/better-videos.md) | How to ask your AI agent, with example requests and tips |\n| [Steps file](./docs/steps.md) | Every action, target and option |\n| [Look and size](./docs/style.md) | Presets for X, LinkedIn, YouTube and Discord, formats, backgrounds and zoom |\n| [Logins and secrets](./docs/logins.md) | Passwords, 2FA codes and saved logins |\n| [CLI](./docs/cli.md) | Every command, the run folder and exit codes |\n| [Troubleshooting](./docs/troubleshooting.md) | Common errors and how to fix them |\n| [Examples](./docs/examples/) | Steps and style files to copy and edit |\n\n## Contributing\n\nBug reports and pull requests are welcome. See [CONTRIBUTING.md](./CONTRIBUTING.md). To report a security problem, see [SECURITY.md](./SECURITY.md).\n\n## License\n\n[Apache-2.0](./LICENSE)\n","readmeFilename":"README.md"}