What is Clawdbot?
Clawdbot is a self‑hosted, agentic AI assistant that runs where you already operate—on your own server or workstation. It integrates directly with messaging platforms (Telegram, WhatsApp, Discord, Signal) and can execute real‑world actions across devices and services without relying on a third‑party cloud.
What is Docker Model Runner (DMR)?
Docker Model Runner is a lightweight Docker‑based service that hosts Large Language Models (LLMs) locally. It provides a standard OpenAI‑compatible API endpoint (e.g., ) and handles model pulling, packaging, and OCI‑based deployment.
Why combine Clawdbot with DMR?
Linking the two creates a privacy‑first personal assistant that retains full control over data, infrastructure, and costs.
- Sandboxed execution: Models run in isolated containers, protecting the host system.
- Cost control: No external API fees; you only pay for the compute you provision.
- Scalability: Add or swap models on‑demand without changing Clawdbot code.
- Data sovereignty: All prompts and responses stay on your hardware.
How to set up the Clawdbot + DMR stack
Follow these high‑level steps to get a functional private AI assistant.
- Install Docker Engine (or Docker Desktop) on your machine.
Pull and run Docker Model Runner:
docker run -d -p 12434:12434 ghcr.io/docker/model-runner:latest
- Install Clawdbot via its installer or binary distribution.
- Configure Clawdbot to point to the DMR endpoint (see next section).
- Pull one or more LLMs into DMR (e.g.,
docker model pull gpt-oss). - Start Clawdbot and verify communication with DMR.
Configuring Clawdbot to use DMR
Clawdbot reads provider settings from JSON configuration files. Update the provider URL to the local DMR service.
- Global config path:
~/.config/clawdbot/config.json - Workspace config (optional):
clawdbot.jsonin the project root. Add or edit the provider block:
{ "providers": { "local-dmr": { "type": "openai", "base_url": "", "model": "gpt-oss", "api_key": "dummy" } } }- Run
clawdbot onboardor restart the service to apply changes.
Managing and pulling models with DMR
DMR can fetch models from Hugging Face, convert them to OCI artifacts, and serve them via the API.
Pull a model:
docker model pull glm-4.7-flash
Package a model with a custom context size:
docker model package --from llama3.3 --context-size 128000 llama-personal:128k
List available models:
docker model ls
- Reference the packaged tag in Clawdbot’s config (e.g.,
"model": "llama-personal:128k").
Running scheduled tasks and initializing the assistant
After the stack is operational, you can define recurring workflows.
- Verify the model is active:
docker model ls Initialize the assistant’s “soul” (persona and system prompt):
clawdbot init-soul --name "PersonalAssistant" --prompt "You are a helpful, privacy‑first AI..."
- Create a cron or systemd timer that invokes Clawdbot commands (e.g., checking email, summarizing documents).
Best practices and security considerations
To maintain a secure and reliable private AI deployment, follow these guidelines.
- Run DMR containers with non‑root users and limited CPU/memory quotas.
- Store any API keys or secrets outside version‑controlled files (use environment variables or secret managers).
- Regularly update Docker images to incorporate security patches.
- Back up Clawdbot configuration and any persisted model data.
- Monitor container logs for unexpected activity.