Unlimited OpenClaw auf Claude betreiben

Unlimited OpenClaw auf Claude betreiben

OpenClaw ist ein Multi-Channel-AI-Gateway, das Claude über eine Hub-and-Spoke-Architektur mit mehr als 50 Messaging-Channels verbindet. Jeder Channel ist ein eigenständiger Inference-Endpunkt: Telegram-Bots, Discord-Server, Slack-Workspaces, Web-Widgets und eigene Integrationen laufen alle über ein zentrales Gateway auf deiner Infrastruktur. Mit Skills, die in System Prompts injiziert werden, und Channels, die dauerhaft offen bleiben, steht OpenClaw für kontinuierlichen, Always-on-API-Verbrauch, der linear mit der Anzahl aktiver Channels und Nutzer skaliert.

OpenClaws Always-on-Architektur

OpenClaw arbeitet als Hub-and-Spoke-Gateway. Der Hub ist ein zentraler Prozess, der typischerweise auf einem VPS auf Port 18789 läuft und Modellkonfiguration, Skill Injection sowie Request Routing verwaltet. Die Spokes sind Channel-Connectoren: Jeder Connector hält eine persistente Verbindung zu einer Messaging-Plattform offen und leitet eingehende Nachrichten zur Inference an den Hub weiter. Dadurch entsteht eine Architektur, die für dauerhaft aktive Bots, Support-Assistenten und interne Automatisierungen deutlich besser passt als ein einzelnes interaktives Tool, das nur gelegentlich Requests auslöst.

Jeder Channel ist im Grunde ein offener Inference-Hahn. Sobald ein Nutzer auf einer verbundenen Plattform eine Nachricht sendet, nimmt der Channel-Connector sie entgegen, leitet sie an den Hub weiter, und der Hub baut den vollständigen Prompt zusammen: System Prompt, Skills, Conversation History und User Message. Anschließend sendet OpenClaw den Request an Claude und streamt die Antwort zurück in den jeweiligen Channel. Es gibt kein manuelles Queuing, kein Batch-Fenster und keine Verzögerung aus Kostengründen. Jede Nachricht bekommt sofort ihre eigene Inference, damit sich Telegram, Discord, Slack oder Webchat für den Nutzer wie ein nativer Echtzeit-Assistent anfühlen.

Das Gateway schläft nicht. Solange der Prozess läuft, sind alle 50+ Channels aktiv, und jede eingehende Nachricht triggert einen Claude API Call. Anders als Developer-Tools, die Tokens nur verbrauchen, wenn gerade jemand aktiv damit arbeitet, verbraucht OpenClaw Tokens immer dann, wenn irgendein Nutzer in irgendeinem Channel schreibt. In produktiven Setups bedeutet das schnell Hunderte oder Tausende Calls pro Tag. Genau deshalb ist ein unbegrenzter Claude Zugang nicht nur komfortabel, sondern wirtschaftlich sinnvoll: Wer OpenClaw ernsthaft betreibt, will nicht bei jeder neuen Community, jedem neuen Bot und jedem längeren Gespräch die claude api kosten neu kalkulieren müssen.

Provider-Konfiguration in openclaw.json

Die Modellkonfiguration von OpenClaw liegt in ~/.openclaw/openclaw.json im Block models.providers. Jeder Provider-Eintrag braucht einen Namen, ein api-Feld, eine baseUrl zu deinem Gateway und einen apiKey für die Authentifizierung. Für Claude muss api ausdrücklich auf 'anthropic-messages' gesetzt werden; OpenClaw nimmt diesen Wert nicht automatisch an. Das api-Feld entscheidet, welches Request-Format OpenClaw verwendet. Wenn du eine Claude API kaufen oder über ein Gateway wie AI Prime Tech Unlimited anbinden willst, ist diese eine Zeile entscheidend, weil Claude über die Messages API ein anderes Payload-Format erwartet als klassische Completion-Endpunkte.

Setze baseUrl auf https://claudeapikey.dev, also auf den Root Host ohne /v1. Der anthropic-messages Handler ergänzt den passenden Pfad selbst. Für apiKey kannst du entweder einen direkten Wert eintragen oder Environment-Variable-Interpolation mit der Syntax ${ENV_VAR} verwenden. Die Interpolation ist in produktiven Deployments die sauberere Variante, weil Secrets nicht in der Config-Datei landen. Typisch ist apiKey: '${UNLIMITED_API_KEY}', während du die Variable in deiner Shell, im Docker-Environment oder in einer systemd Unit exportierst. Wenn du einen claude api key erstellen und sicher verwalten möchtest, ist diese Trennung zwischen Config und Secret besonders wichtig.

Du kannst in der Provider-Konfiguration außerdem Custom Headers angeben. Nutze das Feld headers, um anthropic-beta Flags oder eigene Routing-Header zu übergeben. Ein Beispiel wäre headers: {'anthropic-beta': 'max-tokens-3-5-sonnet-2024-07-15'}, um erweiterten Output für unterstützte Modelle zu aktivieren. Auf dem Unlimited Gateway funktionieren Standard-Header ohne zusätzliche Anpassung. Für Teams ist das praktisch, weil dieselbe OpenClaw-Konfiguration zwischen lokalen Tests, Staging und Produktion wandern kann, während nur baseUrl, apiKey und optionale Header über die Umgebung gesteuert werden.

Model-Einträge und Pflichtfeld api

Ein wichtiger Stolperstein in der OpenClaw-Konfiguration: Das api-Feld in jedem Model-Eintrag muss explizit auf 'anthropic-messages' gesetzt sein. Wenn es fehlt, fällt OpenClaw auf ein generisches Completion-Format zurück, das nicht mit Claude kompatibel ist. Das führt zu kryptischen Fehlern, die wie Netzwerkprobleme, Auth-Fehler oder kaputte Verbindungen wirken, in Wahrheit aber Format-Mismatches sind. Deshalb sollte jeder Claude-Eintrag konsequent api: 'anthropic-messages' enthalten. Das gilt besonders dann, wenn du bestehende OpenClaw-Configs von anderen Providern übernimmst und nur die baseUrl austauschst.

Definiere die Model-Einträge unter models.models in openclaw.json. Jeder Eintrag referenziert einen Provider per Namen und gibt die Model ID an. Lege für die typischen Claude-Varianten eigene Aliase an: claude-sonnet-4-5 als Default für die meisten Channels, claude-opus-4-6 für Channels mit tiefem Reasoning und komplexen Erklärungen, sowie claude-haiku-4-5 für High-Volume-Channels, bei denen Geschwindigkeit wichtiger ist als maximale Tiefe. So bleiben Channel-Configs lesbar, weil du mit kurzen Namen wie sonnet, opus und haiku arbeitest, statt überall vollständige Model IDs zu wiederholen.

Weise die Modelle anschließend in der Channel-Konfiguration zu. Jeder Channel kann ein anderes Modell verwenden. Ein Customer-Support-Channel nutzt vielleicht Sonnet für ausgewogene, zuverlässige Antworten, ein technischer Engineering-Channel nutzt Opus für detaillierte Analyse, und ein Benachrichtigungs- oder Moderations-Channel nutzt Haiku für schnelle Bestätigungen. Bei tokenbasierter Abrechnung würdest du diese Entscheidungen stark an den Kosten ausrichten. Mit Unlimited kannst du nach Qualitätsbedarf entscheiden und musst nicht bei jeder Modellwahl prüfen, ob ein längerer Thread die claude code api kosten oder allgemeine Claude API Kosten nach oben treibt.

Hub-and-Spoke-Gateway auf Port 18789

Das OpenClaw-Gateway läuft typischerweise auf Port 18789. Der Port ist in openclaw.json unter server.port konfigurierbar. Das Gateway stellt eine REST API bereit, über die Channel-Connectoren Nachrichten einreichen und Antworten empfangen. Intern kümmert sich der Hub um Prompt-Aufbau, Model-Auswahl, Conversation-History-Management und Response Streaming. Für die einzelnen Connectoren bleibt die Logik dadurch schlank: Sie müssen nur Nachrichten aus ihrer Plattform normalisieren, an den Hub senden und die gestreamte Antwort wieder zurückschreiben.

Betreibe das Gateway auf einem VPS mit stabiler Uptime, denn für responsive Channels muss der Prozess 24/7 laufen. Verwende systemd oder Docker, damit der Dienst nach einem Crash automatisch neu startet. Der Prozess ist normalerweise leichtgewichtig bei CPU und RAM; der Engpass ist fast immer die Latenz des Upstream API Calls, nicht die lokale Verarbeitung. Ein kleiner VPS mit 1 CPU und 1 GB RAM kann bereits Dutzende parallele Channels bedienen, solange Netzwerk, Restart-Strategie und Logs sauber konfiguriert sind.

Das Gateway hält Conversation Histories im Speicher, optional mit konfigurierbarer Persistenz auf Disk oder in Redis. Jede aktive Unterhaltung über alle Channels hinweg hat ihren eigenen wachsenden Kontext. Bei 50 Channels und mehreren aktiven Nutzern pro Channel verwaltet das Gateway schnell Hunderte parallele Conversation States. Dieses Context Management läuft automatisch. Alte Gespräche werden anhand konfigurierbarer TTL-Werte bereinigt. Trotzdem solltest du TTL, History-Länge und Persistenz bewusst wählen, weil lange Kontexte zwar bessere Antworten ermöglichen, aber pro Request mehr Tokens erzeugen. Mit einem Unlimited-Plan ist dieser Overhead planbarer als bei klassischer Abrechnung pro Token.

Skills Injection und System-Prompt-Management

OpenClaws Skills-System injiziert fähigkeitsspezifische Anweisungen in den System Prompt jedes Requests. Skills werden als Textdateien im skills-Verzeichnis definiert und können bestimmten Channels zugewiesen oder global angewendet werden. Jeder Skill fügt Kontext hinzu, der Claude hilft, passend zum Zweck des Channels zu antworten: Support-Tonfall, technische Dokumentationssprache, Produktwissen, Eskalationsregeln, Moderationsverhalten oder interne Prozessdetails. Dadurch kannst du OpenClaw sehr granular steuern, ohne für jeden Channel eigene Applikationslogik schreiben zu müssen.

Jeder Skill fügt jedem Request auf jedem zugewiesenen Channel Tokens hinzu. Ein Channel mit fünf aktiven Skills kann bereits 2.000 bis 5.000 Tokens zum System Prompt addieren, bevor überhaupt Conversation History eingerechnet wird. Über fünfzig Channels mit verschiedenen Skill-Konfigurationen entsteht pro Tag ein erheblicher Skill-Overhead. Bei nutzungsbasierter Abrechnung kann das überraschend teuer werden, vor allem wenn längere Skills, umfangreiche Policies oder viele Beispiele im Prompt stehen. Auf Unlimited ist das kein Problem: Du kannst umfassende Skills schreiben, statt sie künstlich zu kürzen, nur um pro Request ein paar Cent zu sparen.

Skills können dynamische Inhalte über Template-Variablen enthalten. OpenClaw unterstützt das Injizieren von User-Informationen, Channel-Kontext, Tageszeit und eigenen Variablen in den Skill-Text. Diese dynamische Injection passiert zur Request-Zeit, sodass Skills immer aktuelle Informationen enthalten. Das ermöglicht anspruchsvolles Verhalten pro Channel ohne komplexe Routing-Logik. Ein Support-Bot kann andere SLA-Regeln sehen als ein interner Engineering-Bot, ein Community-Channel kann eigene Moderationshinweise bekommen, und ein Web-Widget kann den aktuellen Produktbereich kennen, aus dem der Nutzer gekommen ist.

Channel-Konfiguration und Skalierung

Jeder Channel in OpenClaw wird entweder im channels-Abschnitt von openclaw.json oder in separaten Channel-Config-Dateien eingerichtet. Ein Channel-Eintrag gibt den Plattformtyp an, zum Beispiel telegram, discord, slack, web oder custom. Zusätzlich enthält er die Auth-Credentials für die Plattform, das zu verwendende Modell, zugewiesene Skills und Einstellungen für das Conversation Management wie History-Länge, TTL und Persona. Für saubere Deployments lohnt es sich, Channels nach Plattform oder Team zu strukturieren, damit du später schnell nachvollziehen kannst, welcher Bot welches Modell und welche Skills nutzt.

Skalierung ist linear: Jeder neue Channel fügt einen weiteren offenen Inference-Endpunkt hinzu. Ein Telegram-Bot entspricht einem Channel. Ein Discord-Server mit mehreren überwachten Channels kann zehn oder mehr hinzufügen. Jeder überwachte Discord-Channel ist ein eigener Conversation Stream mit eigenem Kontext. Ein größeres OpenClaw-Deployment mit Discord, Telegram, Slack und Web-Widgets kommt problemlos auf 50 bis 100 aktive Inference-Endpunkte. In der Praxis bedeutet das, dass Last nicht nur aus der Anzahl der Nutzer entsteht, sondern auch aus der Anzahl der Orte, an denen Nutzer gleichzeitig schreiben können.

Bei Abrechnung pro Token bedeutet Channel-Skalierung automatisch Kostenskalierung. Jeder neue Channel erzeugt zusätzliche API-Ausgaben proportional zu seinem Nachrichtenvolumen. Mit Unlimited kannst du Channels deutlich freier hochziehen, solange du innerhalb der Fair-Use-Rate-Limits bleibst. Füge neue Plattformen, Bots, Widgets und interne Workflows hinzu; die Flat Rate deckt sie ab. Das macht AI Prime Tech Unlimited besonders interessant für Teams, die claude api kostenlos testen möchten, später aber planbare Produktion brauchen. Statt jeden neuen Use Case gegen die claude api kosten zu rechnen, planst du primär nach Antwortqualität, Rate Limit und operativem Nutzen.

Troubleshooting für OpenClaw-Deployments

Der häufigste Konfigurationsfehler ist das vergessene api: 'anthropic-messages' in Model-Einträgen. Ohne dieses Feld sendet OpenClaw Requests im falschen Format und bekommt von der API schwer verständliche Fehler zurück. Wenn du Response-Parsing-Fehler, unerwartete 400-Errors oder scheinbare Verbindungsprobleme siehst, prüfe zuerst das api-Feld. Es muss explizit gesetzt sein; für Claude-Modelle gibt es keinen passenden Default. Dieser Check spart oft viel Debugging-Zeit, weil Netzwerk, DNS und API Key in solchen Fällen meist völlig in Ordnung sind.

Wenn einzelne Channels fehlschlagen, während andere funktionieren, liegt das Problem meistens bei einer Channel-spezifischen Model-Zuweisung. Häufig zeigt der Channel auf einen Model-Eintrag, der nicht existiert, falsch geschrieben ist oder auf einen Provider verweist, der anders heißt als erwartet. OpenClaw validiert Model-Referenzen nicht zwingend vollständig beim Start. Der Fehler tritt dann erst zur Request-Zeit auf, wenn der Channel das falsch konfigurierte Modell verwenden will. Prüfe deshalb, ob jede Model-Referenz im Channel exakt einem Namen unter models.models entspricht, inklusive Groß-/Kleinschreibung und Bindestrichen.

Bei Rate-Limit-Fehlern unter hoher Multi-Channel-Last solltest du beachten, dass alle Channels denselben API Key und dieselben Limits teilen. Wenn fünfzig Channels zur Peak-Zeit gleichzeitig aktiv sind, kann die kombinierte Request Rate Fair-Use-Grenzen überschreiten. Das Gateway behandelt 429 Responses durch Queuing und Retry, wodurch Latenz entsteht, aber keine Nachrichten verloren gehen sollten. Für sehr große Deployments, stark frequentierte Communities oder kommerzielle Bots mit konstant hohem Traffic solltest du AI Prime Tech wegen höherer Rate Allocations kontaktieren. So bleibt der unbegrenzte Claude Zugang auch bei wachsender Last stabil und vorhersehbar.

// ~/.openclaw/openclaw.json
{
  "models": {
    "providers": {
      "unlimited": {
        "api": "anthropic-messages",
        "baseUrl": "https://claudeapikey.dev",
        "apiKey": "${UNLIMITED_API_KEY}"
      }
    },
    "models": {
      "sonnet": { "provider": "unlimited", "model": "claude-sonnet-4-5" },
      "opus":   { "provider": "unlimited", "model": "claude-opus-4-6" },
      "haiku":  { "provider": "unlimited", "model": "claude-haiku-4-5" }
    }
  },
  "server": { "port": 18789 }
}

# WICHTIG: api: "anthropic-messages" ist ERFORDERLICH
# Ohne diese Angabe verwendet OpenClaw das falsche Request-Format

FAQ

Warum muss ich api explizit auf anthropic-messages setzen?
OpenClaw verwendet nicht automatisch ein bestimmtes API-Format. Ohne api: 'anthropic-messages' nutzt es ein generisches Completion-Format, das nicht mit Claudes Messages API kompatibel ist. Dadurch entstehen Request-Fehler, die wie Verbindungsprobleme wirken, tatsächlich aber Format-Mismatches sind. Setze den Wert für jeden Claude Model-Eintrag immer explizit.

Wie viele Channels kann OpenClaw mit Unlimited betreiben?
Vom Gateway selbst gibt es kein hartes Channel-Limit. Die praktische Grenze ist das Fair-Use-Rate-Limit, da alle Channels denselben API Key teilen. Die meisten Deployments mit 50 bis 100 Channels bleiben bei normaler Nutzung klar innerhalb der Limits. Bei Traffic-Spitzen stellt das Gateway überschüssige Requests in eine Queue und versucht es erneut, sobald das Rate-Fenster zurückgesetzt ist.

Hat jeder Channel eine eigene Conversation History?
Ja. Jeder Channel und jeder Nutzer innerhalb eines Channels hat einen eigenen Conversation Context. Das Gateway verwaltet alle Histories im Speicher mit konfigurierbarer TTL. Ein Deployment mit 50 Channels und mehreren Nutzern pro Channel hält daher Hunderte parallele Conversation States.

Kann ich Environment-Variable-Interpolation für den API Key verwenden?
Ja. Setze apiKey in openclaw.json auf '${ENV_VAR_NAME}', und OpenClaw löst den Wert beim Start aus der Process Environment auf. So bleiben Secrets aus Config-Dateien heraus. Das ist besonders nützlich für Docker-Deployments, bei denen Secrets über Environment Variables injiziert werden.

Was passiert, wenn der Gateway-Prozess crasht?
Alle Channels verlieren die Verbindung, und Nachrichten gehen bis zum Neustart verloren. Nutze systemd mit Restart=always oder Docker mit restart: unless-stopped, um automatische Wiederherstellung sicherzustellen. Conversation Histories, die nur im Speicher liegen, gehen bei einem Crash verloren; aktiviere Disk- oder Redis-Persistenz für wichtige Deployments.

Start using Claude in minutes

Get an API key — no Anthropic account or waitlist required.

Get your API key