Page cover
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Configuration

This guide covers configuring OpenClaw for Cloudeka, including channels, models, sessions, and security settings.

Configuration Overview

OpenClaw configuration is stored in openclaw.json and managed via Helm ConfigMap:

# charts/openclaw/values.yaml
app-template:
  configMaps:
    config:
      data:
        openclaw.json: |
          { ... }

Config Mode: Merge vs Overwrite

Mode
Behavior
Use Case

merge (default)

Helm values are deep-merged with existing config. Runtime changes (paired devices, UI settings) are preserved.

Development, manual testing

overwrite

Helm values completely replace existing config.

GitOps, strict infrastructure-as-code

app-template:
  configMode: merge  # or "overwrite"

Important: ArgoCD with Merge Mode

If using ArgoCD with configMode: merge, prevent ArgoCD from overwriting runtime changes:

Gateway Configuration

trustedProxies Explained

The trustedProxies setting controls which IPs are trusted for forwarding client connection information. This affects:

  • Rate limiting

  • Access control

  • IP-based routing

Common values for Cloudeka:

  • Ingress controller IP: 10.250.199.254

  • Gateway system IPs: Add each individually, no CIDR

Browser Configuration (Chromium Sidecar)

The Chromium sidecar enables browser automation via CDP (Chrome DevTools Protocol):

To disable browser automation, set "enabled": false and disable the sidecar in values.yaml:

Agent Configuration

Single Agent (Default)

Multi-Agent Configuration

For multiple agents with different personalities and permissions:

See Multi-Agent Guide for complete setup.

Model Providers

Cloudeka DEKALLM (Default)

Adding Anthropic (Optional)

Add ANTHROPIC_API_KEY to your secrets.

Session Management

Session Scopes

Scope
Behavior

per-sender

Each user gets their own isolated session history

global

All users share one conversation (not recommended for multi-user)

Channel Configuration

Telegram

Telegram Pairing Required:

After enabling Telegram, you must pair the bot with OpenClaw:

  1. Start a conversation with your Telegram bot

  2. Send /start or any message to get a pairing code

  3. Approve the pairing from within the pod:

Setup Steps:

  1. Create a Telegram bot via @BotFather

  2. Add TELEGRAM_BOT_TOKEN to your secrets

  3. Deploy OpenClaw

  4. Get pairing code from Telegram and approve it

Slack

Only enable Slack if you have configured the tokens. Delete/uncomment the entire slack block if using Telegram only.

Setting up Slack

  1. Create a Slack App: https://api.slack.com/apps

  2. Enable Socket Mode

  3. Add OAuth Scopes: chat:write, channels:history, groups:history, im:history, mpim:history

  4. Add SLACK_BOT_TOKEN and SLACK_APP_TOKEN to secrets

  5. Install app to your workspace

Discord

Setting up Discord

  1. Create bot user

  2. Enable Privileged Intents: Server Members Intent, Message Content Intent

  3. Add bot token to secrets

  4. Invite bot with applications.commands and bot scopes

Example: Using Only Telegram

If you only want Telegram (not Slack), comment out the Slack section:

Logging Configuration

Tools Configuration

Tool Profiles

Profile
Available Tools

full

All tools enabled (exec, read, write, edit, browser, etc.)

minimal

Read-only tools, no execution or modification

Hooks Configuration

Enable webhooks for external integrations:

Example webhook call:

Network Policy (Optional)

Enable network policy to restrict OpenClaw's network access:

Default policy allows:

  • Ingress from gateway-system namespace

  • DNS (kube-dns)

  • Egress to public internet (blocks private RFC1918 ranges)

Resource Limits

Adjust based on your workload:

Environment Variables

Additional environment variables can be added:

Optional Persistence (Comment Out When Not Used)

Some persistence entries in values.yaml are commented out by default. Leave them commented unless you have created the required secrets/configmaps, otherwise OpenClaw will fail to start.

Kubeconfig (for kubectl access)

Custom Skills

MCP Server Config

Last updated