Headless OpenClaw Setup with Discord via Docker Scripts

A developer has shared scripts on GitHub to set up OpenClaw with Discord in a headless Docker environment, specifically designed to work without the TUI or WebUI interfaces, which can be problematic with screen readers.
Key Details
The repository at https://github.com/chigkim/easyclaw includes a Docker image (ghcr.io/openclaw/openclaw:latest) and a management script called claw. The script supports commands: claw [init|config|log|start|stop|restart|build|update|run|dashboard].
OpenClaw runs inside a container isolated from the host, with the ~/.openclaw folder mounted on the host for persistent assets. A dashboard is accessible from outside the container.
The setup is preconfigured with OpenAI Responses API to run with various engines/model setups. It includes:
- Chromium browser inside the container for the agent
- MarkItDown MCP for agents to convert various files to markdown
- Playwright for Node.js
- UV for Python
- FFmpeg
Setup Steps
First, fill out claw.toml with configuration like this:
[models.providers.oai]
baseUrl = "http://localhost:8080/v1"
apiKey = "api-key"
[[models.providers.oai.models]]
id = "qwen3.5-35b-a3b-q8_0"
name = "qwen3.5-35b"
input = ["text", "image"]
contextWindow = 32768
maxTokens = 8192
[agents.defaults]
timeoutSeconds = 600
maxConcurrent = 1
[agents.defaults.subagents]
maxConcurrent = 1
[channels.discord]
token = "DISCORD_BOT_TOKEN"
server_id = "1234"
Then run claw init . to initialize. If the bot is properly configured on your Discord server, you can interact with it on the server. The author notes it has "pretty relaxed rules for Discord, so make your bot private!"
📖 Read the full source: r/LocalLLaMA
👀 See Also

pxpipe: Cut Claude Code Token Usage 60% by Rendering Context as Images
pxpipe is a local proxy that renders bulky context (system prompts, tool docs, history) into compact PNGs, cutting input tokens ~10x and costs ~60% on token-dense workloads.

Brackish: Let Two Claude Code Instances Negotiate an API Contract via OpenAPI 3.1
Brackish is a CLI tool that runs between two Claude Code sessions — one on the backend (FastAPI) and one on the frontend (React/TypeScript) — to negotiate an API contract via a shared OpenAPI 3.1 document. It surfaces disagreements before code is written.

Claude-Control: Mobile Remote Control for Claude Code Sessions
Claude-control is an open-source tool that lets you manage Claude Code sessions from your phone via HTTPS and WebSocket. It runs Claude Code in a real PTY inside tmux, detects permission prompts, and sends push notifications with Allow/Deny buttons.

MarkView: Open-source tool renders and manages AI-generated Markdown files
MarkView is a private-first rendering engine that displays Markdown files with Mermaid diagrams and KaTeX math, available as a web app, native macOS app, and MCP server for Claude Desktop and Cursor integration.