mountable.io

CrewAI

Let a CrewAI writer store a note on mountable.io, then have the reader and a later run read that same file.

A CrewAI task passes the previous answer to the next agent. When that process exits, a new run does not have that answer.

mountable.io is a persistent filesystem for AI agents. The writer stores the note there. The reader, and a later process, read that same file.

mountable.io maintains the runnable example, separately from CrewAI's packages. The crew reads and writes one file. This example does not call a model provider.

Prerequisites

Use an existing mountable.io account with a saved payment method, an existing filesystem and an API key that can access it. Storage and file operations follow the usage prices. The example creates no account, filesystem or credits.

You also need Python 3.11+ and uv. Set MOUNTABLE_API_KEY in your private environment or secret manager. Never put a key in a command argument. Use your filesystem ID in place of FS_ID below.

git clone https://github.com/writeitai/mountable.git
cd mountable/examples/crewai-workspace
uv sync --locked
export FS_ID="your-filesystem-id"

Your backend chooses the filesystem and the note path from its authenticated user. Do not let a model choose another user's filesystem.

Share a note across agents

handoff runs a writer and a reader in one crew. write_note creates notes/brief.md and the writer answers stored. The reader receives that word as context, not the note body, and reads the file.

uv run python crew.py handoff \
  --filesystem "$FS_ID" \
  --path notes/brief.md \
  --text "Parser review complete. Check the file next."

The path has to look like notes/brief.md. The note is UTF-8 text up to 16 KiB. The write uses If-None-Match: *, so an existing file is left as it is. After a timeout, read the path before writing it again.

A 402 with filesystem_spending_cap_reached stops that user's billable mountable.io work. Other filesystems keep working. The filesystem cap does not limit what a model provider charges if you add a model later.

Read it from a fresh run

resume is a new process. It runs only the reader and opens the filesystem read-only.

uv run python crew.py resume \
  --filesystem "$FS_ID" \
  --path notes/brief.md

The command prints the note. It does not print the API key. Use a new path for each note you want to keep. This example does not delete files for you.

Offline checks

From the example directory:

uv run pytest -q

The tests run a real CrewAI crew against a fake filesystem. They make no paid cloud or model calls.

Sources: CrewAI tools, Files API.