Anmerkung des Autors: OpenBot hat keine Oberfläche zur Modellauswahl. Das Modell wird in .env und in der model.yaml des Mandantenpakets konfiguriert. Dieser Artikel zeigt, wie Sie APIYI mit drei Umgebungsvariablen und einer YAML-Zeile anbinden, zunächst nur drei Computer-Tools freigeben und die Einrichtung mit „Webseite öffnen + Datei lesen + Audit-Protokoll prüfen“ testen.
Sie haben OpenBot von CopilotKit geklont, .env.example geöffnet und die Oberfläche abgesucht, aber kein Dropdown zur Auswahl des Modellanbieters gefunden. Sie haben keine Kreditkarte für die direkte Nutzung von OpenAI und möchten claude-opus-5-5 über APIYI nach Verbrauch abrechnen. Doch wo lässt sich das Modell überhaupt einstellen?
Die kurze Antwort: OpenBot hat keinen Schalter zur Modellauswahl. Das Modell wird in .env und in der model.yaml des Mandantenpakets konfiguriert. Um APIYI anzubinden, müssen Sie keinen Code ändern: Drei Umgebungsvariablen und eine YAML-Zeile reichen aus. Geben Sie danach zunächst nur drei Computer-Tools frei. Sobald der Test bestanden ist, können Sie bei Bedarf weitere zulassen.
Das ist keine Anleitung für einen Start mit einem Klick. OpenBot ist eine Vorlage. Um sie auszuführen, brauchen Sie Docker, Bun 1.4 oder neuer, ein CopilotKit-Intelligence-Projekt und einen API-Schlüssel für das Modell. Diese Voraussetzungen erklärt der Artikel. Auf GitHub gibt es ausserdem zwei Projekte namens OpenBot – hier geht es um das von CopilotKit.
Das nehmen Sie mit: Sie können die drei Konfigurationsstellen selbst anpassen, mit drei Tools starten und die Einrichtung anhand von „Webseite öffnen + Datei lesen + Audit-Protokoll prüfen“ testen. Eine Fehlerübersicht hilft ausserdem bei häufigen Problemen wie 400- und 401-Fehlern, nicht gefundenen Modellen, nicht aufgerufenen Tools und einem verweigerten Start.

Die Modellkonfiguration von OpenBot erfolgt nicht in der Oberfläche
OpenBot ist eine Vorlage, kein Produkt
CopilotKit/OpenBot ist ein Open-Source-Repository unter MIT-Lizenz, das am 17. August 2026 erstellt wurde. Am 2. November 2026 hatte es 9.561 Stars. Das neueste offizielle Release war v0.2.0 vom 12. Oktober 2026; oben in der README stand weiterhin „Beta“. Die Idee: Jeder KI-Kollege – im Repository Bot genannt – bekommt einen eigenen Computer, samt echtem Browser, eigener Sitzung, eigenen Dateien und den Tools, für die er eine Berechtigung erhalten hat.
Die README formuliert es unmissverständlich: „A template, not a product“ – eine Vorlage, kein Produkt. Es gibt weder eine gehostete Version zur Registrierung noch wird OpenBot als Paket zum Einbinden veröffentlicht. Stattdessen klonst du das Repository, ersetzt die Beispiel-Mandantenpakete unter examples/ durch deine eigenen Kollegen, Kanäle und Fähigkeiten und betreibst es selbst. Die Antwort auf die Frage „Wo wähle ich das Modell aus?“ lautet also: in der Konfigurationsdatei, nicht in der Oberfläche.
Vier Voraussetzungen für den Start von OpenBot
Die folgende Tabelle zeigt, was Sie bereithalten müssen, bevor Sie ein Modell anbinden. Fehlt auch nur eine dieser Voraussetzungen, lässt sich die anschließende Konfiguration nicht überprüfen.
| Voraussetzung | Konkrete Anforderungen | Hinweis |
|---|---|---|
| Docker | Für PostgreSQL mit pgvector und den mitgelieferten Bot | scripts/start.sh startet die Docker-Dienste und führt die Migrationen aus |
| Bun | Version 1.4 oder höher | Abhängigkeiten mit bun install installieren |
| CopilotKit Intelligence | Ein Projekt und eine Lizenz; ein kostenloser Tarif ist verfügbar | Die lokale Testumgebung nutzt macOS und Docker Desktop. Die lokale Lizenz ist 30 Tage gültig und kann mit npx copilotkit@latest local renew verlängert werden |
| Modellschlüssel | Ein Schlüssel für einen OpenAI-kompatiblen Endpunkt | Dieser Artikel verwendet ein APIYI-Token; die base_url lautet https://api.apiyi.com/v1 |
Besonders leicht zu unterschätzen ist Intelligence. Laut den Kommentaren in .env.example verweigert der Server den Start, wenn die Intelligence-URL, die Gateway-URL oder der Schlüssel fehlt. Im Original heißt es: „There is no degraded mode.“ Einen eingeschränkten Betriebsmodus gibt es also nicht. Der Grund: Intelligence verwaltet sowohl dauerhafte Gesprächsverläufe als auch den Speicher. Ohne Intelligence ginge der Kontext bei jedem Gespräch verloren. OpenBot lässt sich deshalb nicht als „vollständig offline“ bezeichnen.
OPENAI_BASE_URL gilt für die gesamte Bereitstellung
Im README steht: „no model ships in the box“ – das Paket enthält also kein Modell. Die Zugangsdaten stellt der Administrator bereit; sie werden verschlüsselt in der Datenbank gespeichert und nicht protokolliert. Welches Modell verwendet wird, bestimmen Umgebungsvariablen für die gesamte Bereitstellung. Die wichtigste davon ist OPENAI_BASE_URL. Laut offizieller Dokumentation kann hier jeder Endpunkt stehen, der dieselbe API unterstützt – etwa ein Gateway für mehrere Anbieter, ein Proxy oder ein Modell auf eigener Hardware. Der Kommentar in .env.example ist noch konkreter: Jeder Endpunkt mit Unterstützung für /v1/chat/completions ist geeignet.
Die Variable gilt für die gesamte Bereitstellung, nicht für einen einzelnen Bot. Sie wird an drei Stellen gelesen: vom Client, den der API-Server für den integrierten Agenten verwendet, von agent-bot, der seinen eigenen Client erstellt, und von agent-langgraph mit BOT_PROVIDER=openai. Der Vorteil laut offizieller Dokumentation: Innerhalb einer Bereitstellung kann nicht die Hälfte der Anfragen an die neue Adresse gehen, während die andere Hälfte noch an der alten landet.

APIYI mit drei Änderungen anbinden: OpenBot-Umgebungsvariablen konfigurieren
Die Schnittstelle zwischen OpenBot und APIYI
APIYI bietet eine OpenAI-kompatible Schnittstelle. Für base_url tragen Sie https://api.apiyi.com/v1 ein; die Anfragen laufen über /v1/chat/completions. Das entspricht den Anforderungen von OpenBot an OPENAI_BASE_URL.
Wichtig: OpenBot überträgt Modellnamen unverändert. /v1/models von APIYI gibt den Namen ohne Präfix als claude-opus-5-5 zurück. Fügen Sie daher nicht wie im Beispiel des offiziellen Gateways das Präfix openai/ hinzu. Das dort verwendete openai/gpt-5.6-terra eignet sich nur für Endpunkte, die Modellnamen mit einem Namespace versehen.
Hier zunächst die Übersicht, danach folgen die einzelnen Schritte.
| Wo ändern? | Neuer Wert | Warum? |
|---|---|---|
OPENAI_API_KEY in .env |
Das in der APIYI-Konsole erstellte sk-...-Token |
Der integrierte Agent und die beiden mitgelieferten Bots verwenden standardmäßig diesen API-Schlüssel |
OPENAI_BASE_URL in .env |
https://api.apiyi.com/v1 |
Leitet die Modellanfragen der gesamten Bereitstellung an den kompatiblen Endpunkt von APIYI |
BOT_MODEL in .env |
claude-opus-5-5 |
Legt fest, welches Modell der gestartete Bot verwendet. Ohne Angabe gilt der Eintrag in der Provider-Spezifikationsdatei |
default_model in examples/<你的包>/model.yaml |
claude-opus-5-5 |
Im Beispielpaket steht derzeit gpt-5.6-terra. Ohne Änderung wird gemeldet, dass das Modell nicht existiert |
BOT_RESPONSES_API in .env |
Auf false belassen |
Claude gibt am Responses-Endpunkt von APIYI den Fehler 400 zurück |
Schritt 1: Ein eigenes Token vorbereiten
- Erstelle auf der APIYI-Token-Seite
api.apiyi.com/tokeneinen neuen Schlüssel. Lege ein Guthabenlimit und eine Gültigkeitsdauer fest und gib als Verwendungszweck „OpenBot – lokale Evaluierung“ an. - Sende auf deinem Rechner mit curl eine Anfrage an
GET https://api.apiyi.com/v1/modelsund verwende den HeaderAuthorization: Bearer sk-....
Erfolgskriterium: Die Antwort liefert HTTP 200 und in der Liste steht claude-opus-5-5. Bei unserem Test am 02.11.2026 erhielten wir 259 Modelle, darunter sowohl claude-opus-5-5 als auch claude-opus-5-5-thinking.
Mit einem eigenen Token trennst du die Nutzung auf diesem Rechner von der Produktion. Während der Arbeit mit dem Template wird der Bot wiederholt Dinge ausprobieren. Ein Guthabenlimit sorgt dabei für zusätzliche Sicherheit.
Schritt 2: Drei Zeilen in .env ändern
Führe zunächst wie im offiziellen Schnellstart beschrieben cp .env.example .env und bun install aus. Starte anschließend nacheinander npx --yes copilotkit@latest login, npx --yes copilotkit@latest project select und bun scripts/setup-learning.ts, um den Runtime-Schlüssel und den Learning-Container in .env einzutragen. Ändere dann diese drei Zeilen:
OPENAI_API_KEY=sk-dein-APIYI-TokenOPENAI_BASE_URL=https://api.apiyi.com/v1BOT_MODEL=claude-opus-5-5
Prüfe außerdem vier Punkte: BOT_PROVIDER bleibt auf dem Standardwert openai, BOT_RESPONSES_API bleibt auf false und KEY_ENCRYPTION_KEY wird mit openssl rand -base64 32 erzeugt. AGENT_BOT_MODEL wird nur vom agent-bot für den Konzeptnachweis verwendet. Der Standardwert ist gpt-5.5 und hat keinen Einfluss auf BOT_MODEL. Wenn du auch den agent-bot starten möchtest, prüfe unter /v1/models, ob dieser Name vorhanden ist, oder ändere ihn auf das gewünschte Modell.
Erfolgskriterium: Die Ausgabe von grep OPENAI_ .env enthält den richtigen Schlüssel und die richtige Adresse. Die Adresse endet auf /v1 und enthält keine überflüssigen Schrägstriche oder Leerzeichen. Falls der Zugriff auf denselben Endpunkt aus dem Container eine andere Route benötigt, kannst du die Adresse mit OPENAI_CONTAINER_BASE_URL überschreiben. APIYI ist jedoch öffentlich erreichbar, daher wird diese Variable normalerweise nicht benötigt.
Schritt 3: Eine Zeile in der model.yaml des Mandantenpakets ändern
Öffnen Sie examples/fintech/model.yaml oder die Kopie Ihres Mandantenpakets. Aktuell stehen dort model.provider: openai, model.credential_secret_ref: openai-api-key und model.default_model: gpt-5.6-terra.
- Ändern Sie
default_modelinclaude-opus-5-5. - Lassen Sie
provideraufopenai. Laut offizieller Vorgabe sind hier nuropenaioderanthropiczulässig. Für den OpenAI-kompatiblen Endpunkt von APIYI wählen Sieopenai. - Ersetzen Sie
credential_secret_refnicht durch einen Schlüssel im Klartext. Der Eintrag verweist auf bereits gespeicherte Zugangsdaten.
Erfolgskriterium: Nach bash scripts/start.sh bestehen alle Integritätsprüfungen. Unter http://localhost:3010 sind die beiden standardmässigen Kollegen General Assistant und Knowledge zu sehen.
Ein wichtiger Fallstrick: Beim Start prüft der Server normalerweise bei OpenAI oder Anthropic, ob der Schlüssel auf das default_model zugreifen darf. Ist das nicht der Fall, gibt er model-unavailable oder model-credential-rejected aus. Sobald jedoch OPENAI_BASE_URL gesetzt ist, wird diese Prüfung übersprungen. Wenn Sie APIYI verwenden und den Modellnamen falsch schreiben, erscheint der Fehler daher nicht beim Start, sondern erst beim Senden der ersten Nachricht. Ein erfolgreicher Start zeigt nur, dass der Dienst läuft – nicht, dass das Modell richtig konfiguriert ist.

Zu den Versionen: Unterschiede zwischen v0.2.0 und dem main-Branch
Ein Punkt ist wichtig: Im Abschnitt „Unreleased“ des CHANGELOGs auf dem main-Branch steht eine Änderung für openai/...-Modelle des integrierten Bots. Wenn deren OPENAI_BASE_URL weder auf OpenAI noch auf Azure verweist, wird künftig /chat/completions des jeweiligen Endpunkts aufgerufen statt der Responses API. Laut offizieller Begründung unterstützen die meisten OpenAI-kompatiblen Endpunkte nur Chat Completions. Mit derselben Änderung wurde auch COPILOTKIT_OPENAI_API=responses|chat eingeführt, um eine der beiden APIs fest vorzugeben.
Diese Änderung ist noch nicht im offiziellen Tag v0.2.0 enthalten. Wenn Sie v0.2.0 ausgecheckt haben, kann der integrierte Bot bei einer Base URL eines Drittanbieters weiterhin Responses aufrufen. Zusammen mit unserem Test unten deutet vieles darauf hin, dass dies die Ursache für den 400-Fehler ist. Es gibt zwei Möglichkeiten: Sie evaluieren auf Basis des main-Branches und berücksichtigen, dass sich dieser noch ändert, oder Sie warten mit der Integration, bis die Änderung offiziell veröffentlicht wurde.
🚀 Schnellstart: Bevor Sie OpenBot konfigurieren, sollten Sie mit einem Token von APIYI auf apiyi.com zunächst einen separaten Aufruf von
/v1/chat/completionstesten. Geben Sie dabei eine Funktionsdefinition mit und prüfen Sie, obfinish_reasonden Werttool_callszurückgibt. Wenn die Schnittstelle funktioniert, müssen Sie bei der weiteren Fehlersuche nur noch die OpenBot-Konfiguration prüfen.
Zum Start nur 3 Tools freigeben: OpenBot-Berechtigungen begrenzen
Warum OpenBot nicht von Anfang an alle Tools nutzen sollte
Die offizielle Einschätzung zur Anzahl der Tools lautet: „A model picks the right tool reliably out of about ten, and unreliably out of thirty.“ Bei etwa zehn Tools wählt das Modell also zuverlässig das richtige aus, bei dreißig nicht mehr. Im OpenBot-Quellcode sind dreizehn Computer-Tools registriert. Zusammen mit den Tools aus dem MCP-Katalog lässt sich diese Grenze schon am ersten Tag leicht überschreiten.
Bei Bots mit mehr als zwölf Tools stehen pro Ausführung nur die Tools zur Verfügung, die für die zur aktuellen Nachricht passenden Skills benötigt werden. Die offizielle Dokumentation betont aber, dass dies nur die Sichtbarkeit einschränkt: „It is not a boundary, and it never substitutes for one.“ Es ist also keine Sicherheitsgrenze und ersetzt auch keine. Die eigentlichen Grenzen bilden drei Dinge: die im Admin-Bereich pro Bot erteilten Berechtigungen (Grants), die Aktionsrichtlinie AGENT_COMPUTER_POLICY und die Audit-Einträge. Wichtig: Die Standardkonfiguration beim Start lautet deny: [] und allow: ["true"] – damit ist alles freigegeben.
Die 3 Tools für den Einstieg
| Tool | Funktion | Zum Start |
|---|---|---|
computer_navigate |
Eine URL im Browser öffnen | ✅ Freigeben |
computer_snapshot |
Einen Seiten-Snapshot abrufen | ✅ Freigeben |
computer_read_file |
Dateien im Arbeitsbereich lesen | ✅ Freigeben |
computer_click / computer_type / computer_key |
Klicken, Text eingeben, Tasten drücken | ⏸ Nach der Abnahme bei Bedarf freigeben |
computer_write_file |
Dateien schreiben | ⏸ Nach der Abnahme bei Bedarf freigeben |
computer_run_command |
Shell-Befehle ausführen | ⛔ Explizit verweigern |
computer_run_command muss ausdrücklich gesperrt werden. Ist unter Compose COMPUTER_SEPARATE_WORKSPACES aktiviert, startet jeder Bot zwar eine Shell in seinem eigenen Ordner. Die offizielle Dokumentation räumt aber ein: „Commands can still read other folders“ – Befehle können weiterhin andere Ordner lesen. Für eine echte Isolierung ist computers.mode: sandbox nötig. In der Startphase gibt es keinen Grund, dieses Risiko einzugehen.
AGENT_COMPUTER_POLICY festlegen
Die Richtlinie ist ein JSON-Objekt. Die Regeln verwenden CEL-Ausdrücke und können Felder wie tool.name, page.host und file.path auslesen. Für den Einstieg eignet sich folgende Konfiguration:
- Folgende Zeile in
.enveintragen:AGENT_COMPUTER_POLICY={"mode":"enforce","deny":["tool.name == 'computer_run_command'"],"allow":["tool.name in ['computer_navigate','computer_snapshot','computer_read_file']"]} - Im Admin-Bereich dem General Assistant genau diese drei Tools zuweisen, keine weiteren.
- Den Dienst neu starten. Ist das JSON fehlerhaft, startet der Server nicht – so fällt das Problem direkt auf.
Zwei Regeln für die Auswertung sind wichtig. Erstens: deny hat Vorrang vor allow. Selbst wenn allow später großzügiger formuliert wird, bleibt die Shell gesperrt. Zweitens: Die Engine arbeitet nach dem Fail-closed-Prinzip. Fehlt die Richtlinie oder ist sie leer, wird nichts erlaubt; eine fehlerhafte deny-Regel führt zur Verweigerung und eine fehlerhafte allow-Regel nicht zur Freigabe. Das Prinzip lässt sich so zusammenfassen: Erst stark einschränken, dann bei Bedarf freigeben. Nach erfolgreicher Abnahme können Sie Tools zum Klicken, Eingeben oder Schreiben von Dateien einzeln hinzufügen. Prüfen Sie nach jeder Erweiterung die Audit-Einträge.

Abnahme und Fehlerbehebung für OpenBot mit APIYI
Ein Abnahmetest: Webseite öffnen, Datei lesen, Audit prüfen
Laut offizieller Architektur läuft ein Tool-Aufruf in dieser Reihenfolge ab: Zuerst wird das Ziel ermittelt, dann anhand der aktuellen Richtlinie geprüft und eine Audit-Zeile geschrieben. Erst danach wird die Aktion auf dem Computer ausgeführt. Schlägt die weitergeleitete Aktion fehl, wird eine zweite Audit-Zeile geschrieben. Der Computer selbst trifft keine Richtlinienentscheidung; diese Grenze liegt im Gateway des Servers. Die Abnahme muss deshalb beides prüfen: ob Aktionen ausgeführt und ob sie protokolliert werden.
- Legen Sie unter
/workspaceeine Datei namensnotes.mdmit zwei beliebigen Zeilen an. - Bitten Sie den General Assistant, eine öffentliche Webseite zu öffnen, deren Titel zu nennen und anschließend den Inhalt von
/workspace/notes.mdzu lesen. - Bitten Sie ihn danach,
ls /auszuführen. Diese Aktion sollte abgelehnt werden. Die Antwort sollte außerdem nennen, welche Regel sie blockiert hat. - Öffnen Sie die Audit-Seite. Dort sollten Freigabeeinträge für navigate, snapshot und read_file sowie ein Ablehnungseintrag für run_command zu sehen sein. Für den Export können Sie
GET /api/admin/audit-events?format=csvaufrufen. Pro Anfrage sind maximal 5.000 Zeilen möglich.
Die Verfügbarkeit auf Modellseite haben wir nur bei APIYI selbst getestet. Am 02.11.2026 haben wir /v1/chat/completions mit claude-opus-5-5 aufgerufen und dabei eine Funktionsdefinition für read_file mitgegeben. Die Antwort kam nach 4,06 Sekunden mit HTTP 200 zurück. Der finish_reason war tool_calls, die Parameter lauteten {"path":"/workspace/notes.md"}. Der Verbrauch lag bei 393 Prompt-Tokens und 55 Completion-Tokens. Auch mit stream: true kam HTTP 200 zurück. In den SSE-Blöcken waren der Funktionsname und die Parameter als inkrementelle Ausgaben zu sehen; abgeschlossen wurde der Stream mit data: [DONE]. Das zeigt: Der Chat-Endpunkt von APIYI kann Claudes Tool-Aufrufe im OpenAI-Format zurückgeben. Genau das braucht ein Agent, bei dem das Modell nur entscheidet, welche Funktion aufgerufen wird, sie aber nicht selbst ausführt.
Fehlerbehebung: fünf häufige Probleme
| Problem | Wahrscheinlichste Ursache | Lösung |
|---|---|---|
400 field messages is required |
Die Anfrage ist beim Responses-Endpunkt gelandet. In unserem Test gab claude-opus-5-5 bei einem Aufruf von /v1/responses über APIYI diesen Fehler zurück. |
Prüfen, ob BOT_RESPONSES_API=false gesetzt ist. Bei v0.2.0 könnte der integrierte Bot weiterhin Responses aufrufen. Alternativ den main-Branch verwenden und COPILOTKIT_OPENAI_API=chat setzen (noch nicht veröffentlicht). |
| 401 | Der API-Schlüssel ist falsch oder abgelaufen, oder das Guthabenlimit des Tokens ist aufgebraucht. | Auf der Token-Seite von APIYI Gültigkeit und Guthaben prüfen und /v1/models erneut mit curl testen. |
| Modell nicht vorhanden | default_model steht noch auf gpt-5.6-terra, oder dem Namen wurde openai/ vorangestellt. |
An beiden Stellen nur den Namen claude-opus-5-5 eintragen. Da die Startprüfung übersprungen wird, muss zur Überprüfung eine Nachricht gesendet werden. |
| Tool wurde nicht aufgerufen | Das Modell unterstützt keine Tool-Aufrufe, die Berechtigung fehlt oder eine Richtlinie blockiert das Tool. | Laut offizieller Dokumentation kann ein Bot ohne Tool-Aufrufe keinen Computer steuern. Zuerst im Audit-Protokoll nach Ablehnungen suchen. |
| Start abgelehnt | Die Intelligence-Konfiguration fehlt, das Richtlinien-JSON ist fehlerhaft oder ein Anbieter wurde in der Provider-Spezifikation hinzugefügt, ohne PROVIDER_IDS zu aktualisieren. |
Alle drei Intelligence-Einstellungen ergänzen und das JSON prüfen. Für APIYI muss kein Anbieter hinzugefügt werden; openai genügt. |
💡 Tipp zur Fehlerbehebung: Senden Sie bei einem Fehler dieselbe Anfrage zuerst direkt an
/v1/chat/completionsvon APIYI unter apiyi.com. Funktioniert der direkte Aufruf, aber nicht der über OpenBot, liegt das Problem an der OpenBot-Konfiguration oder -Version. Schlägt auch der direkte Aufruf fehl, prüfen Sie Token und Modell. So lässt sich die Fehlerquelle schnell eingrenzen.
Kosten für Claude in OpenBot
APIYI rechnet nach Verbrauch ab, ohne feste monatliche Gebühr. Für claude-opus-5-5 galten laut unserer Recherche vom 02.11.2026 folgende Preise; claude-opus-5-5-thinking kostet genauso viel:
| Abrechnungsposten | Preis pro Million Token |
|---|---|
| Eingabe | $4 |
| Ausgabe | $20 |
| Cache-Lesezugriff | $0.2 |
Maßgeblich für Modelle und Preise ist die Modellliste auf der Plattform. Bei unserer Testanfrage mit Tools waren es 393 Eingabe- und 55 Ausgabe-Token – die Kosten pro Anfrage sind also sehr gering. Sobald der Bot aber über mehrere Runden browsed und Dateien liest, wächst der Kontext schnell. Daher empfiehlt sich zusätzlich ein Guthabenlimit für den Token.
Häufig gestellte Fragen
F1: Muss ich den Quellcode ändern, um OpenBot mit APIYI zu verbinden?
Nein. Es reicht, die drei Einträge `OPENAI_API_KEY`, `OPENAI_BASE_URL` und `BOT_MODEL` in `.env` sowie `default_model` in der `model.yaml` des Mandantenpakets anzupassen. Nur für einen komplett neuen Anbietertyp müssten Sie die Provider-Spezifikation und `PROVIDER_IDS` ändern. APIYI nutzt eine OpenAI-kompatible Schnittstelle und fällt daher nicht darunter.
F2: Warum nicht die Schreibweise mit Präfix wie openai/claude-opus-5-5 verwenden?
OpenBot überträgt den Modellnamen unverändert. Deshalb sollten Sie die Schreibweise verwenden, die der Endpunkt selbst veröffentlicht. `/v1/models` von APIYI auf apiyi.com listet den Namen ohne Präfix als `claude-opus-5-5`. Mit Präfix wird das Modell nicht gefunden.
F3: Kann ich BOT_RESPONSES_API aktivieren, um die Responses API zu nutzen?
Bei Claude sollten Sie die Option nicht aktivieren. In unserem Test lieferte eine Anfrage mit `claude-opus-5-5` an `/v1/responses` von APIYI den Status 400 mit `field messages is required`. Mit `gpt-5.4-mini` erhielten wir dagegen den Status 200. Auch die offizielle Dokumentation verlangt, diesen Schalter nur zu aktivieren, wenn der Endpunkt die Responses API tatsächlich implementiert.
F4: Habt ihr das gesamte OpenBot-Setup zum Laufen gebracht?
Nein. Wir haben nur die APIYI-Seite geprüft: die Modellliste, einen Chat-Aufruf mit Tools, die Streaming-Ausgabe und den Fehler am Responses-Endpunkt. Das gesamte OpenBot-Setup mit Docker und dem Intelligence-Projekt haben wir auf dem Rechner, auf dem dieser Artikel entstand, nicht ausgeführt. Die Aussagen über das interne Verhalten von OpenBot beruhen auf dem offiziellen Repository und der Dokumentation.
F5: Wie verhindere ich, dass der Bot mit einem verbrauchsabhängig abgerechneten Schlüssel zu hohe Kosten verursacht?
Legen Sie für diesen Schlüssel auf der Token-Seite von APIYI unter apiyi.com ein Guthabenlimit und ein Ablaufdatum fest. Verwalten Sie ihn getrennt von Ihren Produktionsschlüsseln. Zusammen mit der in diesem Artikel beschriebenen 3-Tool-Strategie begrenzen Sie so sowohl die Möglichkeiten des Bots als auch seine Ausgaben.
Zusammenfassung
OpenBot mit APIYI verbinden: Das Wichtigste
- Die Modellkonfiguration liegt nicht in der Oberfläche: Sie steht in drei Zeilen der
.envund einer Zeile dermodel.yamlim Tenant-Paket. - base_url gilt für das gesamte Deployment: Wird
OPENAI_BASE_URLgeändert, wechseln alle drei Bot-Typen gemeinsam. - Ein erfolgreicher Start bestätigt noch nicht das richtige Modell: Nach der Anbindung an das Gateway wird die Prüfung übersprungen. Erst die erste Nachricht zeigt, ob alles funktioniert.
- Auf die Version achten: Die Umstellung auf
/chat/completionssteht im main-Branch noch unter Unreleased und ist nicht Teil von v0.2.0. - Zum Einstieg nur 3 Tools freigeben: deny hat Vorrang vor allow, shell wird separat blockiert. Erst restriktiv starten, dann schrittweise freigeben.
- Mit APIYI nutzungsbasiert starten: Einen dedizierten Token und ein Guthabenlimit verwenden; für
claude-opus-5-5den reinen Modellnamen angeben.
Die Modellkonfiguration von OpenBot ist schwer zu finden, weil sie gar nicht in der Oberfläche liegt. Entscheidend sind drei Stellen: drei Zeilen in .env, eine Zeile in model.yaml und die deaktivierte Responses-Option. Dazu kommt eine Richtlinie, die zunächst nur 3 Tools freigibt. Bei der Abnahme reichen drei Prüfungen: Lässt sich die Webseite öffnen? Können Dateien gelesen werden? Sind abgelehnte Aktionen im Audit-Protokoll erfasst?
Am besten testet ihr zunächst Chat und Tool-Aufrufe separat mit einem dedizierten Token von APIYI unter apiyi.com. Erst wenn das funktioniert, bindet ihr OpenBot an. So lässt sich bei Problemen schnell eingrenzen, auf welcher Seite die Ursache liegt.
📚 Quellen
- CopilotKit/OpenBot-Repository: README, Requirements und Quick Start
- Link:
github.com/CopilotKit/OpenBot -
Inhalt: Einordnung des Templates, Voraussetzungen und Informationen zum Release v0.2.0
-
OpenBot-Konfigurationsdokumentation: Umgebungsvariablen für Modelle,
model.yamlund Startprüfung - Link:
github.com/CopilotKit/OpenBot/blob/main/docs/configuration.md -
Inhalt: ursprüngliche Definitionen von
OPENAI_BASE_URL,BOT_MODELundBOT_RESPONSES_API -
OpenBot-Architekturdokumentation: Gateway, Richtlinien und Auditierung
- Link:
github.com/CopilotKit/OpenBot/blob/main/docs/architecture.md -
Inhalt: Reihenfolge der Tool-Aufrufe und Schnittstelle für den Audit-Export
-
APIYI-Dokumentationsportal: OpenAI-kompatibler Modus, Funktionsaufrufe und Modellliste
- Link:
docs.apiyi.com - Inhalt: Schreibweise von base_url, Format von tools und Preis für
claude-opus-5-5
Autor: APIYI-Technikteam
Technischer Austausch: Kontaktieren Sie uns gerne über die APIYI-Website apiyi.com. Weitere Informationen zur Integration finden Sie im Dokumentationsportal docs.apiyi.com.
