Awesome-omni-skill clawdbot-config
Comprehensive Clawdbot configuration and skills system management. Use when working with Clawdbot setup, configuration files, creating/modifying AgentSkills-compatible skills with YAML frontmatter, troubleshooting agent behavior, managing channels, workspace, sandbox, or multi-agent routing.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/cli-automation/clawdbot-config" ~/.claude/skills/diegosouzapw-awesome-omni-skill-clawdbot-config && rm -rf "$T"
skills/cli-automation/clawdbot-config/SKILL.md- pip install
- makes HTTP requests (curl)
- references .env files
- references API keys
Clawdbot Configuration Expert
Expert guidance for Clawdbot's configuration system, skills management, and agent setup.
When to Use This Skill
Use this skill when you need to:
- Configure Clawdbot: Set up
with agents, channels, gateway, or tools~/.clawdbot/clawdbot.json - Create Skills: Build AgentSkills-compatible
with proper YAML frontmatter and metadataSKILL.md - Manage Skills: Configure skill loading, gating, environment injection, or installation
- Troubleshoot: Diagnose configuration issues, skill loading problems, or agent behavior
- Understand System: Learn about workspace structure, bootstrap files, or session management
- Deep Dive: Access complete documentation archive (370+ files) for channels, automation, webhooks, cron jobs, gateway protocols, platform-specific guides, and advanced features
Quick Decision Tree
Need to configure Clawdbot? ├─ Setting up for first time? → See "Quick Start Guide" ├─ Managing skills? → See "Skills Management" ├─ Configuring channels? → See "Channel Configuration" ├─ Setting up remote access? → See "Remote Gateway Setup" └─ Creating a skill? → See "Creating Skills" Need examples? └─ See references/config-examples.md for common patterns Need deep documentation? ├─ Channel-specific setup? → See references/repomix-output.xml (channels/) ├─ Automation (cron, webhooks)? → See references/repomix-output.xml (automation/) ├─ Gateway protocols? → See references/repomix-output.xml (gateway/) ├─ Platform guides? → See references/repomix-output.xml (platforms/) └─ CLI reference? → See references/repomix-output.xml (cli/)
Quick Start Guide
Initial Setup
- Create minimal config (
):~/.clawdbot/clawdbot.json
{ "agents": { "defaults": { "workspace": "~/Projects/my-agent-workspace" } }, "channels": { "whatsapp": { "allowFrom": ["+1555555YOUR_NUMBER"] } } }
- Initialize workspace:
clawdbot setup
This creates bootstrap files:
- Operating instructionsAGENTS.md
- Persona and boundariesSOUL.md
- Tool usage notesTOOLS.md
- Agent identityIDENTITY.md
- User profileUSER.md
- Pair WhatsApp:
clawdbot channels login
- Start gateway:
clawdbot gateway
Configuration File Location
- Primary:
~/.clawdbot/clawdbot.json - Override:
environment variableCLAWDBOT_CONFIG_PATH - Format: JSONC (JSON with Comments)
Core Configuration Areas
1. Agents Configuration
Controls the embedded agent runtime.
Minimal:
{ "agents": { "defaults": { "workspace": "~/Projects/my-workspace", "model": "anthropic/claude-sonnet-4" } } }
With sandbox:
{ "agents": { "defaults": { "workspace": "~/Projects/my-workspace", "sandbox": { "enabled": true, "docker": { "image": "clawdbot/sandbox:latest", "setupCommand": "apt-get update && apt-get install -y python3-pip", "env": { "ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}" } } } } } }
Key fields:
(required): Agent's working directoryworkspace
: Primary model (format:model
)provider/model
: Docker isolation configurationsandbox
: Streaming behavior (blockStreamingDefault
|"on"
)"off"
See references/config-schema.md for complete options.
2. Skills Configuration
Manage skill loading, filtering, and configuration.
Basic:
{ "skills": { "allowBundled": ["gemini", "browser"], "entries": { "gemini": { "enabled": true, "apiKey": "${GEMINI_API_KEY}" } } } }
Advanced:
{ "skills": { "load": { "extraDirs": ["~/Projects/custom-skills/skills"], "watch": true, "watchDebounceMs": 250 }, "install": { "preferBrew": true, "nodeManager": "pnpm" }, "entries": { "nano-banana-pro": { "enabled": true, "apiKey": "${GEMINI_API_KEY}", "config": { "model": "gemini-3-pro-image" } } } } }
Skill precedence (highest to lowest):
<workspace>/skills~/.clawdbot/skillsskills.load.extraDirs- Bundled skills
See references/skills-system.md for complete skills documentation.
3. Channels Configuration
Configure WhatsApp, Telegram, Discord, iMessage, and other channels.
WhatsApp:
{ "channels": { "whatsapp": { "enabled": true, "allowFrom": ["+15555550123"], "groups": { "*": { "requireMention": true } } } } }
Multi-channel:
{ "channels": { "whatsapp": { "allowFrom": ["+15555550123"] }, "telegram": { "enabled": true, "botToken": "${TELEGRAM_BOT_TOKEN}", "allowFrom": ["alice", "bob"] }, "discord": { "enabled": true, "botToken": "${DISCORD_BOT_TOKEN}" } } }
4. Gateway Configuration
WebSocket server and remote access.
Local (default):
{ "gateway": { "port": 18789, "host": "127.0.0.1" } }
Remote (Tailscale):
{ "gateway": { "port": 18789, "bind": "tailnet", "auth": { "token": "${GATEWAY_AUTH_TOKEN}" } } }
Start with:
clawdbot gateway --bind tailnet --token $GATEWAY_AUTH_TOKEN
5. Tools Configuration
Control tool behavior and permissions.
{ "tools": { "exec": { "security": "ask", // "allow" | "ask" | "deny" "applyPatch": true }, "browser": { "enabled": true, "profilePath": "~/.clawdbot/browser-profile" } } }
Skills Management
Creating a Skill
Skill structure:
my-skill/ ├── SKILL.md (required: frontmatter + instructions) ├── scripts/ (optional: executable code) ├── references/ (optional: detailed docs) └── assets/ (optional: templates, files)
SKILL.md format:
--- name: my-skill description: What the skill does and when to use it. Be specific about triggers. metadata: {"clawdbot":{"requires":{"bins":["python3"],"env":["MY_API_KEY"]},"primaryEnv":"MY_API_KEY"}} --- # My Skill ## Quick Start Instructions for using this skill... ## Resources Scripts: {baseDir}/scripts/process.py
Metadata for gating:
{ "clawdbot": { "emoji": "🔧", "requires": { "bins": ["python3", "pip"], "anyBins": ["npm", "pnpm"], "env": ["MY_API_KEY"], "config": ["browser.enabled"] }, "primaryEnv": "MY_API_KEY", "os": ["darwin", "linux"], "install": [ { "id": "brew", "kind": "brew", "formula": "my-tool", "bins": ["my-tool"], "label": "Install My Tool (brew)" } ] } }
Key principles:
is the primary trigger mechanismdescription- Metadata enables load-time filtering
- Keep SKILL.md concise; use
for detailsreferences/ - Test scripts by actually running them
Skill Locations
Per-agent (highest precedence):
<workspace>/skills/my-skill/SKILL.md
Shared (all agents):
~/.clawdbot/skills/my-skill/SKILL.md
Custom folders:
{ "skills": { "load": { "extraDirs": ["~/Projects/custom-skills/skills"] } } }
Configuring Skills
Enable/disable and provide API keys:
{ "skills": { "entries": { "my-skill": { "enabled": true, "apiKey": "${MY_API_KEY}", "env": { "MY_API_KEY": "${MY_API_KEY}", "MY_ENDPOINT": "https://api.example.com" } }, "disabled-skill": { "enabled": false } } } }
Bundled skills allowlist:
{ "skills": { "allowBundled": ["gemini", "browser", "peekaboo"] } }
Skills in Sandbox
When agent is sandboxed, skills run inside Docker.
Requirements:
- Binaries checked on host at load time
- Binaries must exist in container at runtime
- Install via
:setupCommand
{ "agents": { "defaults": { "sandbox": { "docker": { "setupCommand": "apt-get update && apt-get install -y python3-pip && pip3 install ruff", "env": { "GEMINI_API_KEY": "${GEMINI_API_KEY}" } } } } } }
Important: Global
skills.entries.<skill>.env applies to host runs only. Use sandbox.docker.env for container.
Channel Configuration
Basic:
{ "channels": { "whatsapp": { "enabled": true, "allowFrom": ["+15555550123"] } } }
With groups:
{ "channels": { "whatsapp": { "allowFrom": ["+15555550123", "+15555550124"], "groups": { "*": { "requireMention": true }, // Specific group (use group JID) "120363012345678@g.us": { "requireMention": false } } } }, "messages": { "groupChat": { "mentionPatterns": ["@clawd", "hey clawd"] } } }
Pairing:
clawdbot channels login
Telegram
{ "channels": { "telegram": { "enabled": true, "botToken": "${TELEGRAM_BOT_TOKEN}", "allowFrom": ["username1", "username2"] } } }
Get bot token: Create bot with @BotFather
Discord
{ "channels": { "discord": { "enabled": true, "botToken": "${DISCORD_BOT_TOKEN}", "allowFrom": ["user_id_1", "user_id_2"] } } }
Setup: Create application at Discord Developer Portal
iMessage (macOS)
{ "channels": { "imessage": { "enabled": true, "cliPath": "/opt/homebrew/bin/imsg", "dbPath": "~/Library/Messages/chat.db" } } }
Install:
brew install steipete/tap/imsg
Remote Gateway Setup
Tailscale
-
Install Tailscale: https://tailscale.com/download
-
Generate token:
clawdbot doctor --generate-gateway-token
- Update config:
{ "gateway": { "bind": "tailnet", "auth": { "token": "YOUR_TOKEN_HERE" } } }
- Start gateway:
clawdbot gateway --bind tailnet --token $GATEWAY_AUTH_TOKEN
- Connect from remote:
export CLAWDBOT_GATEWAY_URL="ws://gateway-hostname.tailnet.ts.net:18789" export CLAWDBOT_GATEWAY_TOKEN="your-token" clawdbot tui
SSH Tunnel
On remote machine (run gateway):
clawdbot gateway
On local machine (create tunnel):
ssh -L 18789:localhost:18789 user@remote-host # In another terminal clawdbot tui
Multi-Agent Routing
Route different users/channels to specialized agents:
{ "agents": { "defaults": { "workspace": "~/Clawdbot/main", "model": "anthropic/claude-sonnet-4" }, "list": [ { "id": "reviewer", "workspace": "~/Clawdbot/reviewer", "routes": [ { "channel": "telegram", "peer": "alice" } ], "tools": { "write": false, "exec": { "security": "deny" } } }, { "id": "analyst", "workspace": "~/Clawdbot/analyst", "routes": [ { "channel": "discord", "peer": "123456789012345678" } ] } ] } }
Routing rules:
- Match by channel + peer
- Each agent has isolated workspace and sessions
- Agent-specific tool policies
Troubleshooting
Check Status
# Gateway reachability and quick summary clawdbot status # Show effective configuration clawdbot configure --show # Validate config syntax clawdbot configure --validate # Health checks and quick fixes clawdbot doctor # Deep health probes clawdbot health --verbose
View Logs
# Tail gateway logs clawdbot logs --follow # View specific number of lines clawdbot logs --lines 100
Common Issues
Gateway won't start:
- Check if port is already in use:
lsof -i :18789 - Verify config syntax:
clawdbot configure --validate - Check logs:
clawdbot logs
Skills not loading:
- Verify skill location:
clawdbot skills list - Check metadata requirements (bins, env, config)
- For sandboxed agents, ensure binaries exist in container
WhatsApp not responding:
- Check allowFrom list includes your number
- Verify QR code pairing:
clawdbot channels login - Check channel status:
clawdbot status
Remote connection fails:
- Verify auth token is set correctly
- Check gateway bind mode:
clawdbot status - Test connectivity:
curl http://gateway-host:18789/__health
References
Detailed Documentation
- Config Schema: Complete configuration reference with all options
- Skills System: In-depth skills documentation (metadata, gating, installation)
- Config Examples: Practical examples for common use cases
- Complete Documentation Archive: Full Clawdbot documentation (370+ files) including channels, automation, gateway, tools, platforms, and troubleshooting guides
Quick Reference
Config file:
~/.clawdbot/clawdbot.json
Commands:
clawdbot setup # Initialize workspace clawdbot gateway # Start gateway clawdbot configure --show # View config clawdbot status # Check status clawdbot doctor # Health check clawdbot skills list # List skills clawdbot channels login # Pair WhatsApp
Model format:
provider/model (e.g., anthropic/claude-sonnet-4)
Skill precedence: workspace → ~/.clawdbot/skills → extraDirs → bundled
Dashboard: http://127.0.0.1:18789/ (when gateway running)
Best Practices
- Start minimal: Only configure what you need
- Use allowFrom: Restrict channel access from the start
- Separate concerns: Use config includes for modular setup
- Version control: Track workspace bootstrap files (
, etc.)AGENTS.md - Environment variables: Store API keys in env vars, not config
- Test skills: Run scripts manually before deploying
- Monitor logs: Use
during developmentclawdbot logs --follow - Backup sessions: Sessions stored in
~/.clawdbot/agents/<agent>/sessions/
Using the Documentation Archive
The complete documentation archive (
references/repomix-output.xml) contains 370+ markdown files covering:
- Channels: WhatsApp, Telegram, Discord, iMessage (BlueBubbles), Signal, Slack, MS Teams, Matrix, and more
- Automation: Cron jobs, webhooks, Gmail Pub/Sub integration, polling
- Gateway: Remote access, Tailscale, authentication, health checks, sandboxing
- Tools: Browser automation, elevated exec, Firecrawl, slash commands, subagents
- Platforms: macOS, iOS, Android, Linux, Windows, Docker, Hetzner
- Providers: Anthropic, OpenAI, GitHub Copilot, OpenRouter, Deepgram, and more
- Concepts: Agent loop, sessions, memory, compaction, model failover, streaming
- CLI: Complete command reference for all
commandsclawdbot
When to read the archive:
- Setting up specific channels (e.g., BlueBubbles for iMessage, Telegram bots)
- Configuring automation (cron jobs, webhooks, Gmail watch)
- Troubleshooting channel-specific issues
- Understanding gateway protocols and remote access
- Platform-specific setup (macOS menu bar, iOS TestFlight, Android)
- Advanced features (OAuth monitoring, voice wake, location commands)
How to use it:
- The archive is XML-formatted with clear file paths
- Search for specific topics (e.g., "telegram", "webhook", "sandbox")
- Each file section includes the full path and line numbers
- Cross-reference with the directory structure at the top
Getting Help
- Documentation: https://docs.clawd.bot
- GitHub: https://github.com/clawdbot/clawdbot
- Skills Registry: https://clawdhub.com