---
title: Resource Matrix
description: Compare Mirage resources by access, runtime, and setup path.
icon: grid-2
---

## How To Read This Matrix

Use this page to pick the first resource to try. If you want the fastest path, start with RAM or disk. If you need real integrations, jump from the setup guide to the resource docs.

The **Access** column separates filesystem access from API actions. `read`, `write`, and `exec` are `MountMode` values; `exec` allows commands to launch binaries from the mount and is typically used with Disk or RAM. `actions` means the resource also exposes mutating commands such as sending a message or creating an issue; run those commands on a `WRITE` mount. The **Docs** column shows where each resource is available, with one icon per supported runtime: <Icon icon="python" /> Python, <Icon icon="node-js" /> TypeScript (Node), and <Icon icon="globe" /> TypeScript (Browser). Click an icon to jump to that runtime's docs.

Sections below mirror the **Setup** sidebar so you can pick a category and follow the same path through credentials → resource docs.

## Infrastructure

No external setup, these run locally or against a connection string you already have.

| Resource | Access | Docs | Notes |
| --- | --- | --- | --- |
| RAM | read, write, exec | [<Icon icon="python" />](/python/resource/ram) [<Icon icon="node-js" />](/typescript/quickstart) [<Icon icon="globe" />](/typescript/quickstart) | Best first-run option |
| Disk | read, write, exec | [<Icon icon="python" />](/python/resource/disk) [<Icon icon="node-js" />](/typescript/setup/disk) | Local filesystem bridge |
| OPFS | read, write, exec | [<Icon icon="globe" />](/typescript/setup/opfs) | Browser-only persistent filesystem |
| Redis | read, write, exec | [<Icon icon="python" />](/python/resource/redis) [<Icon icon="node-js" />](/typescript/setup/redis) | Persistent cache-backed workspace |
| SSH | read, write | [<Icon icon="python" />](/python/resource/ssh) [<Icon icon="node-js" />](/typescript/setup/ssh) | Remote filesystem access |

## Object Storage

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| S3 | read, write | [S3](/home/setup/s3) | [<Icon icon="python" />](/python/resource/s3) [<Icon icon="node-js" />](/typescript/setup/s3) [<Icon icon="globe" />](/typescript/setup/s3) | Common cloud object store |
| R2 | read, write | [R2](/home/setup/r2) | [<Icon icon="python" />](/python/resource/r2) [<Icon icon="node-js" />](/typescript/setup/r2) [<Icon icon="globe" />](/typescript/setup/r2) | S3-style API |
| GCS | read, write | [GCS](/home/setup/gcs) | [<Icon icon="python" />](/python/resource/gcs) [<Icon icon="node-js" />](/typescript/setup/gcs) [<Icon icon="globe" />](/typescript/setup/gcs) | GCP object storage |
| OCI | read, write | [OCI](/home/setup/oci) | [<Icon icon="python" />](/python/resource/oci) [<Icon icon="node-js" />](/typescript/setup/oci) [<Icon icon="globe" />](/typescript/setup/oci) | Oracle object storage |
| Supabase | read, write | [Supabase](/home/setup/supabase) | [<Icon icon="python" />](/python/resource/supabase) [<Icon icon="node-js" />](/typescript/setup/supabase) [<Icon icon="globe" />](/typescript/setup/supabase) | Storage-oriented workflows |
| MinIO | read, write | [MinIO](/home/setup/minio) | [<Icon icon="python" />](/python/resource/minio) [<Icon icon="node-js" />](/typescript/setup/minio) [<Icon icon="globe" />](/typescript/setup/minio) | Self-hosted S3-compatible store |
| Ceph | read, write | [Ceph](/home/setup/ceph) | [<Icon icon="python" />](/python/resource/ceph) [<Icon icon="node-js" />](/typescript/setup/ceph) [<Icon icon="globe" />](/typescript/setup/ceph) | Ceph Rados Gateway (self-hosted) |
| SeaweedFS | read, write | [SeaweedFS](/home/setup/seaweedfs) | [<Icon icon="python" />](/python/resource/seaweedfs) [<Icon icon="node-js" />](/typescript/setup/seaweedfs) [<Icon icon="globe" />](/typescript/setup/seaweedfs) | SeaweedFS S3 gateway (self-hosted; backs Blaxel Agent Drive) |
| Wasabi | read, write | [Wasabi](/home/setup/wasabi) | [<Icon icon="python" />](/python/resource/wasabi) [<Icon icon="node-js" />](/typescript/setup/wasabi) [<Icon icon="globe" />](/typescript/setup/wasabi) | Low-cost S3-compatible cloud |
| Backblaze B2 | read, write | [Backblaze B2](/home/setup/backblaze) | [<Icon icon="python" />](/python/resource/backblaze) [<Icon icon="node-js" />](/typescript/setup/backblaze) [<Icon icon="globe" />](/typescript/setup/backblaze) | B2 via S3 API |
| DigitalOcean Spaces | read, write | [DigitalOcean](/home/setup/digitalocean) | [<Icon icon="python" />](/python/resource/digitalocean) [<Icon icon="node-js" />](/typescript/setup/digitalocean) [<Icon icon="globe" />](/typescript/setup/digitalocean) | DO Spaces via S3 API |
| Tencent COS | read, write | [Tencent COS](/home/setup/tencent) | [<Icon icon="python" />](/python/resource/tencent) [<Icon icon="node-js" />](/typescript/setup/tencent) [<Icon icon="globe" />](/typescript/setup/tencent) | Tencent Cloud Object Storage |
| Alibaba OSS | read, write | [Alibaba OSS](/home/setup/aliyun) | [<Icon icon="python" />](/python/resource/aliyun) [<Icon icon="node-js" />](/typescript/setup/aliyun) [<Icon icon="globe" />](/typescript/setup/aliyun) | Aliyun Object Storage Service |
| Scaleway | read, write | [Scaleway](/home/setup/scaleway) | [<Icon icon="python" />](/python/resource/scaleway) [<Icon icon="node-js" />](/typescript/setup/scaleway) [<Icon icon="globe" />](/typescript/setup/scaleway) | Scaleway Object Storage |
| QingStor | read, write | [QingStor](/home/setup/qingstor) | [<Icon icon="python" />](/python/resource/qingstor) [<Icon icon="node-js" />](/typescript/setup/qingstor) [<Icon icon="globe" />](/typescript/setup/qingstor) | QingCloud Object Storage |
| HF Buckets | read, write | [HF Buckets](/home/setup/hf_buckets) | [<Icon icon="python" />](/python/resource/hf_buckets) [<Icon icon="node-js" />](/typescript/setup/hf_buckets) | Hugging Face Buckets |
| HF Datasets | read, write | [HF Datasets](/home/setup/hf_datasets) | [<Icon icon="python" />](/python/resource/hf_datasets) [<Icon icon="node-js" />](/typescript/setup/hf_datasets) | Hugging Face Dataset repos (lazy reads) |
| HF Models | read, write | [HF Models](/home/setup/hf_models) | [<Icon icon="python" />](/python/resource/hf_models) [<Icon icon="node-js" />](/typescript/setup/hf_models) | Hugging Face Model repos (weights stream on demand) |
| HF Spaces | read, write | [HF Spaces](/home/setup/hf_spaces) | [<Icon icon="python" />](/python/resource/hf_spaces) [<Icon icon="node-js" />](/typescript/setup/hf_spaces) | Hugging Face Space repos (app code, configs) |

## Google Workspace

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Gmail | read, actions | [Google](/home/setup/google) | [<Icon icon="python" />](/python/resource/gmail) [<Icon icon="node-js" />](/typescript/setup/gmail) [<Icon icon="globe" />](/typescript/setup/gmail) | Read, send, reply, forward, and triage mail |
| Drive | read, write, actions | [Google](/home/setup/google) | [<Icon icon="python" />](/python/resource/gdrive) [<Icon icon="node-js" />](/typescript/setup/gdrive) [<Icon icon="globe" />](/typescript/setup/gdrive) | Read-write file tree plus the `gws` Google API commands |
| Docs | read, actions | [Google](/home/setup/google) | [<Icon icon="python" />](/python/resource/gdocs) [<Icon icon="node-js" />](/typescript/setup/gdocs) [<Icon icon="globe" />](/typescript/setup/gdocs) | Read plus document create/update commands |
| Sheets | read, actions | [Google](/home/setup/google) | [<Icon icon="python" />](/python/resource/gsheets) [<Icon icon="node-js" />](/typescript/setup/gsheets) [<Icon icon="globe" />](/typescript/setup/gsheets) | Read plus spreadsheet create/update commands |
| Slides | read, actions | [Google](/home/setup/google) | [<Icon icon="python" />](/python/resource/gslides) [<Icon icon="node-js" />](/typescript/setup/gslides) [<Icon icon="globe" />](/typescript/setup/gslides) | Read plus presentation create/update commands |

## Microsoft

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| OneDrive | read, write | [OneDrive](/home/setup/onedrive) | [<Icon icon="python" />](/python/resource/onedrive) [<Icon icon="node-js" />](/typescript/setup/onedrive) [<Icon icon="globe" />](/typescript/setup/onedrive) | Files and folders through Microsoft Graph |
| SharePoint | read, write | [SharePoint](/home/setup/sharepoint) | [<Icon icon="python" />](/python/resource/sharepoint) [<Icon icon="node-js" />](/typescript/setup/sharepoint) [<Icon icon="globe" />](/typescript/setup/sharepoint) | Document libraries through Microsoft Graph; `site`, `drive`, and `key_prefix` can scope a mount to one folder subtree |

## Cloud Files

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Databricks Volume | read, write | [Databricks Volume](/home/setup/databricks) | [<Icon icon="python" />](/python/resource/databricks_volume) [<Icon icon="node-js" />](/typescript/setup/databricks_volume) | Unity Catalog volume subtree; mv/cp are non-atomic copies |
| Dropbox | read, write | [Dropbox](/home/setup/dropbox) | [<Icon icon="python" />](/python/resource/dropbox) [<Icon icon="node-js" />](/typescript/dropbox) [<Icon icon="globe" />](/typescript/dropbox) | OAuth2 + PKCE; Python, Node, and browser; `root_path` mounts a subfolder; `content_search` narrows grep/rg via the search API |
| Box | read, write | [Box](/home/setup/box) | [<Icon icon="python" />](/python/resource/box) [<Icon icon="node-js" />](/typescript/box) [<Icon icon="globe" />](/typescript/box) | OAuth2 + PKCE or developer token; Python, Node, and browser; `root_folder_id` mounts a subfolder; all items served as raw bytes |
| Nextcloud | read, write | [Nextcloud](/home/setup/nextcloud) | [<Icon icon="python" />](/python/resource/nextcloud) | Self-hosted Nextcloud / ownCloud / WebDAV; HTTP Basic auth with app password |

## Code & DevOps

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| GitHub | read | [GitHub](/home/setup/github) | [<Icon icon="python" />](/python/resource/github) [<Icon icon="node-js" />](/typescript/setup/github) [<Icon icon="globe" />](/typescript/setup/github) | Repository browsing |
| Linear | read, actions | [Linear](/home/setup/linear) | [<Icon icon="python" />](/python/resource/linear) [<Icon icon="node-js" />](/typescript/setup/linear) [<Icon icon="globe" />](/typescript/setup/linear) | Read, create, update, comment on, and organize issues |
| Langfuse | read | [Langfuse](/home/setup/langfuse) | [<Icon icon="python" />](/python/resource/langfuse) [<Icon icon="node-js" />](/typescript/setup/langfuse) [<Icon icon="globe" />](/typescript/setup/langfuse) | Trace exploration |

## Messaging

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Slack | read, actions | [Slack](/home/setup/slack) | [<Icon icon="python" />](/python/resource/slack) [<Icon icon="node-js" />](/typescript/slack) [<Icon icon="globe" />](/typescript/slack) | Read, post, reply, react, and search |
| Discord | read, actions | [Discord](/home/setup/discord) | [<Icon icon="python" />](/python/resource/discord) [<Icon icon="node-js" />](/typescript/discord) [<Icon icon="globe" />](/typescript/discord) | Read history, send messages, and add reactions |
| Email | read, actions | [Email](/home/setup/email) | [<Icon icon="python" />](/python/resource/email) [<Icon icon="node-js" />](/typescript/setup/email) | Read, send, reply, forward, and triage; browser blocked by raw TCP |

## Database

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| MongoDB | read | [MongoDB](/home/setup/mongodb) | [<Icon icon="python" />](/python/resource/mongodb) [<Icon icon="node-js" />](/typescript/setup/mongodb) [<Icon icon="globe" />](/typescript/setup/mongodb) | Collection-backed views |
| GridFS | read, write | [GridFS](/home/setup/gridfs) | [<Icon icon="python" />](/python/resource/gridfs) [<Icon icon="node-js" />](/typescript/setup/gridfs) | File storage on MongoDB with revisions; find runs server-side |
| Postgres | read | [Postgres](/home/setup/postgres) | [<Icon icon="python" />](/python/resource/postgres) [<Icon icon="node-js" />](/typescript/setup/postgres) [<Icon icon="globe" />](/typescript/setup/postgres) | SQL tables exposed as paths |
| LanceDB | read | [LanceDB](/home/setup/lancedb) | [<Icon icon="python" />](/python/resource/lancedb) [<Icon icon="node-js" />](/typescript/setup/lancedb) | Label folders + semantic search command |
| Qdrant | read | [Qdrant](/home/setup/qdrant) | [<Icon icon="python" />](/python/resource/qdrant) [<Icon icon="node-js" />](/typescript/setup/qdrant) [<Icon icon="globe" />](/typescript/setup/qdrant) | Collections as folders + semantic search command |

## Knowledge

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Dify | read | [Dify](/home/setup/dify) | [<Icon icon="python" />](/python/resource/dify) | Knowledge documents and retrieval search |
| Chroma | read | [Chroma](/home/setup/chroma) | [<Icon icon="python" />](/python/resource/chroma) [<Icon icon="node-js" />](/typescript/setup/chroma) | ChromaDB collection exposed as files and vector search |

## Memory

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Mem0 | read, search | [Mem0](/home/setup/mem0) | [<Icon icon="python" />](/python/resource/mem0) [<Icon icon="node-js" />](/typescript/setup/mem0) [<Icon icon="globe" />](/typescript/setup/mem0) | Scoped memories as JSON files plus semantic search |

## Notes

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Notion | read, actions | [Notion](/home/setup/notion) | [<Icon icon="python" />](/python/resource/notion) [<Icon icon="node-js" />](/typescript/setup/notion) [<Icon icon="globe" />](/typescript/setup/notion) | Read pages; create pages, append blocks, and add comments |

## Others

| Resource | Access | Setup | Docs | Notes |
| --- | --- | --- | --- | --- |
| Trello | read, actions | [Trello](/home/setup/trello) | [<Icon icon="python" />](/python/resource/trello) [<Icon icon="node-js" />](/typescript/setup/trello) [<Icon icon="globe" />](/typescript/setup/trello) | Read, create, update, move, label, and comment on cards |

## Agent Frameworks

Mirage drops into the major agent application frameworks. Each adapter exposes a `Workspace` as the agent's filesystem and shell. Click an icon to jump to the integration docs.

| Framework | Docs | Notes |
| --- | --- | --- |
| OpenAI Agents SDK | [<Icon icon="python" />](/python/agents/openai-agents) [<Icon icon="node-js" />](/typescript/agents/openai) [<Icon icon="globe" />](/typescript/agents/openai) | Shell, editor, and multimodal file-reading tools for Mirage workspaces. |
| Vercel AI SDK | [<Icon icon="node-js" />](/typescript/agents/vercel) [<Icon icon="globe" />](/typescript/agents/vercel) | `mirageTools()` returns five typed tools for `generateText` / `streamText`. |
| LangChain (Deep Agents) | [<Icon icon="python" />](/python/agents/langchain) [<Icon icon="node-js" />](/typescript/agents/langchain) | `LangchainWorkspace` backend for Python and Node Deep Agents. |
| Pi Coding Agent | [<Icon icon="node-js" />](/typescript/agents/pi) | Mirage extension for `@earendil-works/pi-coding-agent`. Node only. |
| OpenCode | [<Icon icon="node-js" />](/typescript/agents/opencode) | Native installable plugin with Mirage tools and per-session stale-write protection. Node only. |
| Mastra | [<Icon icon="node-js" />](/typescript/agents/mastra) | `mirageTools()` for Mastra `Agent` definitions. Node only. |
| Pydantic AI | [<Icon icon="python" />](/python/agents/pydantic-ai) | For pydantic-ai and pydantic-deepagents. |
| CAMEL-AI | [<Icon icon="python" />](/python/agents/camel) | For CAMEL `ChatAgent`. |
| OpenHands | [<Icon icon="python" />](/python/agents/openhands) | For the OpenHands agent SDK. |
| Claude Code (CLI) | [<Icon icon="python" />](/python/agents/claude-code) [<Icon icon="node-js" />](/typescript/agents/claude-code) | Mount via FUSE; run `claude` against the mountpoint. |
| Codex (CLI and app) | [<Icon icon="python" />](/python/agents/codex) [<Icon icon="node-js" />](/typescript/agents/codex) | Python uses FUSE; TypeScript provides the plugin with Mirage tools and stale-write protection, plus FUSE. |
| Grok Build | [<Icon icon="python" />](/python/agents/grok-build) [<Icon icon="node-js" />](/typescript/agents/grok-build) | Python uses FUSE; TypeScript provides the Grok plugin with Mirage tools, plus FUSE. |

## Recommended Starting Points

- Use [RAM](/python/resource/ram) if you want to learn Mirage itself.
- Use [Disk](/python/resource/disk) if you want local file interoperability.
- Use [S3](/python/resource/s3) or [GitHub](/python/resource/github) if you want a realistic first external integration.
