β‘ FastClaw
A lightweight, self-hosted AI Agent framework written in Go.

Single binary Β· Any LLM Β· Multi-channel Β· Plugin system Β· Web dashboard
Install Β· Quick Start Β· Features Β· Documentation
What is FastClaw?
FastClaw is a self-hosted AI agent runtime. It connects your LLM to chat platforms, executes tools, manages memory, and runs scheduled tasks β all from a single Go binary with zero dependencies.
curl -fsSL https://raw.githubusercontent.com/fastclaw-ai/fastclaw/dev/install.sh | bash
fastclaw # Opens setup wizard in browser
π¦ Install
One-liner (macOS / Linux):
curl -fsSL https://raw.githubusercontent.com/fastclaw-ai/fastclaw/dev/install.sh | bash
Windows: Download .zip from Releases, extract, double-click fastclaw.exe.
Already installed?
fastclaw upgrade
From source:
git clone https://github.com/fastclaw-ai/fastclaw.git
cd fastclaw && make build
π Quick Start
- Run
fastclaw β browser opens the setup wizard at http://localhost:18953
- Pick your LLM provider (OpenAI, OpenRouter, DeepSeek, Groq, Ollama...)
- Add a Telegram bot token (optional)
- Click Launch β‘
That's it. Your agent is live.
β¨ Features
Core
| Feature |
Description |
| ReAct Agent Loop |
Multi-turn reasoning + tool calling |
| Any LLM |
OpenAI-compatible API (OpenAI, Claude, DeepSeek, Gemini, Groq, Ollama, OpenRouter) |
| Multi-Agent |
Multiple agents with independent personalities, memory, and skills |
| Context Engineering |
Auto-pruning & LLM compression for long conversations |
| Dual-Layer Memory |
MEMORY.md (facts) + searchable conversation logs |
| Hook System |
Before/After hooks on prompts, model calls, tool calls |
| Hot Reload |
Edit config or SOUL.md β takes effect immediately, no restart |
Channels
| Channel |
Status |
| Telegram |
β
Multi-bot, groups, DMs |
| Discord |
β
Bot API + Gateway |
| Slack |
β
Socket Mode |
| Web Chat |
β
Built-in at /chat |
| Plugin channels |
β
Add any channel via plugin |
| Tool |
Description |
exec |
Shell commands (with optional Docker sandbox) |
read_file / write_file / list_dir |
File operations |
web_fetch |
Fetch web pages β markdown |
web_search |
Brave Search API |
memory_search |
Search conversation history |
message |
Send messages to any channel |
spawn_subagent |
Delegate tasks to other agents |
create_cron_job / list_cron_jobs / delete_cron_job |
Manage scheduled tasks |
load_skill |
Load skill instructions on demand |
| MCP tools |
Connect external tools via Model Context Protocol |
Automation
| Feature |
Description |
| CronTab |
Schedule tasks: cron expressions, intervals, one-time |
| Heartbeat |
Agent wakes every 30 min to check HEARTBEAT.md |
| Webhooks |
POST /hooks to trigger agent actions from external systems |
| Slash Commands |
/new /compact /status /help /version |
| Feature |
Description |
| Sandbox Exec |
Docker-based isolated command execution |
| Policy Engine |
YAML policies for filesystem, network, tools, resources |
| Credential Manager |
AES-256-GCM encrypted key storage, env auto-discovery |
| Tool Loop Detection |
Breaks after 3 identical consecutive calls |
| Feature |
Description |
| Web Dashboard |
Full management UI at localhost:18953 |
| Plugin System |
JSON-RPC subprocess plugins (any language) |
| Pluggable Storage |
File (default), PostgreSQL, SQLite |
| OpenAI-Compatible API |
POST /v1/chat/completions with SSE streaming |
| WebSocket Gateway |
OpenClaw-compatible protocol |
| ChatClaw Integration |
Works as ChatClaw backend runtime |
π Architecture
βββββββββββββββββββββββββββββββββββββββββββββββ
β FastClaw Gateway β
β β
Telegram βββββββββΆβ ββββββββββββ ββββββββββββββββββββββββ β
Discord ββββββββββΆβ β Message β β Agent Manager β β
Slack ββββββββββββΆβ β Bus βββββΆβ β β
Web UI βββββββββββΆβ β ββββββ Agent 1 (Mike) β β
Webhooks βββββββββΆβ β β β Agent 2 (Mary) β β
Plugins ββββββββββΆβ ββββββββββββ β Agent N ... β β
β ββββββββββββββββββββββββ β
β β β
β βββββββββββββββββββββΌβββββββββββ β
β βΌ βΌ βΌ β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β Tools β β Memory β β Sessions β β
β β β β β β β β
β β exec β βMEMORY.md β β JSONL β β
β β files β β logs/ β β compress β β
β β web β β search β β per-chat β β
β β MCP β β β β β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β Cron β β Plugins β β Policy β β
β β Schedule β β JSON-RPC β β Engine β β
β β Heartbeatβ β channels β β Sandbox β β
β β Webhooks β β tools β β Creds β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββββββββββ β
β β /v1/chat/completions (SSE) β β
β β /ws (WebSocket) β β
β β /api/* (REST) β β
β β Web Dashboard (:18953) β β
β ββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββ
π Agent Workspace
Each agent has its own workspace:
~/.fastclaw/agents/mike/agent/
βββ SOUL.md # Personality & communication style
βββ IDENTITY.md # Name, role, specialty
βββ AGENTS.md # Behavior instructions
βββ USER.md # About the user (auto-learns)
βββ TOOLS.md # Tool usage notes
βββ MEMORY.md # Long-term facts (auto-updated)
βββ HEARTBEAT.md # Periodic task checklist
βββ policy.yaml # Security policy (optional)
βββ agent.json # Model & config overrides
βββ memory/ # Searchable conversation logs
βββ sessions/ # JSONL conversation files
βββ skills/ # Agent-specific skills
π Plugin System
Extend FastClaw with plugins in any language. Plugins communicate via JSON-RPC over stdin/stdout.
~/.fastclaw/plugins/feishu/
βββ plugin.json # Manifest: id, type, command
βββ plugin.py # Implementation (Python/Node/Go/...)
Plugin types: channel Β· tool Β· provider Β· hook
{
"plugins": {
"enabled": true,
"entries": {
"feishu": { "enabled": true, "config": {"appId": "...", "appSecret": "..."} }
}
}
}
See examples/plugins/echo/ for a complete example.
π₯ Web Dashboard
Full management UI at http://localhost:18953:
| Page |
What you can do |
| Overview |
Gateway status, stats, quick actions |
| Chat |
Talk to your agents in the browser |
| Agents |
Create, edit, delete agents; edit SOUL.md |
| Skills |
View and manage installed skills |
| Plugins |
Enable/disable plugins, edit config |
| Channels |
Channel status and configuration |
| Cron Jobs |
Create and manage scheduled tasks |
| Settings |
Provider, storage, webhook config |
π API
FastClaw exposes an OpenAI-compatible API for programmatic access:
# Chat with an agent (SSE streaming)
curl -X POST http://localhost:18953/v1/chat/completions \
-H "Authorization: Bearer $TOKEN" \
-H "x-openclaw-agent-id: mike" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"hello"}],"stream":true}'
# List agents
curl http://localhost:18953/v1/agents -H "Authorization: Bearer $TOKEN"
ChatClaw integration: FastClaw works as a drop-in backend for ChatClaw. Auto-detected via ~/.openclaw/openclaw.json.
π Security
Sandbox execution β Run agent commands in Docker containers:
{"sandbox": {"enabled": true, "image": "fastclaw/sandbox:latest"}}
Policy engine β Declarative YAML policies:
name: standard
filesystem:
allowRead: ["/workspace/**"]
denyWrite: ["/etc/**"]
network:
mode: allowlist
outbound:
- host: api.openai.com
ports: [443]
tools:
deny: ["exec"]
Credential manager β Encrypted key storage:
fastclaw provider create openai --from-env
fastclaw provider list
π CLI Reference
# Core
fastclaw # Start (setup wizard or gateway)
fastclaw gateway # Start gateway explicitly
fastclaw version # Version info
fastclaw doctor # Check config health
fastclaw upgrade # Update to latest
# Agents
fastclaw agent create mike # Create new agent
fastclaw agent list # List agents
# Sessions
fastclaw session list # List sessions
fastclaw session clear KEY # Clear a session
fastclaw session clear-all # Clear all sessions
# Skills
fastclaw skill list # List installed skills
fastclaw skill remove NAME # Remove a skill
# Plugins
fastclaw plugin list # List plugins
fastclaw plugin install PATH # Install plugin
fastclaw plugin remove ID # Remove plugin
# Security
fastclaw provider list # List credential providers
fastclaw provider create ... # Add credentials
fastclaw sandbox create # Create Docker sandbox
fastclaw sandbox list # List sandboxes
fastclaw policy list # List policies
# Maintenance
fastclaw backup # Backup ~/.fastclaw/
fastclaw reset # Reset sessions & memory
π§© Storage
| Backend |
Use Case |
Config |
| File (default) |
Single user, zero config |
β |
| SQLite |
Single user, structured queries |
{"storage": {"type": "sqlite", "dsn": "file:fastclaw.db"}} |
| PostgreSQL |
Multi-tenant cloud |
{"storage": {"type": "postgres", "dsn": "postgres://..."}} |
π Development
git clone https://github.com/fastclaw-ai/fastclaw.git
cd fastclaw
make build # Build binary
make build-web # Build web UI
make release-local # Build all platforms
make test # Run tests
Contributing
Contributions welcome. FastClaw's strength is simplicity β keep it that way.
- Fork β Branch β Code β PR
go build ./... must pass
- Follow Conventional Commits
License
MIT
Built with β‘ by the FastClaw community