# Molt on TrueNAS SCALE Setup Guide Molt is an open-source personal AI assistant that runs on your own infrastructure with messaging integrations (Telegram, WhatsApp, Discord), browser automation, and system access. - **Website:** https://www.molt.bot/ - **GitHub:** https://github.com/moltbot/moltbot - **Docs:** https://docs.molt.bot/ ## Prerequisites - TrueNAS SCALE (has native Docker support) - API key from a supported AI provider - Telegram bot token (from @BotFather) ## AI Provider Options ### Price Comparison (per 1M tokens) | Provider | Model | Input | Output | Notes | |----------|-------|-------|--------|-------| | **Z.AI** | GLM-4.7-FlashX | $0.07 | $0.40 | Cheapest capable model | | **Z.AI** | GLM-4.7 | $0.60 | $2.20 | Full flagship model | | **Z.AI** | GLM-4.5-Air | $0.20 | $1.10 | Good balance | | **NanoGPT** | Various | varies | varies | 200+ models, pay-as-you-go | | **Anthropic** | Claude Sonnet 4 | $3.00 | $15.00 | Best quality, most expensive | ### Recommended: Z.AI Z.AI (formerly Zhipu) is directly supported by Molt and 10-40x cheaper than Anthropic. - Get API key at: https://open.bigmodel.cn/ or https://z.ai - GLM-4.7 has 200K context window - Designed for coding/agent workflows ### Alternative: Anthropic If you need highest quality: - Get API key at: https://console.anthropic.com - Note: Claude Code subscription does NOT provide API access - you need separate API billing ### Alternative: NanoGPT Pay-as-you-go aggregator with 200+ models: - Website: https://nano-gpt.com - Requires custom OpenAI-compatible endpoint configuration ## Step 1: Create Telegram Bot 1. Open Telegram and search for **@BotFather** 2. Send `/newbot` 3. Choose a display name (e.g., "My Molt Assistant") 4. Choose a username (must end in `bot`, e.g., `my_molt_bot`) 5. Save the token BotFather provides ## Step 2: Deploy on TrueNAS SCALE ### SSH into TrueNAS ```bash ssh admin@your-truenas-ip ``` ### Create Dataset and Clone Repository ```bash # Create a dataset via TrueNAS UI first, then: mkdir -p /mnt/your-pool/apps/moltbot cd /mnt/your-pool/apps/moltbot # Clone the repository git clone https://github.com/moltbot/moltbot.git . ``` ### Configure Environment ```bash # Create .env file with your credentials cat > .env << 'EOF' # Choose ONE of these AI providers: Z_AI_API_KEY=your-z-ai-key-here # ANTHROPIC_API_KEY=your-anthropic-key-here # Telegram TELEGRAM_BOT_TOKEN=your-telegram-bot-token-here EOF ``` ### Run Setup ```bash # Optional: Mount additional directories export CLAWDBOT_HOME_VOLUME="moltbot_home" export CLAWDBOT_EXTRA_MOUNTS="/mnt/your-pool/documents:/home/node/documents:rw" # Run the setup script ./docker-setup.sh ``` ### Configure Molt Create or edit `~/.clawdbot/moltbot.json`: ```json { "agent": { "model": "z-ai/glm-4.7-flashx" }, "channels": { "telegram": { "enabled": true, "dmPolicy": "pairing" } } } ``` For Anthropic instead: ```json { "agent": { "model": "anthropic/claude-sonnet-4-20250514" } } ``` ### Start the Gateway ```bash docker compose up -d moltbot-gateway ``` ## Step 3: Pair Telegram 1. Open Telegram and message your bot 2. You'll receive a pairing code 3. Approve it via CLI: ```bash docker compose run --rm moltbot-cli pairing approve telegram ``` ## Step 4: Verify Access the Control UI at: `http://your-truenas-ip:18789/` Check gateway health: ```bash docker compose exec moltbot-gateway node dist/index.js health --token "$CLAWDBOT_GATEWAY_TOKEN" ``` ## Management Commands ```bash # View logs docker compose logs -f moltbot-gateway # Restart docker compose restart moltbot-gateway # Stop docker compose down # Update git pull docker compose build docker compose up -d ``` ## Features Once running, Molt can: - Respond via Telegram DMs and group chats - Execute shell commands on your TrueNAS - Browse the web and fill forms - Manage files on mounted volumes - Set reminders and run scheduled tasks - Learn your preferences over time ## Troubleshooting ### Bot not responding - Check logs: `docker compose logs moltbot-gateway` - Verify Telegram token is correct - Ensure pairing was approved ### API errors - Verify API key is set in `.env` - Check provider account has credits/billing enabled ### Permission issues - Ensure Docker has access to mounted paths - Check file ownership in mounted volumes ## Resources - [Molt Docker Docs](https://docs.molt.bot/install/docker) - [Telegram Channel Setup](https://docs.molt.bot/channels/telegram) - [Z.AI Pricing](https://docs.z.ai/guides/overview/pricing) - [NanoGPT](https://nano-gpt.com)