Skip to main content
The Supabase VFS mounts a Supabase Storage bucket at some prefix such as /supabase/. All operations involve network I/O to the remote object store. Uses aioboto3 against Supabase’s S3-compatible API. For credential setup, see Supabase Setup. Install the extra:

Config

SupabaseVFS(config) takes a SupabaseConfig object with the bucket name, region, and either project_ref (endpoint is auto-built as https://{project_ref}.storage.supabase.co/storage/v1/s3) or an explicit endpoint_url. Both READ and WRITE modes are supported. Fields marked secret are redacted in snapshots. For write: conditional on this provider, see S3-compatible stores.

VFS.md

The VFS.md an agent reads with Supabase Storage mounted at /<path>.

Virtual Filesystem

Supported Unix Commands for VFS

Unix commands work on each path as on a local filesystem, as far as the path supports them:

Limitations of Unix Commands for VFS

Where a path differs from a local filesystem:Run man <cmd> or <cmd> --help for one command’s usage.
The Supabase VFS maps object keys to virtual paths under the mount prefix. Supabase “directories” are prefix-based — there are no real directory objects. For example, if bucket my-bucket contains:
Then mounting at /supabase/ exposes:
Path mapping: virtual /supabase/avatars/user-001.png maps to Supabase key avatars/user-001.png.

Cache

The Supabase VFS uses IndexCacheStore with index_ttl = 600 (10 minutes). Directory listings are cached for up to 600 seconds before being refreshed from Supabase. A configured index: replaces this lifetime with its own ttl, and the mount’s ttl: caps it.

Integration

What Supabase Storage answers through its own API, so fewer files are read. Integration explains each command.

Example

Shell Commands

The Supabase VFS supports the full set of shell commands since it operates on real file content (text, binary, JSON, CSV, etc.). Large files benefit from range reads to avoid downloading entire objects.

Read Commands

Text Processing

File Operations

Path Utilities

Compression

Encoding

Use Cases

  • AI agents accessing Supabase data: Mount Supabase buckets for agents to read and process datasets
  • Data pipelines: Read and write Supabase objects with shell-like commands
  • FUSE mounting: Expose Supabase buckets through a virtual FUSE mount for external tools