vfs_execute and vfs_grep tool bundle. Application code reaches the same paths through the typed /vfs/... JSON endpoints or one of the language SDKs.
SDKs
Python, TypeScript, the Claude Bash adapter, and the OpenAI Agents sandbox adapter.
API Reference
Authentication, agent tool bundle, typed endpoints, sealed shell, deployment.
When to use which surface
At a glance
- Standalone server:
go run ./virtualfs/cmd/vfs servelistens on:8080by default. The compose-backedvfsservice listens on:8080internally and is published on the host as18080:8080. - Authentication:
VFS_AUTH_TOKENselects bearer auth. Without it, localsmokeAuthaccepts a caller-supplied bearer token. - Proxies: the conductor mounts VirtualFS at
/api/vfs/*and the Vercel dashboard rewrites/vfs/*to a Railway VirtualFS service. Both strip clientAuthorizationheaders and inject the server-side token. - Storage backends: RAM (dev profile) or Cloudflare R2/AWS S3 (prod profile); Postgres for the index cache, Redis for the byte cache. The prod, dev, and disk profiles each expose one
rootmount at/; well-known paths such as/agents,/data, and/kbare directories inside it. Each mount is strictly identified by its backend: there is no silent RAM fallback. If a backend fails to initialize at boot, the affected mount surfaces asunavailableinGET /vfs/mountswhile the server continues serving other mounts.