ClamBot: AI Agent Runs LLM-Generated Code in WASM Sandbox for Security

What ClamBot Does
ClamBot is an AI agent framework that addresses security concerns with existing agent frameworks by running all LLM-generated code in a WebAssembly sandbox instead of using exec() or subprocess calls. The creator built it after trying frameworks that execute arbitrary code directly on the host machine, citing examples like LangChain having a CVE for this approach, AutoGen shelling out with subprocess, and SWE-Agent running bash commands from the model.
Technical Implementation
ClamBot is built on top of amla-sandbox, a WASM sandbox that uses QuickJS in Wasmtime. The LLM writes JavaScript code that runs in a memory-isolated sandbox with zero network access. Every tool call (HTTP, filesystem, cron) must pass through an approval gate back in Python. No Docker or VM is required - it runs as one binary.
Key Features
- Sandbox Security: All code runs in WASM - cannot touch host memory or network
- Approval Gate: SHA-256 fingerprinted approval gate on every tool call with pre-approve patterns (e.g., "allow web_fetch for api.coinbase.com")
- Clam Reuse: Successful scripts get saved as "clams" and can be reused, reducing API costs for repeated requests
- Multi-Provider Support: OpenRouter, Anthropic, OpenAI, Gemini, DeepSeek, Groq, Ollama
- Telegram Integration: Telegram bot with inline approval buttons
- Additional Features: Persistent memory, cron scheduling, SSRF protection that blocks private IPs, secrets never appear in logs/tool args/traces
Example Workflow
User asks: "what are the top movers on binance?" The sandbox executes JavaScript → makes http_request to Binance API → goes through approval gate → returns result. The bot responds with the top 10 movers on Binance by 24h change.
Getting Started
bash git clone https://github.com/clamguy/clambot.git
cd clambot
uv run clambot onboard
uv run clambot agentStack and Scale
The project is built with Python + QuickJS/Wasmtime, contains approximately 10K lines of code, and was inspired by OpenClaw and nanobot. The creator built it because they wanted "an AI agent I could actually trust on my server."
📖 Read the full source: r/openclaw
👀 See Also

ClawCode: Migrate OpenClaw Agents to Claude Code as a Plugin
ClawCode is a Node.js plugin for Claude Code that imports OpenClaw agents, including IDENTITY, SOUL, memory, skills, and crons from ~/.openclaw/workspace/. It provides SQLite+FTS5 searchable memory, messaging plugins for WhatsApp, Telegram, Discord, iMessage, and Slack, and a nightly 'dream' process for memory consolidation.

Claude Desktop + Blender via MCP: Real-Time 3D Workflow Closes the Feedback Loop
An open-source Blender add-on runs an MCP server inside Blender, letting Claude Desktop inspect scenes, create objects, render images, and read results—closing the script-paste feedback loop.

Mengram adds persistent memory to OpenClaw agents
Mengram is an open-source memory system that gives OpenClaw agents long-term memory across sessions, solving the problem of agents forgetting everything when they restart. It provides episodic, entity, and procedural memory with smart archival of outdated facts.

Savant Commander 48B: A Custom Qwen 3 Mixture-of-Experts Model with 12 Distilled Models
Savant Commander 48B is a custom Qwen 3 Mixture-of-Experts model with hand-coded routing that combines 12 distilled models from providers like Claude, Gemini, OpenAI, and Deepseek. It features 256K context length and allows prompt-controlled activation of specific distilled models.