Agent Workspace
Your agent has persistent storage mounted at /data. Files here survive between conversations and container restarts.
Directory structure
Section titled “Directory structure”/data├── MEMORY.md # Agent's persistent memory├── config.json # Agent preferences (model, etc.)├── skills/ # Custom per-agent skills (override system skills)├── sessions/│ └── {id}.jsonl # Conversation history files├── outbox/│ ├── email/ # Pending emails to send│ ├── sent/ # Successfully sent emails│ └── failed/ # Failed email attempts└── events/ └── {name}/ # Scheduled event filesMEMORY.md
Section titled “MEMORY.md”This is your agent’s brain. It persists across sessions and contains:
- Agent identity and configuration
- Owner information
- Outbox pattern instructions
- Custom context you want the agent to remember
The agent reads this file at the start of every turn.
config.json
Section titled “config.json”Stores agent preferences like model selection:
{ "model": "haiku"}You can change the model via any channel:
/model haiku— Fastest, cheapest/model sonnet— Balanced/model opus— Most capable
Sessions
Section titled “Sessions”Each conversation is stored as a JSONL file in /data/sessions/. Sessions contain:
- Your messages
- Agent responses
- Tool calls and results
- Usage statistics
Managing sessions
Section titled “Managing sessions”| Command | Effect |
|---|---|
/clear | Start a new session (preserves old ones) |
/resume | List recent sessions with hashes |
/resume abc1 | Resume session by hash |
/compact | Compress context to reduce token usage |
Outbox
Section titled “Outbox”The outbox is how your agent sends emails. Instead of calling APIs directly, the agent writes JSON files:
/data/outbox/├── email/ # Pending - agent just wrote these├── sent/ # Successfully sent by platform└── failed/ # Failed to send (will retry)Example outbox file:
{ "to": ["user@example.com"], "subject": "Re: Your question", "body": "Here's what I found...", "in_reply_to": "<original-message-id>", "status": "pending"}See Outbox Pattern for details.
Events
Section titled “Events”The /data/events/ directory stores scheduled event files. Your agent can create events that fire on a schedule — the platform wakes the container at the right time.
Skills
Section titled “Skills”Custom per-agent skills live in /data/skills/. These override system skills of the same name.
System skills are at /opt/fat-skills/ and include browser-tools, gh-login, and pdf-gen.
Three-tier priority: system < workspace (/data/skills/) < channel-specific. User skills always win.
Pre-installed tools
Section titled “Pre-installed tools”Your agent’s container includes:
Core utilities:
git,curl,wget,jq,yqripgrep(rg),fd-find(fdfind),treesqlite3,psql(PostgreSQL client)zip,unzip,tmux,less
Python:
python3withuv(fast package manager)fpdf2for PDF generation
Developer tools:
gh(GitHub CLI)- Node.js 22 LTS
Browser:
- Headless Chromium
browser-screenshot.js,browser-nav.js,browser-eval.js
See Skills & Tools for the full list.
Storage limits
Section titled “Storage limits”Currently unlimited during launch. Future limits TBD per tier.
Files in the outbox are automatically cleaned up after successful sending.
Accessing files
Section titled “Accessing files”You can view and edit files through:
- Any channel — Ask your agent to read/write files
- Dashboard — File browser coming soon
- Direct R2 — Export your data anytime (contact support)
Next steps
Section titled “Next steps”- Memory Bank Pattern — Organize project knowledge
- Skills & Tools — What your agent can do
- Email Communication — How email works