{"_id":"@abyrd9/capture-cli","name":"@abyrd9/capture-cli","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@abyrd9/capture-cli","version":"0.1.0","description":"Record AI-agent browser runs as tab-scoped WebM videos.","type":"module","bin":{"capture":"bin/capture"},"scripts":{"capture":"bun src/cli.ts","test":"bun test","typecheck":"tsc --noEmit","check":"bun run typecheck && bun test","release":"bash release.sh"},"author":{"name":"Andrew Byrd"},"license":"MIT","publishConfig":{"access":"public"},"engines":{"bun":">=1.3.14"},"dependencies":{"effect":"^3.22.0","ffmpeg-static":"^5.3.0"},"devDependencies":{"@types/node":"^26.1.1","bun-types":"^1.3.14","typescript":"^7.0.2"},"gitHead":"51c5cf64c605f24cf522f7caff625a66478ec9b9","_id":"@abyrd9/capture-cli@0.1.0","_nodeVersion":"25.8.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-mMGjwGx0njsumcnTlGq76OwmddZ+KYfYwKaDWnjgFWS9ppH0zpDd3RF23WlCkEbV6F6ehRwCoQy1FIKO8zkq6w==","shasum":"5a472bfa33db51d77db4f1f40d4b32ab965c7fdb","tarball":"https://registry.npmjs.org/@abyrd9/capture-cli/-/capture-cli-0.1.0.tgz","fileCount":9,"unpackedSize":34306,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCUyU7Cto3DwkvDkxvXjxKNkBc6sR1jM5UOaCK7/qrwhgIgV5MofAYiutr4pQLmLeF2L7ZKUtjBWQArGC6FF8JsEP0="}]},"_npmUser":{"name":"abyrd","email":"andrew.byrd99@gmail.com"},"directories":{},"maintainers":[{"name":"abyrd","email":"andrew.byrd99@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capture-cli_0.1.0_1785008646684_0.26523473505746353"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-25T19:44:06.529Z","0.1.0":"2026-07-25T19:44:06.809Z","modified":"2026-07-25T19:44:07.006Z"},"maintainers":[{"name":"abyrd","email":"andrew.byrd99@gmail.com"}],"description":"Record AI-agent browser runs as tab-scoped WebM videos.","author":{"name":"Andrew Byrd"},"license":"MIT","readme":"# capture-cli\n\nA Bun command-line recorder for AI-agent browser runs. It records one Chrome\ntab per capture, groups related captures into named runs, and serves a local\ngallery with the run description and videos.\n\n## Install\n\nInstall [Bun](https://bun.sh), then install the CLI:\n\n```bash\nbun add --global @abyrd9/capture-cli\n```\n\n## Local development\n\n```bash\nbun install\nbun link\n```\n\nStart Chrome with remote debugging and a separate profile:\n\n```bash\n\"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome\" \\\n  --remote-debugging-port=9222 \\\n  --user-data-dir=/tmp/capture-cli-chrome\n```\n\n## Record a run\n\nCreate the run first. Related agent captures can share the returned\n`run.json` path.\n\n```bash\ncapture run create \\\n  --title \"Template landing page\" \\\n  --description \"The agent opens the template site and checks its main navigation.\"\n```\n\nFind the exact Chrome tab:\n\n```bash\ncapture targets web\n```\n\nStart recording it:\n\n```bash\ncapture start web \\\n  --run /absolute/path/to/run.json \\\n  --target TARGET_ID \\\n  --label \"Navigation agent\"\n```\n\nThe start command returns a `session.json` path. Let the agent work, then stop\nthe capture:\n\n```bash\ncapture stop /absolute/path/to/session.json\n```\n\nStart more than one capture with the same run file to record several tabs at\nonce. Each tab gets its own worker and video.\n\n## View runs\n\n```bash\ncapture serve --runs ./runs --port 4242\n```\n\nOpen [http://127.0.0.1:4242](http://127.0.0.1:4242). The page refreshes every\nfive seconds, so active and completed captures appear without restarting it.\n\n## Try it with abyrd-template\n\nRun the template's standalone website:\n\n```bash\nWEBSITE_PORT=4300 bun run --cwd ~/Development/personal/abyrd-template/packages/website start\n```\n\nOpen `http://127.0.0.1:4300` in the debug Chrome window, then use the commands\nabove.\n\n## Storage\n\nEverything lives under `runs/` by default:\n\n```text\nruns/\n  run_.../\n    run.json\n    sessions/\n      cap_.../\n        session.json\n        video.webm\n        worker.log\n```\n\nThere is no database or background daemon. A capture worker exits when stopped\nor after its timeout, which defaults to 15 minutes.\n\n## Current scope\n\nThe first working slice records Chrome tabs. Desktop, iOS Simulator, Android\nEmulator, logs, and network events are not implemented yet.\n","readmeFilename":"README.md","_rev":"1-80542f1d98799afac5695a12866fd8e0"}