Daytona currently restricts network access for users on Tier 1 & 2 billing to Essential services only (see Network Limits). This prevents Mesa from connecting to its cloud storage from within the sandbox. We are working with the Daytona team to address this. Reach out on Discord with any questions.
- Outside the sandbox — use the Mesa SDK (TypeScript or Python) to create repos, manage API keys, and orchestrate your workflow.
- Inside the sandbox — install the
mesaCLI, write a config file with your API key, and runmesa mount --daemonizeto mount your repos as local directories. - Run your agent —
cdinto the mount path and launch your agent (e.g. Claude Code, Codex, or a custom agent). Any file edits are automatically persisted back to Mesa.
Image setup
First, ensure that your Daytona image is properly configured. For example, you can use Daytona’s declarative image builder system, which exposes methods likedockerfileCommands.
Create and mount
Now you can use the Daytona SDK to create a new sandbox with your properly configured image and mount MesaFS inside the sandbox.Tips
- Use scoped, short-lived API keys. Create a dedicated API key for each sandbox session with only the scopes it needs. See Auth and Permissions for details.
- Use
--daemonize. Always runmesa mount --daemonizein sandbox environments so Mesa runs as a background process and doesn’t block your agent’s terminal. - Don’t forget
user_allow_other. See OS-level Virtualization — this is the most common setup issue in sandbox environments.

