Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sluice.sh/llms.txt

Use this file to discover all available pages before exploring further.

The Sluice agent is configured entirely via environment variables. There is no config file.

Required environment variables

These three variables must be set. The agent refuses to start if any are missing.
VariableDescriptionExample
SLUICE_API_KEYYour Sluice API key. Starts with sk_. Found in the dashboard under Connections.sk_live_abc123...
SLUICE_API_URLThe Sluice backend API endpoint.https://sluice.sh/api
SLUICE_REDIS_URLRedis connection string for your Celery broker. Must include the scheme.redis://redis:6379/0
If any required variable is missing, the agent exits with an error listing every missing variable and a link to the troubleshooting docs.

Optional environment variables

VariableDefaultDescription
SLUICE_CONNECTION_ID"default"Identifies this connection. Must be unique across all agents connecting to the same Redis instance in multi-agent deployments. Found in the dashboard under Connections.
SLUICE_FRAMEWORK"celery"The adapter to use. Only celery is supported in V0.
SLUICE_HEALTH_ADDR":8081"Listen address for the health check HTTP endpoint. Set to a different port if 8081 conflicts with another service.
SLUICE_LOG_LEVEL"info"Log verbosity. Valid values: debug, info, warn, error.

Full example

Docker

docker run -d \
  --name sluice-agent \
  -e SLUICE_API_KEY=sk_live_... \
  -e SLUICE_API_URL=https://sluice.sh/api \
  -e SLUICE_CONNECTION_ID=production-celery \
  -e SLUICE_REDIS_URL=redis://your-redis:6379/0 \
  -e SLUICE_LOG_LEVEL=info \
  ghcr.io/sluice-sh/agent:v0.1.0

Docker Compose

services:
  sluice-agent:
    # Pin to a specific version — avoid :latest in production
    image: ghcr.io/sluice-sh/agent:v0.1.0
    environment:
      SLUICE_API_KEY: ${SLUICE_API_KEY}
      SLUICE_API_URL: https://sluice.sh/api
      SLUICE_CONNECTION_ID: production-celery
      SLUICE_REDIS_URL: redis://redis:6379/0
      SLUICE_LOG_LEVEL: info
    restart: unless-stopped

Validation

The agent validates configuration at startup:
  1. Presence check — all three required variables must be non-empty.
  2. URL format check — both SLUICE_REDIS_URL and SLUICE_API_URL must be valid URLs with a scheme (e.g., redis://, https://).
If validation fails, the agent prints a structured error message and exits with a non-zero status code. The error message includes a link to the relevant troubleshooting page.

Health endpoint

The agent exposes a health check endpoint at the address configured by SLUICE_HEALTH_ADDR (default :8081). Use this for Kubernetes liveness/readiness probes:
livenessProbe:
  httpGet:
    path: /healthz
    port: 8081
  initialDelaySeconds: 5
  periodSeconds: 10

Broker support

The agent requires Redis. RabbitMQ and other AMQP brokers are not supported in V0. The agent reads Celery events via Redis PUB/SUB and polls queue depths via Redis LLEN — these mechanisms don’t exist in AMQP. If your Celery deployment uses RabbitMQ, use the Python SDK instead.
BrokerSupportedNotes
Redis 6+YesFully supported and tested.
Redis 7+YesFully supported and tested.
Redis ClusterNot yetPlanned for a future release.
Redis SentinelNot yetPlanned for a future release.
RabbitMQNoUse the Python SDK for RabbitMQ-based Celery deployments.