# Mirage > Mirage gives AI agents one virtual filesystem for S3, Google Drive, Slack, GitHub, Notion, Postgres, and SSH, so shell commands work across services. - [Introduction](https://docs.mirage.strukto.ai/home/introduction.md): Unified Virtual Filesystem for AI Agents. - [Installation](https://docs.mirage.strukto.ai/home/install.md): Install Mirage with the Python package mirage-ai or the TypeScript packages @struktoai/mirage-node and @struktoai/mirage-browser. - [Access](https://docs.mirage.strukto.ai/home/access/overview.md): How agents and people reach a Mirage virtual terminal. - [HTTP](https://docs.mirage.strukto.ai/home/access/http.md): The Mirage server's HTTP routes, how to run it, and how it checks tokens. - [MCP](https://docs.mirage.strukto.ai/home/access/mcp.md): Connect Claude Code, Cursor, VS Code or Codex to a workspace. - [RPC](https://docs.mirage.strukto.ai/home/access/rpc.md): Drive a workspace session from a program over JSON-RPC 2.0. - [SSH](https://docs.mirage.strukto.ai/home/access/ssh.md): Reach a workspace with ssh, sftp, scp and sshfs. - [FUSE](https://docs.mirage.strukto.ai/home/access/fuse.md): Open a workspace as a folder that any program can use. - [CLI](https://docs.mirage.strukto.ai/home/access/cli.md): Every mirage command, the same in the Python and TypeScript packages. - [Policy](https://docs.mirage.strukto.ai/home/policy/overview.md): Control everything an agent does in the virtual terminal, in code or in scripts, with the whole context in hand. - [Policies](https://docs.mirage.strukto.ai/home/policy/policies.md): Write a policy. The hooks, what each can answer, and what the agent gets back. - [Explain](https://docs.mirage.strukto.ai/home/policy/explain.md): What a line or a VFS call would do under a session's policies, without running it. - [Architecture](https://docs.mirage.strukto.ai/home/architecture.md): Four layers, one filesystem. How Mirage turns mounted services into one bash-driven environment. - [Workspace](https://docs.mirage.strukto.ai/home/workspace.md): Give each agent a live view of its mounts and registered CLI arguments, scoped to its session profile. - [Bash](https://docs.mirage.strukto.ai/home/bash.md): Run bash commands with `execute()`, per-call `cwd`/`env` overrides, and mid-flight cancellation. - [VFS Matrix](https://docs.mirage.strukto.ai/home/vfs-matrix.md): Compare Mirage VFS types by access, runtime, and setup path. - [Cache](https://docs.mirage.strukto.ai/home/cache.md): The two-layer workspace cache, index and file, with RAM and Redis stores. - [YAML Reference](https://docs.mirage.strukto.ai/home/yaml.md): Every key a workspace config accepts, and what each one does. - [Snapshot & Replay](https://docs.mirage.strukto.ai/home/snapshot.md): Freeze an agent run, restore it later, and detect when the underlying world has drifted. - [Observer](https://docs.mirage.strukto.ai/home/observer.md): A hidden recorder that captures every command and file op as timestamped events, backed by a pluggable store. Powers command history. - [Permissions](https://docs.mirage.strukto.ai/home/permissions.md): Profiles decide what each session sees and may run; asks are questions a host answers. - [Route Policy](https://docs.mirage.strukto.ai/home/route-policy.md): Script which runtime serves each command line; route-policy scripts run on the workspace's evaluator runtime. - [Troubleshooting](https://docs.mirage.strukto.ai/home/troubleshooting.md): Common Mirage setup failures and the fastest path to getting unblocked. - [Overview](https://docs.mirage.strukto.ai/home/setup/vfs.md): Shared provider setup for Mirage mounts. - [S3](https://docs.mirage.strukto.ai/home/setup/s3.md): Set up AWS S3 credentials for the S3 VFS. - [Cloudflare R2](https://docs.mirage.strukto.ai/home/setup/r2.md): Set up Cloudflare R2 credentials for the R2 VFS. - [Google Cloud Storage](https://docs.mirage.strukto.ai/home/setup/gcs.md): Set up Google Cloud Storage credentials for the GCS VFS. - [OCI Object Storage](https://docs.mirage.strukto.ai/home/setup/oci.md): Set up Oracle Cloud Infrastructure Object Storage credentials for the OCI VFS. - [Supabase Storage](https://docs.mirage.strukto.ai/home/setup/supabase.md): Set up Supabase Storage credentials for the Supabase VFS. - [MinIO](https://docs.mirage.strukto.ai/home/setup/minio.md): Set up MinIO credentials for the MinIO VFS. - [Ceph (Rados Gateway)](https://docs.mirage.strukto.ai/home/setup/ceph.md): Set up Ceph Rados Gateway (RGW) credentials for the Ceph VFS. - [SeaweedFS](https://docs.mirage.strukto.ai/home/setup/seaweedfs.md): Set up SeaweedFS credentials for the SeaweedFS VFS. - [Wasabi](https://docs.mirage.strukto.ai/home/setup/wasabi.md): Set up Wasabi credentials for the Wasabi VFS. - [Backblaze B2](https://docs.mirage.strukto.ai/home/setup/backblaze.md): Set up Backblaze B2 credentials for the Backblaze VFS. - [DigitalOcean Spaces](https://docs.mirage.strukto.ai/home/setup/digitalocean.md): Set up DigitalOcean Spaces credentials for the DigitalOcean VFS. - [Tencent COS](https://docs.mirage.strukto.ai/home/setup/tencent.md): Set up Tencent Cloud Object Storage (COS) credentials for the Tencent VFS. - [Alibaba OSS](https://docs.mirage.strukto.ai/home/setup/aliyun.md): Set up Alibaba Cloud OSS credentials for the Aliyun VFS. - [Scaleway](https://docs.mirage.strukto.ai/home/setup/scaleway.md): Set up Scaleway Object Storage credentials for the Scaleway VFS. - [QingStor](https://docs.mirage.strukto.ai/home/setup/qingstor.md): Set up QingStor (QingCloud) Object Storage credentials for the QingStor VFS. - [HF Buckets](https://docs.mirage.strukto.ai/home/setup/hf_buckets.md): Set up Hugging Face Buckets credentials for the HF Buckets VFS. - [HF Datasets](https://docs.mirage.strukto.ai/home/setup/hf_datasets.md): Set up Hugging Face Datasets credentials. - [HF Models](https://docs.mirage.strukto.ai/home/setup/hf_models.md): Set up Hugging Face Models credentials. - [HF Spaces](https://docs.mirage.strukto.ai/home/setup/hf_spaces.md): Set up Hugging Face Spaces credentials. - [Google Workspace](https://docs.mirage.strukto.ai/home/setup/google.md): Set up Google OAuth2 credentials for Docs, Sheets, Slides, Drive, and Gmail mounts. - [OneDrive](https://docs.mirage.strukto.ai/home/setup/onedrive.md): Get a Microsoft Graph access token and drive ID for the OneDrive VFS. - [SharePoint](https://docs.mirage.strukto.ai/home/setup/sharepoint.md): Get a Microsoft Graph access token for the SharePoint VFS. - [Dropbox](https://docs.mirage.strukto.ai/home/setup/dropbox.md): Set up Dropbox OAuth2 credentials and obtain a long-lived refresh token. - [Box](https://docs.mirage.strukto.ai/home/setup/box.md): Set up Box OAuth2 credentials and obtain a refresh token (Python, Node, and browser). - [Nextcloud](https://docs.mirage.strukto.ai/home/setup/nextcloud.md): Set up Nextcloud / ownCloud / WebDAV credentials for the Nextcloud VFS. - [Databricks Volume](https://docs.mirage.strukto.ai/home/setup/databricks.md): Set up Databricks credentials for the Unity Catalog volume VFS. - [GitHub](https://docs.mirage.strukto.ai/home/setup/github.md): Set up a GitHub Personal Access Token for the GitHub VFS. - [Linear](https://docs.mirage.strukto.ai/home/setup/linear.md): Set up a Linear personal API key for the Linear VFS. - [Weights & Biases](https://docs.mirage.strukto.ai/home/setup/wandb.md): Read experiment runs, configuration, summaries, history, and run files. - [Langfuse](https://docs.mirage.strukto.ai/home/setup/langfuse.md): Set up Langfuse API keys for the Langfuse VFS. - [Slack](https://docs.mirage.strukto.ai/home/setup/slack.md): Set up a Slack Bot Token for the Slack VFS. - [Discord](https://docs.mirage.strukto.ai/home/setup/discord.md): Set up a Discord Bot Token for the Discord VFS. - [Email](https://docs.mirage.strukto.ai/home/setup/email.md): Set up IMAP/SMTP credentials for the Email VFS. - [MongoDB](https://docs.mirage.strukto.ai/home/setup/mongodb.md): Set up a MongoDB connection for the MongoDB VFS. - [GridFS](https://docs.mirage.strukto.ai/home/setup/gridfs.md): Set up a MongoDB connection for the GridFS file-storage VFS. - [Postgres](https://docs.mirage.strukto.ai/home/setup/postgres.md): Set up a Postgres connection for the Postgres VFS. - [Airtable](https://docs.mirage.strukto.ai/home/setup/airtable.md): Create an Airtable personal access token for the Airtable VFS. - [Chroma](https://docs.mirage.strukto.ai/home/setup/chroma.md): Prepare a ChromaDB collection for the Chroma VFS. - [LanceDB](https://docs.mirage.strukto.ai/home/setup/lancedb.md): Set up a LanceDB connection for the LanceDB VFS. - [Qdrant](https://docs.mirage.strukto.ai/home/setup/qdrant.md): Set up a Qdrant connection for the Qdrant VFS. - [Dify](https://docs.mirage.strukto.ai/home/setup/dify.md): Set up a Dify Knowledge API key and dataset for the Dify VFS. - [Mem0](https://docs.mirage.strukto.ai/home/setup/mem0.md): Set up a Mem0 API key and memory scope for the Mem0 VFS. - [Notion](https://docs.mirage.strukto.ai/home/setup/notion.md): Set up a Notion internal integration for the Notion VFS. - [Trello](https://docs.mirage.strukto.ai/home/setup/trello.md): Set up Trello API credentials for the Trello VFS. - [Overview](https://docs.mirage.strukto.ai/home/setup/clis.md): Set up Mirage CLIs with Python or TypeScript. - [Himalaya](https://docs.mirage.strukto.ai/home/setup/cli/himalaya.md): Set up the Himalaya mail CLI with Python or TypeScript. - [GWS](https://docs.mirage.strukto.ai/home/setup/cli/gws.md): Set up the Google Workspace CLI with Python or TypeScript. - [Slack](https://docs.mirage.strukto.ai/home/setup/cli/slack.md): Set up the Slack CLI with Python or TypeScript. - [Discord](https://docs.mirage.strukto.ai/home/setup/cli/discord.md): Set up the Discord CLI with Python or TypeScript. - [ntn](https://docs.mirage.strukto.ai/home/setup/cli/ntn.md): Set up the Notion CLI with Python or TypeScript. - [Linear](https://docs.mirage.strukto.ai/home/setup/cli/linear.md): Set up the Linear CLI with Python or TypeScript. - [Airtable](https://docs.mirage.strukto.ai/home/setup/cli/airtable.md): Set up the Airtable CLI with Python or TypeScript. - [gh](https://docs.mirage.strukto.ai/home/setup/cli/gh.md): Set up the GitHub CLI with Python or TypeScript. - [hf](https://docs.mirage.strukto.ai/home/setup/cli/hf.md): Set up the Hugging Face CLI with Python or TypeScript. - [git](https://docs.mirage.strukto.ai/home/setup/cli/git.md): Set up the credential-free git CLI with Python or TypeScript. - [Python](https://docs.mirage.strukto.ai/home/setup/runtime/python.md): Set up the Python command runtime in either Mirage SDK. - [JavaScript](https://docs.mirage.strukto.ai/home/setup/runtime/javascript.md): Set up the QuickJS command runtime in either Mirage SDK. - [Overview](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox.md): Set up an external sandbox runtime for either Mirage SDK. - [Sandlock](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/sandlock.md): Set up the Sandlock process runtime on Linux. - [Docker](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/docker.md): Connect either Mirage SDK to an existing Docker container. - [Apple Container](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/apple_container.md): Connect either Mirage SDK to an existing container under Apple's container tool. - [smolvm](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/smolvm.md): Connect either Mirage SDK to an existing smolvm microVM. - [Daytona](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/daytona.md): Connect either Mirage SDK to an existing Daytona sandbox. - [E2B](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/e2b.md): Connect either Mirage SDK to an existing E2B sandbox. - [SSH](https://docs.mirage.strukto.ai/home/setup/runtime/sandbox/ssh.md): Connect either Mirage SDK to a machine over SSH. - [Support Matrix](https://docs.mirage.strukto.ai/home/setup/fuse.md): Which OS and SDK combinations support MIRAGE FUSE mounts, and how well. - [macOS](https://docs.mirage.strukto.ai/home/setup/macos.md): Set up FUSE on macOS for MIRAGE. - [Linux](https://docs.mirage.strukto.ai/home/setup/linux.md): Set up FUSE on Linux for MIRAGE. - [Windows](https://docs.mirage.strukto.ai/home/setup/windows.md): Set up WinFsp on Windows for MIRAGE FUSE mounts (Python, experimental). - [Installation](https://docs.mirage.strukto.ai/python/install.md): Install Mirage for Python with mirage-ai from PyPI or uv, then add extras for S3, Redis, FUSE, Google Workspace, and other mounts. - [Python Quickstart](https://docs.mirage.strukto.ai/python/quickstart.md): Create a Mirage Python workspace, mount RAM as a virtual filesystem, and run shell commands that read, write, search, and transform files. - [FUSE](https://docs.mirage.strukto.ai/python/setup/fuse.md): Set up FUSE support for MIRAGE in Python. - [In-app](https://docs.mirage.strukto.ai/python/access/in-app.md): The Python classes your app calls to run a workspace, each with an example. - [Server](https://docs.mirage.strukto.ai/python/access/server.md): The Mirage server in Python, a FastAPI app that holds workspaces and serves HTTP, MCP, RPC and SSH. - [Overview](https://docs.mirage.strukto.ai/python/agents/index.md): Connect a coding agent or an agent framework to a Mirage workspace. - [Claude Code](https://docs.mirage.strukto.ai/python/agents/claude-code.md): Connect Claude Code to a Mirage workspace through the CLI or a FUSE mount. - [OpenAI Codex](https://docs.mirage.strukto.ai/python/agents/codex.md): Connect Codex to a Mirage workspace through the CLI, SSH or a FUSE mount. - [Grok Build](https://docs.mirage.strukto.ai/python/agents/grok-build.md): Connect Grok Build to a Mirage workspace through the CLI or a FUSE mount. - [Claude Agent SDK](https://docs.mirage.strukto.ai/python/agents/claude-agent-sdk.md): Run Anthropic's Claude Agent SDK against a Mirage workspace through an in-process MCP server of Mirage's tools. - [Agno](https://docs.mirage.strukto.ai/python/agents/agno.md): Give Agno agents shell-based filesystem access to any Mirage workspace using MirageToolkit. - [OpenAI Agents SDK](https://docs.mirage.strukto.ai/python/agents/openai-agents.md): Run openai-agents against a Mirage workspace using MirageShellExecutor, MirageEditor, MirageSandboxClient, and MirageCapability. - [LangChain (Deep Agents)](https://docs.mirage.strukto.ai/python/agents/langchain.md): Back Deep Agents with a Mirage workspace via LangchainWorkspace. - [OpenHands](https://docs.mirage.strukto.ai/python/agents/openhands.md): Run the All-Hands OpenHands SDK against a Mirage workspace using MirageWorkspace and the Mirage terminal tool. - [Pydantic AI](https://docs.mirage.strukto.ai/python/agents/pydantic-ai.md): Give Pydantic AI runs a Mirage session as their workspace, so every file and shell tool runs in Mirage. - [Haystack](https://docs.mirage.strukto.ai/python/agents/haystack.md): Give a Haystack Agent a bash tool over a Mirage workspace via MirageShellTool. - [Overview](https://docs.mirage.strukto.ai/python/vfs/index.md): Python VFS types you can mount in a Mirage workspace. - [Disk](https://docs.mirage.strukto.ai/python/vfs/disk.md): Mount a local directory as a Mirage VFS with read/write shell commands and path traversal protection. - [RAM](https://docs.mirage.strukto.ai/python/vfs/ram.md): Use an in-memory Mirage filesystem for temporary files, tests, examples, and writable agent scratch space. - [Redis](https://docs.mirage.strukto.ai/python/vfs/redis.md): Mount a Redis-backed virtual filesystem. - [SSH](https://docs.mirage.strukto.ai/python/vfs/ssh.md): Mount a remote filesystem over SSH/SFTP. - [S3](https://docs.mirage.strukto.ai/python/vfs/s3.md): Mount AWS S3 or S3-compatible buckets as a Mirage filesystem with async access, caching, and shell commands. - [Cloudflare R2](https://docs.mirage.strukto.ai/python/vfs/r2.md): Mount Cloudflare R2 storage as a virtual filesystem. - [GCS](https://docs.mirage.strukto.ai/python/vfs/gcs.md): Mount Google Cloud Storage buckets through Mirage's async S3-compatible VFS layer for Python agents. - [Supabase Storage](https://docs.mirage.strukto.ai/python/vfs/supabase.md): Mount Supabase Storage as a virtual filesystem. - [OCI Object Storage](https://docs.mirage.strukto.ai/python/vfs/oci.md): Mount Oracle Cloud Infrastructure Object Storage as a virtual filesystem. - [MinIO](https://docs.mirage.strukto.ai/python/vfs/minio.md): Mount a self-hosted MinIO bucket as a virtual filesystem. - [Ceph (Rados Gateway)](https://docs.mirage.strukto.ai/python/vfs/ceph.md): Mount a self-hosted Ceph Rados Gateway bucket as a virtual filesystem. - [SeaweedFS](https://docs.mirage.strukto.ai/python/vfs/seaweedfs.md): Mount a SeaweedFS bucket as a virtual filesystem. - [Wasabi](https://docs.mirage.strukto.ai/python/vfs/wasabi.md): Mount a Wasabi cloud storage bucket as a virtual filesystem. - [Backblaze B2](https://docs.mirage.strukto.ai/python/vfs/backblaze.md): Mount a Backblaze B2 bucket via its S3-compatible API as a virtual filesystem. - [DigitalOcean Spaces](https://docs.mirage.strukto.ai/python/vfs/digitalocean.md): Mount a DigitalOcean Spaces bucket via its S3-compatible API as a virtual filesystem. - [Tencent COS](https://docs.mirage.strukto.ai/python/vfs/tencent.md): Mount a Tencent Cloud Object Storage bucket via its S3-compatible API. - [Alibaba OSS](https://docs.mirage.strukto.ai/python/vfs/aliyun.md): Mount an Alibaba Cloud OSS bucket via its S3-compatible API as a virtual filesystem. - [Scaleway](https://docs.mirage.strukto.ai/python/vfs/scaleway.md): Mount a Scaleway Object Storage bucket via its S3-compatible API. - [QingStor](https://docs.mirage.strukto.ai/python/vfs/qingstor.md): Mount a QingStor (QingCloud) Object Storage bucket via its S3-compatible API. - [HF Buckets](https://docs.mirage.strukto.ai/python/vfs/hf_buckets.md): Mount Hugging Face Buckets as a Mirage filesystem with async reads and S3-compatible writes for Python agents. - [HF Datasets](https://docs.mirage.strukto.ai/python/vfs/hf_datasets.md): Mount a Hugging Face dataset repository as a read-only filesystem and browse its shards with shell commands. - [HF Models](https://docs.mirage.strukto.ai/python/vfs/hf_models.md): Mount a Hugging Face model repository as a filesystem and inspect weights, configs, and cards with shell commands. - [HF Spaces](https://docs.mirage.strukto.ai/python/vfs/hf_spaces.md): Mount a Hugging Face Space repository as a filesystem and read its application files with shell commands. - [Gmail](https://docs.mirage.strukto.ai/python/vfs/gmail.md): Mount Gmail mailboxes as a Mirage filesystem so Python agents can browse labels, messages, threads, and attachments. - [Google Drive](https://docs.mirage.strukto.ai/python/vfs/gdrive.md): Mount Google Drive folders and files, including Docs, Sheets, and Slides, as a Mirage virtual filesystem. - [Google Docs](https://docs.mirage.strukto.ai/python/vfs/gdocs.md): Mount Google Docs as JSON-backed files so Python agents can read document structure and content through Mirage. - [Google Sheets](https://docs.mirage.strukto.ai/python/vfs/gsheets.md): Mount Google Sheets spreadsheets as JSON-backed files that Python agents can read through Mirage shell commands. - [Google Slides](https://docs.mirage.strukto.ai/python/vfs/gslides.md): Mount Google Slides presentations as JSON-backed files that Python agents can read through Mirage shell commands. - [OneDrive](https://docs.mirage.strukto.ai/python/vfs/onedrive.md): Mount Microsoft OneDrive or SharePoint document libraries as a Mirage filesystem with async access, versioning, and shell commands. - [SharePoint](https://docs.mirage.strukto.ai/python/vfs/sharepoint.md): Mount Microsoft SharePoint Online sites and document libraries as a Mirage filesystem with multi-site discovery, versioning, and shell commands. - [Box](https://docs.mirage.strukto.ai/python/vfs/box.md): Mount a Box account (or a single folder of it) as a read/write Mirage filesystem with async access and shell commands. - [Dropbox](https://docs.mirage.strukto.ai/python/vfs/dropbox.md): Mount a Dropbox account (or a single folder of it) as a read/write Mirage filesystem with async access and shell commands. - [Nextcloud](https://docs.mirage.strukto.ai/python/vfs/nextcloud.md): Mount Nextcloud over WebDAV as a filesystem and read or write your files with shell commands. - [Databricks Volume](https://docs.mirage.strukto.ai/python/vfs/databricks_volume.md): Mount a Databricks Unity Catalog volume as a filesystem. - [GitHub](https://docs.mirage.strukto.ai/python/vfs/github.md): Mount a GitHub repository as a read-only Mirage filesystem for agents to list, read, search, and inspect code. - [Linear](https://docs.mirage.strukto.ai/python/vfs/linear.md): Mount Linear workspaces, teams, projects, issues, and comments as a Mirage filesystem for Python agents. - [Langfuse](https://docs.mirage.strukto.ai/python/vfs/langfuse.md): Mount Langfuse traces, observations, prompts, datasets, and scores as a Mirage virtual filesystem. - [Slack](https://docs.mirage.strukto.ai/python/vfs/slack.md): Mount Slack channels, DMs, messages, users, and shared files as a Mirage virtual filesystem for Python agents. - [Discord](https://docs.mirage.strukto.ai/python/vfs/discord.md): Mount Discord guilds, channels, messages, attachments, and members as a Mirage virtual filesystem for Python agents. - [Email](https://docs.mirage.strukto.ai/python/vfs/email.md): Mount an IMAP mailbox as a Mirage filesystem and send messages through SMTP from Python workspaces. - [MongoDB](https://docs.mirage.strukto.ai/python/vfs/mongodb.md): Mount MongoDB databases, collections, and documents as a Mirage filesystem with JSON access for Python agents. - [GridFS](https://docs.mirage.strukto.ai/python/vfs/gridfs.md): Mount a MongoDB GridFS bucket as a Mirage filesystem with revisions, server-side find, and shell commands. - [Postgres](https://docs.mirage.strukto.ai/python/vfs/postgres.md): Mount a Postgres database as a read-only filesystem of schemas, tables, and rows. - [Airtable](https://docs.mirage.strukto.ai/python/vfs/airtable.md): Mount Airtable bases, tables, records, and saved views as a Mirage filesystem for Python agents. - [Chroma](https://docs.mirage.strukto.ai/python/vfs/chroma.md): Mount a ChromaDB collection as a read-only virtual filesystem. - [LanceDB](https://docs.mirage.strukto.ai/python/vfs/lancedb.md): Mount a LanceDB table as a Mirage filesystem, with label folders, multimodal blobs, and a semantic search command for Python agents. - [Qdrant](https://docs.mirage.strukto.ai/python/vfs/qdrant.md): Mount a Qdrant collection as a Mirage filesystem, with payload folders, multimodal blobs, and a semantic search command for Python agents. - [Dify](https://docs.mirage.strukto.ai/python/vfs/dify.md): Mount a Dify Knowledge dataset as a read-only virtual filesystem. - [Mem0](https://docs.mirage.strukto.ai/python/vfs/mem0.md): Mount a Mem0 memory scope as a read-only virtual filesystem. - [Notion](https://docs.mirage.strukto.ai/python/vfs/notion.md): Mount Notion pages as a virtual filesystem. - [Trello](https://docs.mirage.strukto.ai/python/vfs/trello.md): Mount Trello workspaces, boards, lists, cards, members, and labels as a Mirage filesystem for Python agents. - [Adding a New VFS](https://docs.mirage.strukto.ai/python/vfs/new.md): Ship your own backend on the public `mirage` surface, or contribute a builtin VFS using Mirage's VFS, command, and snapshot conventions. - [Overview](https://docs.mirage.strukto.ai/python/cli/index.md): Install typed command-line programs beside your mounts and let agents act on services by name. - [Author a Custom CLI](https://docs.mirage.strukto.ai/python/cli/custom.md): Build, register, validate, and safely expose a typed Python CLI to people and agents. - [Himalaya](https://docs.mirage.strukto.ai/python/cli/himalaya.md): IMAP/SMTP mail client following the pimalaya/himalaya vocabulary. - [GWS](https://docs.mirage.strukto.ai/python/cli/gws.md): Google Workspace API client: Discovery passthroughs plus ergonomic helpers. - [slack](https://docs.mirage.strukto.ai/python/cli/slack.md): Slack Web API client speaking the OpenClaw Slack action vocabulary. - [discord](https://docs.mirage.strukto.ai/python/cli/discord.md): Discord REST API client speaking the OpenClaw Discord action vocabulary. - [ntn](https://docs.mirage.strukto.ai/python/cli/ntn.md): Notion API client following the official Notion CLI grammar. - [linear](https://docs.mirage.strukto.ai/python/cli/linear.md): Linear GraphQL API client with the noun/verb grammar of the mount commands. - [airtable](https://docs.mirage.strukto.ai/python/cli/airtable.md): Airtable Web API client: records and comments by base and table id, one record from flags or many as records.jsonl lines. - [gh](https://docs.mirage.strukto.ai/python/cli/gh.md): Act on GitHub in the official CLI's vocabulary, alongside a github mount that reads the repository as files. - [hf](https://docs.mirage.strukto.ai/python/cli/hf.md): Act on the Hugging Face Hub in the official CLI's vocabulary, alongside hf_models, hf_datasets and hf_spaces mounts that read a repo as files. - [git](https://docs.mirage.strukto.ai/python/cli/git.md): Read and change a git repository that lives on any mount, in git's own vocabulary. - [Overview](https://docs.mirage.strukto.ai/python/watch.md): Subscribe to external file changes on any mount. Mirage invalidates the changed path and ancestor listings before delivering events, with the folder-removal limits described below. - [Watch Matrix](https://docs.mirage.strukto.ai/python/watch-matrix.md): Which VFS types support watch today, and which detection path (push mapping or pull delta hook) each one has. - [Python](https://docs.mirage.strukto.ai/python/runtime/python.md): Choose the interpreter that runs python3 inside the workspace, monty (sandboxed, default), wasi (sandboxed full CPython), or the host interpreter. - [JavaScript](https://docs.mirage.strukto.ai/python/runtime/javascript.md): Run node/js inside the workspace on quickjs, a sandboxed JavaScript engine for small scripts and pipe transforms. - [Overview](https://docs.mirage.strukto.ai/python/runtime/sandbox.md): Run captured programs inside a sandbox (Docker, Apple Container, smolvm, Daytona, e2b, or any machine over SSH) you provision yourself. - [Sandlock](https://docs.mirage.strukto.ai/python/runtime/sandbox/sandlock.md): Run native commands under Linux Landlock and seccomp confinement. - [Docker](https://docs.mirage.strukto.ai/python/runtime/sandbox/docker.md): Run captured command lines in an existing Docker container. - [Apple Container](https://docs.mirage.strukto.ai/python/runtime/sandbox/apple_container.md): Run captured command lines in an existing container under Apple's container tool. - [smolvm](https://docs.mirage.strukto.ai/python/runtime/sandbox/smolvm.md): Run captured command lines in an existing smolvm microVM. - [Daytona](https://docs.mirage.strukto.ai/python/runtime/sandbox/daytona.md): Run captured command lines in an existing Daytona sandbox. - [E2B](https://docs.mirage.strukto.ai/python/runtime/sandbox/e2b.md): Run captured command lines in an existing E2B sandbox. - [SSH](https://docs.mirage.strukto.ai/python/runtime/sandbox/ssh.md): Run captured command lines on any machine you can reach over SSH. - [Installation](https://docs.mirage.strukto.ai/typescript/install.md): Install the Mirage TypeScript SDK and add the optional native peers only if you need them. - [TypeScript Quickstart](https://docs.mirage.strukto.ai/typescript/quickstart.md): Create a Mirage TypeScript workspace, mount RAM as a virtual filesystem, and run shell commands with @struktoai/mirage-node. - [FUSE](https://docs.mirage.strukto.ai/typescript/setup/fuse.md): Set up FUSE support for MIRAGE with the TypeScript SDK. - [Python](https://docs.mirage.strukto.ai/typescript/python.md): Run python3 code inside Mirage via Pyodide. Supports -c, script files, and stdin-piped code, in Node and the browser. - [Limitations](https://docs.mirage.strukto.ai/typescript/limitations.md): Runtime-specific constraints in the TypeScript SDK (Node and Browser) and how to work around them. - [In-app](https://docs.mirage.strukto.ai/typescript/access/in-app.md): The TypeScript classes your app calls to run a workspace, each with an example. - [Server](https://docs.mirage.strukto.ai/typescript/access/server.md): The Mirage server in TypeScript, a Fastify app that holds workspaces and serves HTTP, MCP, RPC and SSH. - [Overview](https://docs.mirage.strukto.ai/typescript/agents/index.md): Connect a coding agent or an agent framework to a Mirage workspace. - [Claude Code](https://docs.mirage.strukto.ai/typescript/agents/claude-code.md): Connect Claude Code to a Mirage workspace through the CLI or a FUSE mount. - [OpenAI Codex](https://docs.mirage.strukto.ai/typescript/agents/codex.md): Connect Codex to a Mirage workspace through the CLI, SSH or a FUSE mount. - [Grok Build](https://docs.mirage.strukto.ai/typescript/agents/grok-build.md): Connect Grok Build to a Mirage workspace through the CLI or a FUSE mount. - [Pi Coding Agent](https://docs.mirage.strukto.ai/typescript/agents/pi.md): Run @earendil-works/pi-coding-agent with all 7 built-in tools wired to a Mirage workspace. - [OpenCode](https://docs.mirage.strukto.ai/typescript/agents/opencode.md): Install native Mirage filesystem tools in OpenCode, with stale-write protection and no MCP server. - [DeepSeek Harness](https://docs.mirage.strukto.ai/typescript/agents/dsh.md): Register Mirage as the filesystem and shell of DeepSeek Harness (dsh), so its file tools and bash tool run on mounted data. - [Vercel AI SDK](https://docs.mirage.strukto.ai/typescript/agents/vercel.md): Wire mirage tools into the Vercel AI SDK via the @struktoai/mirage-agents/vercel adapter. - [Mastra](https://docs.mirage.strukto.ai/typescript/agents/mastra.md): Wire mirage tools into a Mastra Agent via the @struktoai/mirage-agents/mastra adapter. - [Claude Agent SDK](https://docs.mirage.strukto.ai/typescript/agents/claude-agent-sdk.md): Run @anthropic-ai/claude-agent-sdk against a Mirage workspace through an in-process MCP server of Mirage's tools. - [OpenAI Agents SDK](https://docs.mirage.strukto.ai/typescript/agents/openai.md): Run @openai/agents against a Mirage workspace with shell, editor, file-reading tools, and a SandboxAgent client. - [LangChain (Deep Agents)](https://docs.mirage.strukto.ai/typescript/agents/langchain.md): Back Deep Agents with a Mirage workspace via LangchainWorkspace. - [Overview](https://docs.mirage.strukto.ai/typescript/setup/vfs.md): TypeScript VFS types you can mount in a Mirage workspace. - [Disk](https://docs.mirage.strukto.ai/typescript/setup/disk.md): Mount a directory on the host filesystem as a Mirage VFS (Node only). - [OPFS](https://docs.mirage.strukto.ai/typescript/setup/opfs.md): Persistent in-browser filesystem backed by the Origin Private File System. - [Redis](https://docs.mirage.strukto.ai/typescript/setup/redis.md): Mount Redis keys as a Mirage filesystem. - [Upstash Redis](https://docs.mirage.strukto.ai/typescript/setup/upstash.md): Mount an Upstash Redis database from Node or from a browser page with one URL. - [SSH](https://docs.mirage.strukto.ai/typescript/setup/ssh.md): Mount a remote SSH host as a Mirage filesystem (Node only). - [S3](https://docs.mirage.strukto.ai/typescript/setup/s3.md): Set up AWS S3 as a MIRAGE VFS from Node or the browser. - [Cloudflare R2](https://docs.mirage.strukto.ai/typescript/setup/r2.md): Set up Cloudflare R2 as a MIRAGE VFS from Node or the browser. - [Google Cloud Storage](https://docs.mirage.strukto.ai/typescript/setup/gcs.md): Set up Google Cloud Storage as a MIRAGE VFS from Node or the browser. - [OCI Object Storage](https://docs.mirage.strukto.ai/typescript/setup/oci.md): Set up Oracle Cloud Object Storage as a MIRAGE VFS from Node or the browser. - [Supabase Storage](https://docs.mirage.strukto.ai/typescript/setup/supabase.md): Set up Supabase Storage as a MIRAGE VFS from Node or the browser. - [MinIO](https://docs.mirage.strukto.ai/typescript/setup/minio.md): Set up MinIO as a MIRAGE VFS from Node or the browser. - [Ceph](https://docs.mirage.strukto.ai/typescript/setup/ceph.md): Set up Ceph Rados Gateway as a MIRAGE VFS from Node or the browser. - [SeaweedFS](https://docs.mirage.strukto.ai/typescript/setup/seaweedfs.md): Set up SeaweedFS as a MIRAGE VFS from Node or the browser. - [Wasabi](https://docs.mirage.strukto.ai/typescript/setup/wasabi.md): Set up Wasabi as a MIRAGE VFS from Node or the browser. - [Backblaze B2](https://docs.mirage.strukto.ai/typescript/setup/backblaze.md): Set up Backblaze B2 as a MIRAGE VFS from Node or the browser. - [DigitalOcean Spaces](https://docs.mirage.strukto.ai/typescript/setup/digitalocean.md): Set up DigitalOcean Spaces as a MIRAGE VFS from Node or the browser. - [Tencent COS](https://docs.mirage.strukto.ai/typescript/setup/tencent.md): Set up Tencent Cloud Object Storage as a MIRAGE VFS from Node or the browser. - [Alibaba OSS](https://docs.mirage.strukto.ai/typescript/setup/aliyun.md): Set up Alibaba Cloud OSS as a MIRAGE VFS from Node or the browser. - [Scaleway](https://docs.mirage.strukto.ai/typescript/setup/scaleway.md): Set up Scaleway Object Storage as a MIRAGE VFS from Node or the browser. - [QingStor](https://docs.mirage.strukto.ai/typescript/setup/qingstor.md): Set up QingStor as a MIRAGE VFS from Node or the browser. - [HF Buckets](https://docs.mirage.strukto.ai/typescript/setup/hf_buckets.md): Mount Hugging Face Buckets as a Mirage filesystem in TypeScript with lazy reads and writes. - [HF Datasets](https://docs.mirage.strukto.ai/typescript/setup/hf_datasets.md): Mount a Hugging Face Dataset repo as a Mirage filesystem in TypeScript. - [HF Models](https://docs.mirage.strukto.ai/typescript/setup/hf_models.md): Mount a Hugging Face Model repo as a Mirage filesystem in TypeScript. - [HF Spaces](https://docs.mirage.strukto.ai/typescript/setup/hf_spaces.md): Mount a Hugging Face Space repo as a Mirage filesystem in TypeScript. - [Gmail](https://docs.mirage.strukto.ai/typescript/setup/gmail.md): Mount a Gmail mailbox as a Mirage filesystem from Node or the browser. - [Google Drive](https://docs.mirage.strukto.ai/typescript/setup/gdrive.md): Mount Google Drive as a Mirage filesystem from Node or the browser. - [Google Docs](https://docs.mirage.strukto.ai/typescript/setup/gdocs.md): Mount Google Docs as JSON-backed files from Node or the browser. - [Google Sheets](https://docs.mirage.strukto.ai/typescript/setup/gsheets.md): Mount Google Sheets spreadsheets as Mirage files from Node or the browser. - [Google Slides](https://docs.mirage.strukto.ai/typescript/setup/gslides.md): Mount Google Slides decks as Mirage files from Node or the browser. - [OneDrive](https://docs.mirage.strukto.ai/typescript/setup/onedrive.md): Mount OneDrive through Microsoft Graph from Node or the browser. - [SharePoint](https://docs.mirage.strukto.ai/typescript/setup/sharepoint.md): Mount SharePoint sites and document libraries through Microsoft Graph from Node or the browser. - [Dropbox](https://docs.mirage.strukto.ai/typescript/dropbox.md): Mount Dropbox as a read/write MIRAGE VFS from Node or the browser via OAuth2. - [Box](https://docs.mirage.strukto.ai/typescript/box.md): Mount Box as a MIRAGE VFS from Node or the browser via OAuth2. - [Databricks Volume](https://docs.mirage.strukto.ai/typescript/setup/databricks_volume.md): Set up a Databricks Unity Catalog volume as a MIRAGE VFS from Node. - [GitHub](https://docs.mirage.strukto.ai/typescript/setup/github.md): Mount a GitHub repository as a Mirage filesystem from Node or the browser. - [Linear](https://docs.mirage.strukto.ai/typescript/setup/linear.md): Mount Linear teams, projects, and issues as a Mirage filesystem. - [Weights & Biases](https://docs.mirage.strukto.ai/typescript/setup/wandb.md): Read experiment runs, configuration, summaries, history, and run files. - [Langfuse](https://docs.mirage.strukto.ai/typescript/setup/langfuse.md): Mount Langfuse traces and observations as a Mirage filesystem. - [Slack](https://docs.mirage.strukto.ai/typescript/slack.md): Mount a Slack workspace as a virtual filesystem from Node or the browser. - [Discord](https://docs.mirage.strukto.ai/typescript/discord.md): Mount Discord guilds, channels, and members as a virtual filesystem from Node or the browser. - [Email](https://docs.mirage.strukto.ai/typescript/setup/email.md): Mount an IMAP/SMTP mailbox as a Mirage filesystem (Node only). - [MongoDB](https://docs.mirage.strukto.ai/typescript/setup/mongodb.md): Mount a MongoDB cluster as a Mirage filesystem of databases, collections, and documents. - [GridFS](https://docs.mirage.strukto.ai/typescript/setup/gridfs.md): Mount a MongoDB GridFS bucket as a MIRAGE filesystem from Node. - [Postgres](https://docs.mirage.strukto.ai/typescript/setup/postgres.md): Mount a Postgres database as a read-only filesystem of schemas, tables, and rows. - [Airtable](https://docs.mirage.strukto.ai/typescript/setup/airtable.md): Mount Airtable bases, tables, and records as a Mirage filesystem. - [Chroma](https://docs.mirage.strukto.ai/typescript/setup/chroma.md): Mount a ChromaDB collection as a Mirage filesystem in TypeScript, with shell commands and native vector retrieval. - [LanceDB](https://docs.mirage.strukto.ai/typescript/setup/lancedb.md): Mount a LanceDB table as a Mirage filesystem in TypeScript, with label folders and a semantic search command. - [Qdrant](https://docs.mirage.strukto.ai/typescript/setup/qdrant.md): Mount a Qdrant collection as a Mirage filesystem in TypeScript, with payload folders and a semantic search command. - [Mem0](https://docs.mirage.strukto.ai/typescript/setup/mem0.md): Mount scoped Mem0 Platform memories as JSON files from Node or the browser. - [Notion](https://docs.mirage.strukto.ai/typescript/setup/notion.md): Mount Notion pages and databases as a Mirage filesystem. - [Trello](https://docs.mirage.strukto.ai/typescript/setup/trello.md): Mount Trello boards, lists, and cards as a Mirage filesystem. - [Adding a New VFS](https://docs.mirage.strukto.ai/typescript/vfs/new.md): Ship your own backend with BaseVFS, or contribute a builtin VFS using Mirage's VFS, command, and snapshot conventions. - [Overview](https://docs.mirage.strukto.ai/typescript/cli/index.md): Install typed command-line programs beside your mounts and let agents act on services by name from Node. - [Author a Custom CLI](https://docs.mirage.strukto.ai/typescript/cli/custom.md): Build, register, validate, and safely expose a typed TypeScript CLI to people and agents. - [Himalaya](https://docs.mirage.strukto.ai/typescript/cli/himalaya.md): IMAP/SMTP mail client following the pimalaya/himalaya vocabulary. - [GWS](https://docs.mirage.strukto.ai/typescript/cli/gws.md): Google Workspace API client: Discovery passthroughs plus ergonomic helpers. - [slack](https://docs.mirage.strukto.ai/typescript/cli/slack.md): Slack Web API client speaking the OpenClaw Slack action vocabulary. - [discord](https://docs.mirage.strukto.ai/typescript/cli/discord.md): Discord REST API client speaking the OpenClaw Discord action vocabulary. - [ntn](https://docs.mirage.strukto.ai/typescript/cli/ntn.md): Notion API client following the official Notion CLI grammar. - [linear](https://docs.mirage.strukto.ai/typescript/cli/linear.md): Linear GraphQL API client with the noun/verb grammar of the mount commands. - [airtable](https://docs.mirage.strukto.ai/typescript/cli/airtable.md): Airtable Web API client: records and comments by base and table id, one record from flags or many as records.jsonl lines. - [gh](https://docs.mirage.strukto.ai/typescript/cli/gh.md): Act on GitHub in the official CLI's vocabulary, alongside a github mount that reads the repository as files. - [hf](https://docs.mirage.strukto.ai/typescript/cli/hf.md): Act on the Hugging Face Hub in the official CLI's vocabulary, alongside hf_models, hf_datasets and hf_spaces mounts that read a repo as files. - [git](https://docs.mirage.strukto.ai/typescript/cli/git.md): Read and change a git repository that lives on any mount, in git's own vocabulary. - [Overview](https://docs.mirage.strukto.ai/typescript/watch.md): Subscribe to external file changes on any TypeScript mount. Mirage invalidates its caches before every event is delivered. - [Watch Matrix](https://docs.mirage.strukto.ai/typescript/watch-matrix.md): TypeScript watch delivery support and the pull or push detection paths available for each VFS. - [Python](https://docs.mirage.strukto.ai/typescript/runtime/python.md): Choose the interpreter that runs python3 inside the workspace, pyodide (default) or the sandboxed monty runtime. - [JavaScript](https://docs.mirage.strukto.ai/typescript/runtime/javascript.md): Run node/js inside the workspace on quickjs, a sandboxed JavaScript engine for small scripts and pipe transforms. - [Overview](https://docs.mirage.strukto.ai/typescript/runtime/sandbox.md): Run captured programs inside a sandbox (Docker, Apple Container, smolvm, Daytona, e2b, or any machine over SSH) you provision yourself. - [Docker](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/docker.md): Run captured command lines in an existing Docker container. - [Apple Container](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/apple_container.md): Run captured command lines in an existing container under Apple's container tool. - [smolvm](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/smolvm.md): Run captured command lines in an existing smolvm microVM. - [Daytona](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/daytona.md): Run captured command lines in an existing Daytona sandbox. - [E2B](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/e2b.md): Run captured command lines in an existing E2B sandbox. - [SSH](https://docs.mirage.strukto.ai/typescript/runtime/sandbox/ssh.md): Run captured command lines on any machine you can reach over SSH. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.