{"_id":"@ricsam/isolate-client","_rev":"27-f937b802422ced56d5e20f0ccdd7c951","name":"@ricsam/isolate-client","dist-tags":{"latest":"0.1.27"},"versions":{"0.0.1":{"name":"@ricsam/isolate-client","version":"0.0.1","keywords":["oidc","trusted-publishing","setup"],"_id":"@ricsam/isolate-client@0.0.1","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"dist":{"shasum":"51c24433fd937d05856cd322a482f0ee11a5faae","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.0.1.tgz","fileCount":2,"integrity":"sha512-buVQNv+7g9hjtthdgEi81ae8QKqW3c7bwiUnvhyPGCuj2GoiVKygG89jxZz23j6Yka3zdlYhFVJWqt1Vrcs7ag==","signatures":[{"sig":"MEYCIQCSZy2LOnE8UgnOgskp41Fk76AOY130SfkBelt1MNj0GAIhAIBIf6W94qTE3FebmM/+z6RocYcChv6y/YGJ3/llaY55","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2051},"_npmUser":{"name":"ricsam","email":"oss@ricsam.dev"},"_npmVersion":"11.6.2","description":"OIDC trusted publishing setup package for @ricsam/isolate-client","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.0.1_1768416613739_0.8044612053605487","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@ricsam/isolate-client","version":"0.1.0","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.0","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"adc0838ce26d868a3d3df7f3f9d6de032da2c6f3","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.0.tgz","fileCount":19,"integrity":"sha512-Ep/emtJfirYUvuK29eDKTbU90mgDfKpdOLfN3i5TOssSiTA/JUA1oIOptwESR9jRjRC2fd5xtpAB4a9QxEgFAw==","signatures":[{"sig":"MEQCIATqsMBgLU3glzaNoQEhBbD+ovzpa2EXVVsX49hX7fbFAiAs2x0GjMQyElvnSycsxV1R8x7Q1+LEC/us86RVVOYsww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105110},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"e88cc6bff40f900eacb71dedea945b8efd69f1e5","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.0_1768419651923_0.572142716777218","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@ricsam/isolate-client","version":"0.1.1","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.1","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"50101187b6d38017827dfdcf00c6326d77ae05e2","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.1.tgz","fileCount":19,"integrity":"sha512-B20vpEABeGLY78UEv2qAEwulw+v+KAmxKz3lJN+XyLjMLxTs4zdz7UVDMFC4J4nSsiCC1HmrdDKNWIx9DXhqzA==","signatures":[{"sig":"MEUCIQCMzZngp6XfR9Ul5VgAIEm0bOjPhpcNURXEmL3wKq9SZAIgCBORRpRsIyu95Xl3/OUZ1D00J/0TC6ysfVd4LYRsrCA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105110},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"6e7f443ef1f7bb81fc0c16e733f6a790f85e9534","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.1_1768420233889_0.46740168433165485","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@ricsam/isolate-client","version":"0.1.4","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.4","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"64015d164e00c94f7fca8ab8dcb3070fd4d91d4d","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.4.tgz","fileCount":19,"integrity":"sha512-VGVDUhF1brf3MH54lMHmBnrPBB4rHgPjWGbZnR3qt+fxt0LK66U9kc3OY22K87Vf/kqd1gUyXAF0THAc7NzWBQ==","signatures":[{"sig":"MEUCIQD2j4ZXyP1yG2/XWc5cvYLhhEPHinK6zF4if+yrFxzzPQIgOiMMD+WEzjloYnTreeC/99BUBW44sUcgASDYPLPDdXE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":260880},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"ee5a2b8d20bb2473ae78e63233048d649ef2c4cd","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.4_1768560440013_0.5179353057340115","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@ricsam/isolate-client","version":"0.1.5","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.5","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"bd85166bf808b47a83d4ba24e06462f454c5d96e","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.5.tgz","fileCount":19,"integrity":"sha512-6DVT/OrZ/60dAIR5+SQO5gEN43va4dozKWxd/QKtPFdHbH+ILmkikvhP+0vmnJ71FEwdwy4PMCnebu2jHq8v/w==","signatures":[{"sig":"MEYCIQDDZz/W66SzYjKlvH2eNxz1XxZYknXpqI11AClZJV9gTwIhAOenUQDMMyRh+TkM5mnbyQS3QFCuFEQwUdsthEgk0qaL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":271539},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"5daf2a1a9ca585c670e5acf90575c1f24add49b9","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.5_1768591894654_0.7584297985489357","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@ricsam/isolate-client","version":"0.1.6","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.6","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"2feb38ab964e962b0b9483ade84bc2223097c9ce","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.6.tgz","fileCount":19,"integrity":"sha512-p0n5a0n9A8hctkKXjo/eOLYyTQxwEi7ynLTbbyi/wZXGu+BTQTT1v568xQygVPS5KUNejhXJZ3eprG7wpq+tiQ==","signatures":[{"sig":"MEQCIGLfMehdbqION0j10NPciqw8LMBtOfdvUdgj+Is3Q1x7AiARVoN/iiRBJeR/6E+Y72BUVq9QiGNAC6V3bb9X9fB4NQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":289870},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"b73ffa4ff205e29f11d30fa2e86e6f0e302e0ccd","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.6_1768858286903_0.6012250468066287","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@ricsam/isolate-client","version":"0.1.7","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.7","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"e2eb7ddd0b0022df7c4f00831d3b4b37d7e1b578","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.7.tgz","fileCount":19,"integrity":"sha512-H1yZrh2243URdiKcANNkSnPeYgaonKgw6MySe3LxKRqMhdrI+kmGNPK6CTNgNz6GSiVnDiwx/0IHFfMYcnwKRA==","signatures":[{"sig":"MEUCIFhzZfXoQ1POvzffjGisBUSJiw4kT+CXuGUI9PP3XrAIAiEA32cPiL+dDjiim1CjpPJtR2kBR4XuzFj96EVGIx52gSk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":289612},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"a4aef4b82b496c3ce632e002ecb4243726d087e7","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.7_1768891527451_0.8405644974609054","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@ricsam/isolate-client","version":"0.1.8","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.8","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"f9d483948f22bdffc15e2e9779c899521d4127d1","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.8.tgz","fileCount":19,"integrity":"sha512-kNvjB1uC4e8IFET+ak7HDUe/aTRpWMa1z7Hdom0BxCsg1rl/MYTTE2rMzl9X3hjoYa6RkL5iup0kO1rE8vQYqQ==","signatures":[{"sig":"MEUCIQCXTHXHTtzjFj1AOsR8tgY4eFsHZkggvycaHLhP6YQBSgIgbYwzWYRs8ZjklJIXe3UTKKPRux1EfTUlO9a07BfIJ74=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":306630},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"186d09f19268ada0eed74b76ffc35db292a29db1","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.8_1768919023272_0.5193434412230435","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@ricsam/isolate-client","version":"0.1.9","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.9","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"c83cdb8ac1ad6aa75bf45096d1cfe70af1c67f20","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.9.tgz","fileCount":19,"integrity":"sha512-FVCP742ghyBgh0Nt+4j22ujI8fhmFYNBc9rPxwZKFPX/GXsuHaGxNuN4l+m08Se3gL6eM0/xcUJQiiU72JOxNg==","signatures":[{"sig":"MEUCIDFfeQAR/kJ1DtpIm4u8TF5xuJRzWor99DL2K0qR9pMsAiEA3riHFttusZoSSPd6OL76x/dcjJfE5VRGmeaJFgS1Dbw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":303650},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"8ff1bec8c2c2397b0b106d4828460cb9d99cd099","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:c1700946-339b-4ecd-ba79-94e0b4da3682"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.7.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.9_1769013793604_0.4107435985643242","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@ricsam/isolate-client","version":"0.1.10","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"Richard Samuelsson"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.10","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"d390b1dc2c99700b2c389637aa97bffacd63629f","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.10.tgz","fileCount":19,"integrity":"sha512-riCr0bMYIS4yskUbf3X9IGiYojmBcH5RD1l5cNRxd2gVHeBleeki2AItVz5HAY2akKccQQw8HP0R9O4uQPvQag==","signatures":[{"sig":"MEUCIQDKLxdldIeGYYtQprpOJpq/4oec/CAqQ/efsUpitd6MiAIgIcG602DY194k80lRqJn6kwoSnxj/+E1n/cooL1KAMrU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":305192},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"00b7b7438808a8b63710ee96df46ae0a331736e6","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git"},"_npmVersion":"11.8.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.10_1769445847230_0.5395360164866898","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@ricsam/isolate-client","version":"0.1.11","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.11","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"f34f19bf91a33740beff5ead4001c603a9a73699","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.11.tgz","fileCount":19,"integrity":"sha512-Q+42udx/8iuZnFJcYuuO2EQKBLHVCe8oGcyc45xDFIjAmuskwjISa6gVJ0rox32C3IcPZafghahEmu4JLnhnYA==","signatures":[{"sig":"MEYCIQDDzMX6uQqfP3Hd248uZms/MQMghTVMGKSxv8pgOyWNPgIhAOtUZolU9/LqvrR/qRaBc7PXrx93MU+xGa54AOM9Q/tW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304713},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"44e615dbbdbbe3cef50b0168b209aa5145bb101c","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.8.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.11_1769759311621_0.4813415506917549","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@ricsam/isolate-client","version":"0.1.12","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.12","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"93c19f68219066ce1b5eece78e2bc542bcd2c810","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.12.tgz","fileCount":19,"integrity":"sha512-8ncZKIk8NwfqMxVz+RylexqRt5p8OQMVMQU0Z9pclZbnWspHRCkII4/fP82NT5raTY56xfo5pDhOzYsPBvWZEA==","signatures":[{"sig":"MEYCIQDiPXA5ONdKIeiuiFHXwOLuBy0NAkqf6cLXe0I5R1pnuwIhAJ+teQzETBBd6cuBp8isxd9NtlLOrgkPXHWy3hbbpvL6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":304713},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"0bec8cdb48129ee5c15ebce80b3ef04fb2fd6904","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.8.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.12_1769762464741_0.2756979988598296","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@ricsam/isolate-client","version":"0.1.13","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.13","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"d32b7ee2d794e4a38ab85ada24c7bee090f19fb2","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.13.tgz","fileCount":19,"integrity":"sha512-cMsI1JzJdlbArqQMANN0WjT/oDQmaQP82tV2R8WwkgNAI8hGsFoyjRB7JnPoNt0B8D6v7vx6Hr53UMMA9oqOig==","signatures":[{"sig":"MEUCIEEe3VyLE0uYMiIunMkmYEg3ce0oOLQseWl1W+ND1m7LAiEA4J6Yd4AAQoc/fuis4bf8WU7GdG5Y0Kvi7esyWEPlO3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":307758},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"ecf21924a925d26f1eece57eb12bb9b484ec37a0","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.8.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.13_1770019714725_0.9547075886002307","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@ricsam/isolate-client","version":"0.1.14","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.14","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"bdb386739142e9adbdf53e621cc356697376a3c7","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.14.tgz","fileCount":19,"integrity":"sha512-AP1CLXyRcKJWSi93l8l2Zte7tPiXNC3OhXf0rxmCyCqWE9iQ75XKdysPP3l4msj9EyONfL02EPUjjZCDx2PRuA==","signatures":[{"sig":"MEUCIQCVbc2GSlR6Wt/ujUdooLp3pIOspRoxgRycj71zln0tqwIgY7xFbkQzAO83YXM0I7vIWt9UtmRJcR7CbRMzM3mKs1o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":307460},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"127d54046a2fa532664500eb0ac98d6ab073a3db","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.8.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.14_1770047784065_0.5242692785573067","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@ricsam/isolate-client","version":"0.1.15","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.15","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"0960f764d0a527d8f6838969d8b435bf78888d0a","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.15.tgz","fileCount":19,"integrity":"sha512-3vLiZ0YquD09K3DLP84sPX78huBX7EzTRdAwjAyRVnvc7JotavKbBBqxe7sGh0CWHV2Fkh3jqBRno4DmfYnVAg==","signatures":[{"sig":"MEUCIEQB4hPUTz1Gd29CserXT5WtCQMqxARL6n7uKliQNN/6AiEA+sZQm0bW3UfboxyUAejcibYwhWf4s7g7lMaoIKkceNY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":351784},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"3b8489adb59f33004fe2dcd530b5aca223b8e0ba","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.9.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.15_1770322631290_0.9042193385151667","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@ricsam/isolate-client","version":"0.1.16","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.16","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"649974cc72b74bb2377735a34eb650c48e37673f","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.16.tgz","fileCount":19,"integrity":"sha512-ko8YBswapkiy113VMQGnQ5lNrVPhpL0ynz1Zp5ea9/uyRt4DUR0pZElnIUmjYwcVIPxLw9It86xMByXsy0MLmg==","signatures":[{"sig":"MEUCIQCS5r/VSJnuNdeoWp7G1j0dPlsjpeLY4A12jgLSgDRb+AIgBnbAQIy4IZ4RlUQWipNFa2gKFTbdiPW4IJnQ0VbXtGg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":358852},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"8e4e8ac607eecbcd90a83ac93916c935bac576e3","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.9.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.16_1770464466907_0.45724011341913484","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@ricsam/isolate-client","version":"0.1.17","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.17","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"0d07b7ef986c825c7135ff86ec23e79e15b42a58","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.17.tgz","fileCount":19,"integrity":"sha512-fXMYN0w/OrJ8kWAMehkKLHxNOzUGzJLd0gBVxndQ//VxURxv8Zd1fm6w1mrzO173EUe6JiBh+KPF/56xbz8FLQ==","signatures":[{"sig":"MEUCIQDkKqpoEp7zufI/Tw59pm2EmMlj/2hKK26UzFNRS3H8OwIgFR8D1vvj24CA3OkjOUXYgD/DNJO8KH3JVJfA61fi/rA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":386443},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"78d43903ac7342572b4b2f9acdd2ddc83dbe52cb","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.10.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.17_1771321709660_0.19384017684145038","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@ricsam/isolate-client","version":"0.1.18","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.18","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"bcb1b02b645d4c55378b56ced4bd90c67f476aca","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.18.tgz","fileCount":19,"integrity":"sha512-l782kLn8g/dHJox21k2L6SWXinpeaE1HDuDBgATvl6VBrjnJIyJ1I3G+Df6oJK0p5XZm4Cmpi2ut31hItNFpaA==","signatures":[{"sig":"MEUCIQCefoJWJbie1bvhZlSkuiLES/tXO0nXJeUOisTuZI4uXAIgTBKwzbZE1HWmYYH6fKwGOZ4VbshUrCEwlxWT6+uTPbQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":391556},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"c2ce5226e65ea60067186d4cc8493556d9a2e7a1","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.10.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.18_1771595587473_0.12562575289234945","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@ricsam/isolate-client","version":"0.1.19","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.19","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"3c7307fcd5f1b6a64c6444c2ba137061ccc487b6","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.19.tgz","fileCount":19,"integrity":"sha512-UGDRpOX1Ast6rlWzsrJuL/dTtsP1fKHXw3bJxfiXThK7r/MUJpd9aI11KR3FLnn1smgyVKr7yK2AIPH5BtUgxQ==","signatures":[{"sig":"MEYCIQDYysX5nbk7wKOt11Kq01DE+eLzpNpEY0QjWUGwbmE+QQIhAKZMK6Knv0S8Q6QlX7SdKYLyrTcX7gjWz+jqDtNlOP8b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":392430},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"1d9a4c7db01565ec4c96f32fc765e3f0db230883","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"*","@ricsam/isolate-playwright":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.19_1772706756507_0.2854303880796061","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@ricsam/isolate-client","version":"0.1.20","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.20","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"77eef35b51baae7efb01f00692174c538b86a91f","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.20.tgz","fileCount":19,"integrity":"sha512-qx0TkPkxO0xuWHBIDhzb/uxcGm7Cft7Of1I8nO8WyY2nUCM0Uk/QDiQa/8SuoNfUn7D9tOlfyV+VKTa70TRIMg==","signatures":[{"sig":"MEYCIQDc77HDP7qmAoiQm3K18zBHytlE4tZSSXOF+7MYsSGllAIhAPfJNUq/hvTP7DmOk8Itq+7inubfgFnZSs8JZUXvNdUs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":392440},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"af851d6415b6dadc46b3053ece969f4c4a6976f4","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.17","@ricsam/isolate-playwright":"0.1.17"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.20_1773304957904_0.9436096166044261","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@ricsam/isolate-client","version":"0.1.21","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.21","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"c3c38949bf639abaa0cf3bd64bc46252f0cbd54c","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.21.tgz","fileCount":19,"integrity":"sha512-rIObWLryTElwMGUV6xiQNCJFRpbUYNmUo45whUFSnvpUzGm3Au6w6B60H0FXg+dRVQCIaEFyzCBVIVwZ7nZpng==","signatures":[{"sig":"MEYCIQDPSs3msFNSd2U5r7JEfqdouAHHn0kM+ayvyudyGKM12wIhAK9g3kMx/Eq0oJ0HFQ8O00Ve0/b3senwh/ofH1p3YIvp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":399855},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"1f1982da4081050a06a9687a5275ecf28313e710","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.18","@ricsam/isolate-playwright":"0.1.18"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.21_1773311003299_0.42424985752337707","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@ricsam/isolate-client","version":"0.1.22","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.22","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"45e852e05f270f17f601a12eb81986b2418d19ed","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.22.tgz","fileCount":19,"integrity":"sha512-rnJWwHY+39QVJ9y7tkDt2+0kpFrA6Uq7Ny+3SRO/53atercM4DPRJSa9p3Mvad2p71MjosPdogJ5aYOoiNJeFg==","signatures":[{"sig":"MEUCIQDm/s/aL8yJrVxk4XMJ1bIYmu4io6sQDcrzcFHD+p2iuQIgWhtdQMES06+/5hmnZvyiEgXr6UsDOYq9eo4ZHFHZ9PA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.22","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":400617},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"f7646657dc07e486e413c128282977c9c19f08c9","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.19","@ricsam/isolate-playwright":"0.1.19"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.22_1773315548000_0.5997660670497618","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@ricsam/isolate-client","version":"0.1.23","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.23","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"4d258fe0534b02e1381d24255ae6864323debf39","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.23.tgz","fileCount":19,"integrity":"sha512-ryFKcApLsjwzleYnnz7LNvEF1UlzM3qWjq8EVWr5Ebkkl7X+u0+NyL5sYV2cNo7fya+Fv33iL0JtGbbyVImeVg==","signatures":[{"sig":"MEUCID21Y3R7up6q9ozupFX+Srbh3f0vuZvg9UwTFlGx/UzoAiEAwHBd/q/2L+6VXxvwVr10PP3fn08Fm9+GrFqMStUOJKI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.23","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":409594},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"5f25179363d9ef00bf9ae588903a0df4df3c897d","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.20","@ricsam/isolate-playwright":"0.1.20"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.23_1773326246210_0.8425014356831297","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@ricsam/isolate-client","version":"0.1.24","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.24","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"6cf7dabb193f1267aaee400852b8d47db64a7c77","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.24.tgz","fileCount":19,"integrity":"sha512-5RsKiCzCn9tcyM4tR/DOhE21/FoOuZabgv1pPSR966aGbcrXNjLHk5ZJe8uJXxFJpFas8MasmzyTQzX05PT9ng==","signatures":[{"sig":"MEUCIEoP8GwMlEQhZWJOdTKtcMS5ZXyzb6oQUARN+XdZEQghAiEA91npibS2i6WJfJbWFr9yeQX0NV3ZRc2OxVBg5HAEY3w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.24","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410404},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"c3c74336372420b18ec34252715631d45f394fd5","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.11.1","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.21","@ricsam/isolate-playwright":"0.1.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.24_1773677858522_0.11554359836915706","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@ricsam/isolate-client","version":"0.1.25","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.25","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"cf8a21efd46cc705289c0afba992ff1bd18fc03e","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.25.tgz","fileCount":19,"integrity":"sha512-wHxU5Ci+UA4z6LZ+c5b0FkpFvVHr3Hhe0h5tWA8JwG8h6ncD2xedIbcfCtD6wcRdDP8gghDagYkkchR3yqgT9A==","signatures":[{"sig":"MEUCIQDtJk0cM6MCoNdtVlBw0giwghcTaqoyWmDD3jg2CFRP/gIgMcsQzLfuceQ1B0WMRBx/4UZTPzPk+AQd2Wr4fVZKO+o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.25","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410404},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"4b69f3af6d2fe4795f2a5d94a83ea789ad812617","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.12.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.21","@ricsam/isolate-playwright":"0.1.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.25_1773955664876_0.4840044782159718","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"@ricsam/isolate-client","version":"0.1.26","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","_id":"@ricsam/isolate-client@0.1.26","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"homepage":"https://github.com/ricsam/isolate#readme","bugs":{"url":"https://github.com/ricsam/isolate/issues"},"dist":{"shasum":"dc57ebfa06b560c7e2e657998cb3d78c88b31a86","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.26.tgz","fileCount":19,"integrity":"sha512-5gJpgTkFERnJSY+eHaKZ7HNGMw7ro0w7j1RyRl6NVXA9lWEbhfEfNBOXKV3tUh/VIosv09sgBXwkgFqLqAJ73A==","signatures":[{"sig":"MEUCIG/9YAa8ED8eCo7b3aY2xs7YKIbBr82N1T0FFeTWsux3AiEAqGHEThhIwfpek3leQDJ5qzvmXC84dL+rp4lbcHyc2T0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.26","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":411795},"main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","module":"./dist/mjs/index.mjs","exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/mjs/index.mjs","require":"./dist/cjs/index.cjs"}},"gitHead":"1a3de5be58b27be0bcb23414111d75fcd9ef49df","scripts":{"test":"node --test --experimental-strip-types 'src/**/*.test.ts'","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"repository":{"url":"git+https://github.com/ricsam/isolate.git","type":"git","directory":"packages/isolate-client"},"_npmVersion":"11.12.0","description":"Client library for connecting to the isolate daemon from any JavaScript runtime","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@ricsam/isolate-protocol":"0.1.22","@ricsam/isolate-playwright":"0.1.22"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/isolate-client_0.1.26_1773997134818_0.648513134928091","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"@ricsam/isolate-client","version":"0.1.27","main":"./dist/cjs/index.cjs","types":"./dist/types/index.d.ts","exports":{".":{"types":"./dist/types/index.d.ts","require":"./dist/cjs/index.cjs","import":"./dist/mjs/index.mjs"}},"scripts":{"build":"tsc","test":"node --test --experimental-strip-types 'src/**/*.test.ts'","typecheck":"tsc --noEmit"},"dependencies":{"@ricsam/isolate-playwright":"0.1.23","@ricsam/isolate-protocol":"0.1.23"},"peerDependencies":{"playwright":">=1.40.0"},"peerDependenciesMeta":{"playwright":{"optional":true}},"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/ricsam/isolate.git","directory":"packages/isolate-client"},"bugs":{"url":"https://github.com/ricsam/isolate/issues"},"homepage":"https://github.com/ricsam/isolate#readme","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"description":"Client library for connecting to the isolate daemon from any JavaScript runtime","module":"./dist/mjs/index.mjs","publishConfig":{"access":"public"},"gitHead":"2b6b3377c3c01d5c085b15b6086694199288f6cf","_id":"@ricsam/isolate-client@0.1.27","_nodeVersion":"24.14.0","_npmVersion":"11.12.0","dist":{"integrity":"sha512-1ay2dvi307BrmSGft2MpuMOvCEK+nhgi/J595lVOLZgSxINwES0HgFFpA/vCLkamQH5SCuEmWHoG6qpltll3cw==","shasum":"6872512f2c12bb0273252aa14da9b55e6f361b88","tarball":"https://registry.npmjs.org/@ricsam/isolate-client/-/isolate-client-0.1.27.tgz","fileCount":19,"unpackedSize":427115,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@ricsam%2fisolate-client@0.1.27","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCkuhp+cjevWOTqMbOKcaxh51y+KRuJaR4bh1Ljp9fcvgIhAPWkyZf+owxF2FQwbgAn//y6uvTfYBrFN25OR9GD/jEl"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:9668fc9e-d26b-40de-9312-aada68df59e2"}},"directories":{},"maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/isolate-client_0.1.27_1774350510500_0.4608598029436257"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-14T18:50:13.596Z","modified":"2026-03-24T11:08:30.948Z","0.0.1":"2026-01-14T18:50:13.890Z","0.1.0":"2026-01-14T19:40:52.073Z","0.1.1":"2026-01-14T19:50:34.086Z","0.1.4":"2026-01-16T10:47:20.158Z","0.1.5":"2026-01-16T19:31:34.812Z","0.1.6":"2026-01-19T21:31:27.042Z","0.1.7":"2026-01-20T06:45:27.597Z","0.1.8":"2026-01-20T14:23:43.434Z","0.1.9":"2026-01-21T16:43:13.779Z","0.1.10":"2026-01-26T16:44:07.367Z","0.1.11":"2026-01-30T07:48:31.759Z","0.1.12":"2026-01-30T08:41:04.893Z","0.1.13":"2026-02-02T08:08:34.869Z","0.1.14":"2026-02-02T15:56:24.218Z","0.1.15":"2026-02-05T20:17:11.465Z","0.1.16":"2026-02-07T11:41:07.053Z","0.1.17":"2026-02-17T09:48:29.815Z","0.1.18":"2026-02-20T13:53:07.703Z","0.1.19":"2026-03-05T10:32:36.715Z","0.1.20":"2026-03-12T08:42:38.123Z","0.1.21":"2026-03-12T10:23:23.454Z","0.1.22":"2026-03-12T11:39:08.189Z","0.1.23":"2026-03-12T14:37:26.408Z","0.1.24":"2026-03-16T16:17:38.695Z","0.1.25":"2026-03-19T21:27:45.027Z","0.1.26":"2026-03-20T08:58:54.968Z","0.1.27":"2026-03-24T11:08:30.660Z"},"bugs":{"url":"https://github.com/ricsam/isolate/issues"},"author":{"name":"ricsam","email":"oss@ricsam.dev"},"license":"MIT","homepage":"https://github.com/ricsam/isolate#readme","keywords":["isolated-vm","sandbox","javascript","runtime","fetch","filesystem","streams","v8","isolate"],"repository":{"type":"git","url":"git+https://github.com/ricsam/isolate.git","directory":"packages/isolate-client"},"description":"Client library for connecting to the isolate daemon from any JavaScript runtime","maintainers":[{"name":"ricsam","email":"oss@ricsam.dev"}],"readme":"# @ricsam/isolate-client\n\nClient library for connecting to the isolate daemon. Works with **any JavaScript runtime** (Node.js, Bun, Deno) since it only requires standard socket APIs.\n\n## Installation\n\n```bash\nnpm add @ricsam/isolate-client\n```\n\n## Features\n\n- Connect via Unix socket or TCP\n- Create and manage remote runtimes\n- Execute code in isolated V8 contexts\n- Dispatch HTTP requests to isolate handlers\n- Bidirectional callbacks (console, fetch, fs)\n- Module loader for custom ES module resolution\n- Custom functions callable from isolate code\n- Test environment and Playwright support\n- **Namespace-based runtime caching** for performance optimization\n\n## Basic Usage\n\n```typescript\nimport { connect } from \"@ricsam/isolate-client\";\n\n// Connect to daemon\nconst client = await connect({\n  socket: \"/tmp/isolate-daemon.sock\",\n  // Or TCP: host: \"127.0.0.1\", port: 47891\n});\n\n// Create a runtime with callbacks\nconst runtime = await client.createRuntime({\n  memoryLimitMB: 128,\n  console: {\n    onEntry: (entry) => console.log(\"[isolate]\", entry),\n  },\n  fetch: async (url, init) => fetch(url, init),\n});\n\n// Execute code (always ES module mode)\nawait runtime.eval(`console.log(\"Hello from isolate!\")`);\n\n// Set up HTTP handler and dispatch requests\nawait runtime.eval(`\n  serve({\n    fetch(request) {\n      return Response.json({ message: \"Hello!\" });\n    }\n  });\n`);\n\n// Dispatch requests via fetch handle\nconst response = await runtime.fetch.dispatchRequest(\n  new Request(\"http://localhost/api\")\n);\nconsole.log(await response.json()); // { message: \"Hello!\" }\n\n// Timers fire automatically with real time\n// Clear all pending timers if needed\nawait runtime.timers.clearAll();\n\n// Console state access\nconst counters = await runtime.console.getCounters();\n\n// Cleanup\nawait runtime.dispose();\nawait client.close();\n```\n\n## Namespace-Based Runtime Caching\n\nFor performance-critical applications, use **namespaces** to cache and reuse runtimes. Namespaced runtimes preserve their V8 isolate, context, and compiled module cache across dispose/create cycles:\n\n```typescript\nimport { connect } from \"@ricsam/isolate-client\";\n\nconst client = await connect({ socket: \"/tmp/isolate.sock\" });\n\n// Create a namespace for a tenant/user/session\nconst namespace = client.createNamespace(\"tenant-123\");\n\n// Create a runtime in this namespace\nconst runtime = await namespace.createRuntime({\n  memoryLimitMB: 128,\n  moduleLoader: async (name, importer) => {\n    const code = loadModule(name);\n    return { code, resolveDir: importer.resolveDir };\n  },\n});\n\nconsole.log(runtime.reused); // false - first time\n\n// Import heavy modules (gets compiled and cached)\nawait runtime.eval(`\n  import { heavyLibrary } from \"@/heavy-module\";\n  console.log(\"Module loaded!\");\n`);\n\n// Dispose returns runtime to pool (soft-delete)\nawait runtime.dispose();\n\n// Later: reuse the same namespace (same or different connection!)\nconst client2 = await connect({ socket: \"/tmp/isolate.sock\" });\nconst namespace2 = client2.createNamespace(\"tenant-123\");\nconst runtime2 = await namespace2.createRuntime({ /* options */ });\n\nconsole.log(runtime2.reused); // true - reused from pool!\n// Module cache preserved - no recompilation needed\nawait runtime2.eval(`\n  import { heavyLibrary } from \"@/heavy-module\";  // instant!\n`);\n```\n\n### Namespace Interface\n\n```typescript\ninterface Namespace {\n  /** The namespace ID */\n  readonly id: string;\n  /** Create a runtime in this namespace (cacheable on dispose) */\n  createRuntime(options?: RuntimeOptions): Promise<RemoteRuntime>;\n}\n```\n\n### What's Preserved vs Reset\n\n**Preserved on reuse (performance benefit):**\n- V8 Isolate instance\n- V8 Context\n- Compiled ES module cache\n- Global state and imported modules\n\n**Reset on reuse:**\n- Owner connection (new owner)\n- Callbacks (re-registered from new client)\n- Timers (cleared)\n- Console state (counters, timers, groups reset)\n\n### Behavior Notes\n\n- Non-namespaced runtimes (`client.createRuntime()`) work as before - true disposal\n- Namespaced runtimes are cached on dispose and evicted via LRU when `maxIsolates` limit is reached\n- Cross-client reuse is allowed - any connection can reuse a namespace by ID\n- A namespace can only have one active runtime at a time; creating a second runtime with the same namespace ID while one is active will fail\n- Concurrent createRuntime calls for the same namespace are rejected with `Namespace \"<id>\" creation already in progress`\n\n## Module Loader\n\nRegister a custom module loader to handle dynamic `import()` calls. The loader receives the module specifier and importer info, and returns an object with the source code and `resolveDir` (used to resolve nested relative imports):\n\n```typescript\nconst runtime = await client.createRuntime({\n  moduleLoader: async (moduleName: string, importer) => {\n    // importer.path = resolved path of importing module\n    // importer.resolveDir = directory for relative resolution\n    if (moduleName === \"@/db\") {\n      return {\n        code: `\n          export async function getUser(id) {\n            const response = await fetch(\"/api/users/\" + id);\n            return response.json();\n          }\n        `,\n        resolveDir: \"/modules\",\n      };\n    }\n    if (moduleName === \"@/config\") {\n      return {\n        code: `export const API_KEY = \"sk-xxx\";`,\n        resolveDir: \"/modules\",\n      };\n    }\n    throw new Error(`Unknown module: ${moduleName}`);\n  },\n});\n\nawait runtime.eval(`\n  import { getUser } from \"@/db\";\n  import { API_KEY } from \"@/config\";\n\n  const user = await getUser(\"123\");\n  console.log(\"User:\", user, \"API Key:\", API_KEY);\n`);\n```\n\n## Custom Functions\n\nRegister custom functions callable from isolate code. Each function must specify its `type`:\n\n- `'sync'` - Synchronous function, returns value directly\n- `'async'` - Asynchronous function, returns a Promise\n- `'asyncIterator'` - Async generator, yields values via `for await...of`\n\n```typescript\nimport bcrypt from \"bcrypt\";\n\nconst runtime = await client.createRuntime({\n  customFunctions: {\n    // Async function\n    hashPassword: {\n      fn: async (password: string) => {\n        return bcrypt.hash(password, 10);\n      },\n      type: 'async',\n    },\n    // Sync function\n    getConfig: {\n      fn: () => ({ environment: \"production\" }),\n      type: 'sync',\n    },\n    // Async iterator (generator)\n    streamData: {\n      fn: async function* (count: number) {\n        for (let i = 0; i < count; i++) {\n          yield { chunk: i, timestamp: Date.now() };\n        }\n      },\n      type: 'asyncIterator',\n    },\n  },\n});\n\nawait runtime.eval(`\n  const hash = await hashPassword(\"secret123\");\n  const config = getConfig();  // sync function, no await needed\n  console.log(hash, config.environment);\n\n  // Consume async iterator\n  for await (const data of streamData(5)) {\n    console.log(data.chunk);  // 0, 1, 2, 3, 4\n  }\n`);\n```\n\n### Supported Data Types\n\nCustom function arguments and return values support:\n\n- **Primitives**: `string`, `number`, `boolean`, `null`, `undefined`, `bigint`\n- **Web APIs**: `Request`, `Response`, `File`, `Blob`, `FormData`, `Headers`, `URL`\n- **Binary**: `Uint8Array`, `ArrayBuffer`\n- **Containers**: Arrays, plain objects (nested)\n- **Advanced**: `Date`, `RegExp`, `Promise` (nested), `AsyncIterator` (nested), `Function` (returned)\n\n**Unsupported**: Custom class instances, `Symbol`, circular references\n\nSee the [full documentation](#custom-functions) for advanced usage examples including nested promises and returned functions.\n\n## File System Callbacks\n\n```typescript\nconst runtime = await client.createRuntime({\n  fs: {\n    readFile: async (path) => Bun.file(path).arrayBuffer(),\n    writeFile: async (path, data) => Bun.write(path, data),\n    stat: async (path) => {\n      const stat = await Bun.file(path).stat();\n      return { isFile: true, isDirectory: false, size: stat.size };\n    },\n    readdir: async (path) => {\n      const entries = [];\n      for await (const entry of new Bun.Glob(\"*\").scan({ cwd: path })) {\n        entries.push(entry);\n      }\n      return entries;\n    },\n  },\n});\n```\n\n## WebSocket Client Callback\n\nControl outbound WebSocket connections from isolate code. The callback lets you allow, block, or proxy WebSocket connections:\n\n```typescript\nconst runtime = await client.createRuntime({\n  webSocket: async (url: string, protocols: string[]) => {\n    // Block connections to certain hosts\n    if (url.includes(\"blocked.com\")) {\n      return null; // Connection blocked\n    }\n\n    // Proxy to a different server\n    if (url.includes(\"internal\")) {\n      return new WebSocket(\"wss://proxy.example.com\" + new URL(url).pathname);\n    }\n\n    // Allow connection normally\n    return new WebSocket(url, protocols.length > 0 ? protocols : undefined);\n  },\n});\n\n// Isolate code can now use WHATWG WebSocket API\nawait runtime.eval(`\n  const ws = new WebSocket(\"wss://api.example.com/stream\");\n\n  ws.onopen = () => {\n    console.log(\"Connected!\");\n    ws.send(\"Hello server\");\n  };\n\n  ws.onmessage = (event) => {\n    console.log(\"Received:\", event.data);\n  };\n\n  ws.onclose = (event) => {\n    console.log(\"Closed:\", event.code, event.reason);\n  };\n`);\n```\n\n### WebSocket Callback Behavior\n\n| Return Value | Behavior |\n|--------------|----------|\n| `WebSocket` instance | Use this WebSocket for the connection |\n| `null` | Block the connection (isolate receives error + close events) |\n| `Promise<WebSocket>` | Async - wait for WebSocket |\n| `Promise<null>` | Async - block the connection |\n| Throws/rejects | Block the connection with error |\n\n### What \"Blocked\" Looks Like in the Isolate\n\nWhen a connection is blocked, the isolate sees it as a failed connection (similar to server unreachable):\n\n```javascript\nconst ws = new WebSocket(\"wss://blocked.com\");\n\nws.onerror = (event) => {\n  // Fires first\n  console.log(\"Connection failed\");\n};\n\nws.onclose = (event) => {\n  // Then fires with:\n  console.log(event.code);      // 1006 (Abnormal Closure)\n  console.log(event.reason);    // \"Connection blocked\"\n  console.log(event.wasClean);  // false\n};\n\n// ws.onopen never fires\n```\n\n### Default Behavior\n\nIf no `webSocket` callback is provided, connections are allowed automatically:\n\n```typescript\n// No callback - all WebSocket connections are auto-allowed\nconst runtime = await client.createRuntime({});\n\nawait runtime.eval(`\n  // This will connect directly\n  const ws = new WebSocket(\"wss://echo.websocket.org\");\n`);\n```\n\n## Test Environment\n\nEnable test environment to run tests inside the sandbox:\n\n```typescript\nconst runtime = await client.createRuntime({\n  testEnvironment: {\n    onEvent: (event) => {\n      // Receive lifecycle events during test execution\n      if (event.type === \"testEnd\") {\n        const icon = event.test.status === \"pass\" ? \"✓\" : \"✗\";\n        console.log(`${icon} ${event.test.fullName}`);\n      }\n    },\n  },\n});\n\nawait runtime.eval(`\n  describe(\"math\", () => {\n    it(\"adds numbers\", () => {\n      expect(1 + 1).toBe(2);\n    });\n    it.todo(\"subtract numbers\");\n  });\n`);\n\n// Check if tests exist before running\nif (await runtime.testEnvironment.hasTests()) {\n  console.log(`Found ${await runtime.testEnvironment.getTestCount()} tests`);\n}\n\nconst results = await runtime.testEnvironment.runTests();\nconsole.log(`${results.passed}/${results.total} passed, ${results.todo} todo`);\n\n// Reset for new tests\nawait runtime.testEnvironment.reset();\n```\n\n### TestEnvironmentOptions\n\n```typescript\ninterface TestEnvironmentOptions {\n  onEvent?: (event: TestEvent) => void;\n  testTimeout?: number;\n}\n\ntype TestEvent =\n  | { type: \"runStart\"; testCount: number; suiteCount: number }\n  | { type: \"suiteStart\"; suite: SuiteInfo }\n  | { type: \"suiteEnd\"; suite: SuiteResult }\n  | { type: \"testStart\"; test: TestInfo }\n  | { type: \"testEnd\"; test: TestResult }\n  | { type: \"runEnd\"; results: RunResults };\n```\n\n## Playwright Integration\n\nRun browser automation with untrusted code. Public API is handler-first:\n\n```typescript\nimport { defaultPlaywrightHandler } from \"@ricsam/isolate-playwright/client\";\n\nplaywright: { handler: defaultPlaywrightHandler(page) }\n```\n\n### Script Mode (No Tests)\n\n```typescript\nimport { chromium } from \"playwright\";\nimport { defaultPlaywrightHandler } from \"@ricsam/isolate-playwright/client\";\n\nconst browser = await chromium.launch({ headless: true });\nconst page = await browser.newPage();\n\nconst runtime = await client.createRuntime({\n  playwright: {\n    handler: defaultPlaywrightHandler(page),\n    timeout: 30000, // Default timeout for operations\n    onEvent: (event) => {\n      // Unified event handler for all playwright events\n      if (event.type === \"browserConsoleLog\") {\n        console.log(`[browser:${event.level}]`, event.stdout);\n      } else if (event.type === \"networkRequest\") {\n        console.log(`[request] ${event.method} ${event.url}`);\n      } else if (event.type === \"networkResponse\") {\n        console.log(`[response] ${event.status} ${event.url}`);\n      }\n    },\n  },\n});\n\n// Run automation script - no test framework needed\nawait runtime.eval(`\n  await page.goto(\"/\");\n  const title = await page.title();\n  console.log(\"Page title:\", title);\n`);\n\n// Get collected data\nconst data = await runtime.playwright.getCollectedData();\nconsole.log(\"Network requests:\", data.networkRequests);\n\nawait runtime.dispose();\nawait browser.close();\n```\n\n### Test Mode (With Test Framework)\n\nCombine `testEnvironment` and `playwright` for browser testing. Playwright extends `expect` with locator matchers:\n\n```typescript\nimport { chromium } from \"playwright\";\nimport { defaultPlaywrightHandler } from \"@ricsam/isolate-playwright/client\";\n\nconst browser = await chromium.launch({ headless: true });\nconst page = await browser.newPage();\n\nconst runtime = await client.createRuntime({\n  // Unified console handler for both sandbox and browser logs\n  console: {\n    onEntry: (entry) => {\n      if (entry.type === \"output\") {\n        console.log(`[sandbox:${entry.level}]`, entry.stdout);\n      } else if (entry.type === \"browserOutput\") {\n        console.log(`[browser:${entry.level}]`, entry.stdout);\n      }\n    },\n  },\n  testEnvironment: true, // Provides describe, it, expect\n  playwright: {\n    handler: defaultPlaywrightHandler(page),\n    console: true, // Routes browser logs through the console handler above\n  },\n});\n\nawait runtime.eval(`\n  describe(\"homepage\", () => {\n    it(\"loads correctly\", async () => {\n      await page.goto(\"/\");\n      await expect(page.getByText(\"Example Domain\")).toBeVisible(); // Locator matcher\n      expect(await page.title()).toBe(\"Example Domain\"); // Primitive matcher\n    });\n  });\n`);\n\n// Run tests via test-environment\nconst results = await runtime.testEnvironment.runTests();\nconsole.log(`${results.passed}/${results.total} passed`);\n\n// Get browser data\nconst data = await runtime.playwright.getCollectedData();\nconsole.log(\"Browser logs:\", data.browserConsoleLogs);\n\nawait runtime.dispose();\nawait browser.close();\n```\n\n### File Operations (Screenshots, PDFs, File Uploads)\n\nFor security, file system access requires explicit callbacks. Without these callbacks, operations with file paths will throw errors:\n\n```typescript\nimport { chromium } from \"playwright\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\nimport { defaultPlaywrightHandler } from \"@ricsam/isolate-playwright/client\";\n\nconst browser = await chromium.launch({ headless: true });\nconst page = await browser.newPage();\n\nconst runtime = await client.createRuntime({\n  testEnvironment: true,\n  playwright: {\n    handler: defaultPlaywrightHandler(page, {\n      // Callback for writing screenshots and PDFs to disk\n      writeFile: async (filePath: string, data: Buffer) => {\n        // Validate path, then write\n        if (!filePath.startsWith(\"/allowed/output/\")) {\n          throw new Error(\"Write not allowed to this path\");\n        }\n        await fs.writeFile(filePath, data);\n      },\n      // Callback for reading files for setInputFiles()\n      readFile: async (filePath: string) => {\n        // Validate path, then read\n        if (!filePath.startsWith(\"/allowed/uploads/\")) {\n          throw new Error(\"Read not allowed from this path\");\n        }\n        const buffer = await fs.readFile(filePath);\n        return {\n          name: path.basename(filePath),\n          mimeType: \"application/octet-stream\", // Determine from extension\n          buffer,\n        };\n      },\n    }),\n  },\n});\n\nawait runtime.eval(`\n  test('file operations', async () => {\n    await page.goto('data:text/html,<input type=\"file\" id=\"upload\" />');\n\n    // Screenshot with path - calls writeFile callback\n    const base64 = await page.screenshot({ path: '/allowed/output/screenshot.png' });\n    // base64 is always returned, writeFile is called additionally\n\n    // PDF with path - calls writeFile callback\n    await page.pdf({ path: '/allowed/output/document.pdf' });\n\n    // File upload with path - calls readFile callback\n    await page.locator('#upload').setInputFiles('/allowed/uploads/test.txt');\n\n    // File upload with buffer data - no callback needed\n    await page.locator('#upload').setInputFiles([{\n      name: 'inline.txt',\n      mimeType: 'text/plain',\n      buffer: new TextEncoder().encode('Hello, World!'),\n    }]);\n  });\n`);\n```\n\n**Behavior without callbacks:**\n- `screenshot()` / `pdf()` without path: Returns base64 string (works without callback)\n- `screenshot({ path })` / `pdf({ path })` without `writeFile`: Throws error\n- `setInputFiles('/path')` without `readFile`: Throws error\n- `setInputFiles([{ name, mimeType, buffer }])`: Works without callback (inline data)\n\n### Multi-Page Testing\n\nFor tests that need multiple pages or browser contexts, provide `createPage` and/or `createContext` callbacks:\n\n```typescript\nimport { chromium } from \"playwright\";\nimport { defaultPlaywrightHandler } from \"@ricsam/isolate-playwright/client\";\n\nconst browser = await chromium.launch({ headless: true });\nconst browserContext = await browser.newContext();\nconst page = await browserContext.newPage();\n\nconst runtime = await client.createRuntime({\n  testEnvironment: true,\n  playwright: {\n    handler: defaultPlaywrightHandler(page, {\n      // Called when isolate code calls context.newPage(); receive the BrowserContext and call context.newPage()\n      createPage: async (context) => context.newPage(),\n      // Called when isolate code calls browser.newContext()\n      createContext: async (options) => browser.newContext(options),\n    }),\n  },\n});\n\nawait runtime.eval(`\n  test('multi-page test', async () => {\n    // Create additional pages\n    const page2 = await context.newPage();\n\n    // Navigate independently\n    await page.goto('https://example.com/page1');\n    await page2.goto('https://example.com/page2');\n\n    // Work with multiple pages\n    await page.locator('#button').click();\n    await page2.locator('#input').fill('text');\n\n    await page2.close();\n  });\n\n  test('multi-context test', async () => {\n    // Create isolated context (separate cookies, storage)\n    const ctx2 = await browser.newContext();\n    const page2 = await ctx2.newPage();\n\n    // Cookies are isolated between contexts\n    await context.addCookies([{ name: 'test', value: '1', domain: 'example.com', path: '/' }]);\n    const ctx1Cookies = await context.cookies();\n    const ctx2Cookies = await ctx2.cookies();\n\n    expect(ctx1Cookies.some(c => c.name === 'test')).toBe(true);\n    expect(ctx2Cookies.some(c => c.name === 'test')).toBe(false);\n\n    await ctx2.close();\n  });\n`);\n```\n\n**Behavior without lifecycle callbacks:**\n- `context.newPage()` without `createPage`: Throws error\n- `browser.newContext()` without `createContext`: Throws error\n- `context.cookies()`, `context.addCookies()`, `context.clearCookies()`: Work without callbacks\n\n## Runtime Interface\n\n```typescript\ninterface RemoteRuntime {\n  readonly id: string;\n  /** True if runtime was reused from namespace pool */\n  readonly reused?: boolean;\n\n  eval(code: string, filename?: string): Promise<void>;\n  /** Dispose runtime (soft-delete if namespaced, hard delete otherwise) */\n  dispose(): Promise<void>;\n\n  // Module handles\n  readonly fetch: RemoteFetchHandle;\n  readonly timers: RemoteTimersHandle;\n  readonly console: RemoteConsoleHandle;\n  readonly testEnvironment: RemoteTestEnvironmentHandle;\n  readonly playwright: RemotePlaywrightHandle;\n}\n\ninterface DaemonConnection {\n  /** Create a new runtime in the daemon */\n  createRuntime(options?: RuntimeOptions): Promise<RemoteRuntime>;\n  /** Create a namespace for runtime pooling/reuse */\n  createNamespace(id: string): Namespace;\n  /** Close the connection */\n  close(): Promise<void>;\n  /** Check if connected */\n  isConnected(): boolean;\n}\n\ninterface RemoteFetchHandle {\n  dispatchRequest(request: Request, options?: DispatchOptions): Promise<Response>;\n  hasServeHandler(): Promise<boolean>;\n  hasActiveConnections(): Promise<boolean>;\n  getUpgradeRequest(): Promise<UpgradeRequest | null>;\n  // WebSocket methods...\n}\n\ninterface RemoteTimersHandle {\n  clearAll(): Promise<void>;\n}\n\ninterface RemoteConsoleHandle {\n  reset(): Promise<void>;\n  getTimers(): Promise<Map<string, number>>;\n  getCounters(): Promise<Map<string, number>>;\n  getGroupDepth(): Promise<number>;\n}\n\ninterface RemoteTestEnvironmentHandle {\n  runTests(timeout?: number): Promise<RunResults>;\n  hasTests(): Promise<boolean>;\n  getTestCount(): Promise<number>;\n  reset(): Promise<void>;\n}\n\ninterface RemotePlaywrightHandle {\n  getCollectedData(): CollectedData;\n  clearCollectedData(): void;\n}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}