Skip to main content

Quick Start

git clone https://github.com/scitix/siclaw.git
cd siclaw
docker compose up -d
The Web UI is available at http://localhost:3001.

Docker Compose Configuration

# docker-compose.yml
services:
  siclaw-gateway:
    build:
      context: .
      dockerfile: Dockerfile.gateway
    ports:
      - "3001:3001"    # Web UI + API
    environment:
      - SICLAW_LLM_API_KEY=sk-ant-...
      - SICLAW_LLM_BASE_URL=https://api.anthropic.com/v1
      - SICLAW_LLM_MODEL=claude-sonnet-4-20250514
    volumes:
      - siclaw-data:/app/.siclaw
      - ~/.kube/config:/app/.kube/config:ro
    restart: unless-stopped

volumes:
  siclaw-data:

Architecture

In Docker mode, Siclaw runs with LocalSpawner:
  • Gateway serves the Web UI, API, and WebSocket connections
  • AgentBox instances run in-process (same container)
  • SQLite (sql.js) for session data, node:sqlite for memory
All users share the same filesystem in Docker mode. This is a development/small-team deployment model, not a production multi-tenant solution. Use Kubernetes for production.

Channels

Connect messaging platforms by setting environment variables:
# Slack (Socket Mode)
SLACK_BOT_TOKEN=xoxb-...
SLACK_APP_TOKEN=xapp-...

# Lark
LARK_APP_ID=...
LARK_APP_SECRET=...
See Channels for full configuration.

Persistence

Mount a volume to /app/.siclaw to persist:
  • Session history
  • Investigation memory
  • Skill configurations
  • Cron job definitions

Updating

docker compose pull
docker compose up -d