Local Development
For debugging the bot without rebuilding the Docker image. OpenClaw still runs in a container (port 18789 exposed to host), while the Python bot runs directly on your machine.
[host machine]
uvicorn app.main:app --port 8000
▲ │
│ curl │ curl
│ ▼
[Docker] openclaw ←→ host.docker.internal:8000
:18789 (exposed)
1. Install dependencies
pip install -r requirements.txt
2. Stop opentrader-bot in Docker
docker compose up -d openclaw 9router
3. Fill in .env and run the bot server
cp .env.example .env
nano .env # fill in HL_PRIVATE_KEY / BINANCE_API_KEY ...
OPENTRADER_CONFIG=config/config.toml uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
4. Point openclaw to the host machine
# Mac / Windows (Docker Desktop)
sed -i 's|http://opentrader-bot:8000|http://host.docker.internal:8000|g' \
config/openclaw.json
# Linux
HOST_IP=$(docker network inspect openclaw_9router_net \
--format '{{(index .IPAM.Config 0).Gateway}}')
sed -i "s|http://opentrader-bot:8000|http://${HOST_IP}:8000|g" \
config/openclaw.json
docker compose restart openclaw
5. Quick test
curl http://localhost:8000/health
curl "http://localhost:8000/scan?bot=ta_trend"
curl "http://localhost:8000/status"
6. Return to full Docker
sed -i 's|http://host.docker.internal:8000|http://opentrader-bot:8000|g' \
config/openclaw.json
docker compose up -d --build