{"_id":"@capsuleos/microvm-supervisor","name":"@capsuleos/microvm-supervisor","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@capsuleos/microvm-supervisor","version":"0.1.0","description":"Typed Linux microVM supervisor contract and Unix-socket client for CapsuleOS providers.","license":"BSD-3-Clause","repository":{"type":"git","url":"git+https://github.com/btwld/capsuleos.git","directory":"packages/microvm-supervisor"},"type":"module","sideEffects":false,"main":"./dist/index.mjs","types":"./dist/index.d.mts","exports":{".":{"types":"./dist/index.d.mts","import":"./dist/index.mjs"}},"publishConfig":{"access":"public"},"dependencies":{"@capsuleos/core":"0.2.0","@capsuleos/guest-client":"0.2.0"},"devDependencies":{"@arethetypeswrong/cli":"^0.18.5","@types/node":"^24.13.3","publint":"^0.3.21","tsdown":"0.22.5","typescript":"^7.0.2","vitest":"^4.1.10"},"engines":{"node":">=24"},"scripts":{"build":"tsdown src/index.ts --format esm --dts --sourcemap --clean","typecheck":"tsc --noEmit","test":"vitest run test","publint":"publint","attw":"attw --pack . --profile esm-only"},"_id":"@capsuleos/microvm-supervisor@0.1.0","bugs":{"url":"https://github.com/btwld/capsuleos/issues"},"homepage":"https://github.com/btwld/capsuleos#readme","_integrity":"sha512-fCNeaPeqdG+6uwF+Fol6tFskImj/8idesVuvcnRj7AWAgxYDijjGKw4y2eUpuEnfx4AwGBCqdUzQFeg51yLIdw==","_resolved":"/home/runner/work/_temp/capsuleos-release-candidate/capsuleos-microvm-supervisor-0.1.0.tgz","_from":"file:/home/runner/work/_temp/capsuleos-release-candidate/capsuleos-microvm-supervisor-0.1.0.tgz","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-fCNeaPeqdG+6uwF+Fol6tFskImj/8idesVuvcnRj7AWAgxYDijjGKw4y2eUpuEnfx4AwGBCqdUzQFeg51yLIdw==","shasum":"7255601e6bdd3c81ceb07efa548e24b9fb264d3f","tarball":"https://registry.npmjs.org/@capsuleos/microvm-supervisor/-/microvm-supervisor-0.1.0.tgz","fileCount":10,"unpackedSize":113289,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFLJcoclZ41+PW8BUQScXHpzZfGOFxOTTj3FyNNcTmIJAiEApeTSNhgTzIDvxKRbroVsQiZqbyJ6o1kxm592ASGwUvU="}]},"_npmUser":{"name":"kauandotnet","email":"contato@kauan.net"},"directories":{},"maintainers":[{"name":"kauandotnet","email":"contato@kauan.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/microvm-supervisor_0.1.0_1785972793055_0.15962072175420072"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-05T23:33:12.893Z","0.1.0":"2026-08-05T23:33:13.197Z","modified":"2026-08-05T23:33:13.535Z"},"maintainers":[{"name":"kauandotnet","email":"contato@kauan.net"}],"description":"Typed Linux microVM supervisor contract and Unix-socket client for CapsuleOS providers.","homepage":"https://github.com/btwld/capsuleos#readme","repository":{"type":"git","url":"git+https://github.com/btwld/capsuleos.git","directory":"packages/microvm-supervisor"},"bugs":{"url":"https://github.com/btwld/capsuleos/issues"},"license":"BSD-3-Clause","readme":"# `@capsuleos/microvm-supervisor`\n\nThis package is the unprivileged Node.js boundary to a privileged Linux microVM supervisor. It\ncontains a transport-independent interface and a local Unix-socket client. Firecracker and\nlibkrun provider packages depend on the interface; they do not load a VMM library or manipulate\nKVM, TAP devices, namespaces, cgroups, disks, or jailer state inside the application process.\n\nThe supervisor owns those host resources and must authenticate its client, fence every operation\nby owner and allocation generation, persist only safe resource metadata, and reconcile native\nstate after restart. Guest process and file traffic upgrades one authenticated control connection\nto an opaque byte stream and then uses CapsuleOS guest protocol v1 over virtio-vsock.\n\nThe Unix protocol is versioned and length-prefixed. It is suitable only for a local, permissioned\nsocket. Socket permissions and Linux peer-credential authorization remain supervisor\nresponsibilities.\n\n```ts\nimport { createUnixMicrovmSupervisorClient } from \"@capsuleos/microvm-supervisor\";\n\nconst supervisor = createUnixMicrovmSupervisorClient({\n  socketPath: \"/run/capsuleos/hostd.sock\",\n  maxControlFrameBytes: 1024 * 1024,\n});\n```\n\nThe client opens one connection per operation and owns no provider SDK or daemon lifecycle. An\noptional operation deadline is sent on the wire and an `AbortSignal` immediately closes the local\nconnection. `guest.open` preserves bytes coalesced with the upgrade response and exposes a\npull-controlled Web stream.\n\nThe exact wire contract is documented in\n[`api/microvm-supervisor-v1.md`](../../api/microvm-supervisor-v1.md).\n","readmeFilename":"README.md","_rev":"1-0316bc2dd296d471c1854e2952284567"}