Custom Agents
Custom Agents
Section titled “Custom Agents”Pre-built templates cover common use cases. But the real power of Moe’s is building agents tailored to your specific workflows.
Building a Custom Agent
Section titled “Building a Custom Agent”1. Define the role
Section titled “1. Define the role”Write a SOUL.md that describes what the agent does, how it communicates, and what its output looks like. Be specific.
# SOUL.md - Invoice Processing Agent
You process incoming invoices. You extract key fields(vendor, amount, due date, line items), validate againstpurchase orders, and flag discrepancies for review.
## Output Format- Vendor: [name]- Invoice #: [number]- Amount: [total]- Due: [date]- PO Match: Yes/No- Discrepancies: [list or "none"]2. Add skills
Section titled “2. Add skills”Install skills from the Moe’s skill registry or write your own:
# Install a community skillclawhub install pdf-reader --workdir /path/to/agent/workspace
# Or create your ownmkdir skills/invoice-parser# Write SKILL.md with instructions3. Configure tools
Section titled “3. Configure tools”Decide what tools the agent needs access to:
web_search/web_fetch— for research tasksexec— for running commands (git, scripts, CLI tools)read/write/edit— for file operationsbrowser— for visual verification and screenshotsgog— for Gmail, Calendar, Drive access
4. Set the model
Section titled “4. Set the model”Choose a model based on the complexity of the task:
| Task Complexity | Model | Monthly Cost (est.) |
|---|---|---|
| Simple routing, checks | Gemini Flash | $5-15 |
| Research, writing | Claude Sonnet | $20-50 |
| Complex coding, analysis | Claude Opus | $50-200 |
5. Connect and test
Section titled “5. Connect and test”Add the agent to your gateway config, bind it to a Telegram bot, and send it a test task.
Example: Automated Development Pipeline
Section titled “Example: Automated Development Pipeline”One powerful custom setup is a coding agent that builds and deploys web apps on demand.
Architecture
Section titled “Architecture”User: "Build a task tracker with due dates and priorities" ↓Coding Agent (Claude Opus) → scaffolds Next.js app → implements features → commits to user's repo ↓QA Agent (Gemini Flash) → runs build → checks for errors → takes screenshots ↓Deploy Agent → pushes to Vercel / Cloudflare Pages → sets up subdomain (user.moes.ai/apps/tasks) ↓User: "Your app is live at user.moes.ai/apps/tasks"Infrastructure Options
Section titled “Infrastructure Options”Managed by Moe’s:
- We host the repo, run the builds, manage the deployments
- Apps deploy to
username.moes.ai/apps/app-name - Simpler for users, more infrastructure cost for us
- Requires larger VM instances (builds need RAM)
User-managed:
- User connects their own GitHub and Vercel accounts
- Agent pushes to their repo, Vercel auto-deploys
- User has full control over code and hosting
- Lower cost for us, more setup for the user
Hybrid:
- Start with managed hosting for quick demos
- Migrate to user-managed when they’re ready for production
- Agent helps with the migration
Requirements
Section titled “Requirements”- Coding agent needs a beefier VM (4GB+ RAM for builds)
- GitHub access (deploy key or user’s own account)
- Deployment platform access (Vercel API token or CLI)
- QA agent for verification before going live
This is an advanced feature. Start with simpler agents and add coding capabilities as your team gets comfortable with A2A workflows.