Testing
Tests: Live-Suites
Für Schnellstart, QA-Runner, Unit-/Integrationstest-Suites und Docker-Abläufe siehe Tests. Diese Seite behandelt Live-Tests (mit Netzwerkzugriff): Modellmatrix, CLI-Backends, ACP, Medien-Provider und den Umgang mit Anmeldedaten.
Live: Lokale Smoke-Test-Befehle
Exportieren Sie vor spontanen Live-Prüfungen den erforderlichen Provider-Schlüssel in die Prozessumgebung.
Sicherer Medien-Smoke-Test:
pnpm openclaw infer tts convert --local --json \ --text "OpenClaw live smoke." \ --output /tmp/openclaw-live-smoke.mp3Sicherer Smoke-Test der Bereitschaft für Sprachanrufe:
pnpm openclaw voicecall setup --jsonpnpm openclaw voicecall smoke --to "+15555550123"voicecall smoke ist ein Probelauf, sofern nicht zusätzlich --yes angegeben ist;
verwenden Sie --yes nur, wenn Sie tatsächlich einen Anruf tätigen möchten. Für
Twilio, Telnyx und Plivo erfordert eine erfolgreiche Bereitschaftsprüfung eine
öffentliche Webhook-URL – lokale/private local-loopback-URLs werden abgelehnt,
da diese Provider sie nicht erreichen können.
Live: Umfassende Prüfung der Fähigkeiten eines Android-Nodes
- Test:
src/gateway/android-node.capabilities.live.test.ts - Skript:
pnpm android:test:integration - Ziel: Jeden aktuell angekündigten Befehl eines verbundenen Android-Nodes aufrufen und das Verhalten des Befehlsvertrags prüfen.
- Umfang:
- Vorbereitete/manuelle Einrichtung (die Suite installiert, startet und koppelt die App nicht).
- Befehlsweise Validierung von
node.invokeim Gateway für den ausgewählten Android-Node.
- Erforderliche Vorbereitungen:
- Die Android-App ist bereits mit dem Gateway verbunden und gekoppelt.
- Die App bleibt im Vordergrund.
- Berechtigungen und Einwilligungen für Aufzeichnungen wurden für die Fähigkeiten erteilt, deren erfolgreiche Prüfung Sie erwarten.
- Optionale Zielüberschreibungen:
OPENCLAW_ANDROID_NODE_IDoderOPENCLAW_ANDROID_NODE_NAME.OPENCLAW_ANDROID_GATEWAY_URL/OPENCLAW_ANDROID_GATEWAY_TOKEN/OPENCLAW_ANDROID_GATEWAY_PASSWORD.
- Vollständige Details zur Android-Einrichtung: Android-App
Live: Modell-Smoke-Test (Profilschlüssel)
Live-Modelltests sind in zwei Ebenen unterteilt, damit Fehler isoliert werden:
- „Direktes Modell“ zeigt Ihnen, ob der Provider bzw. das Modell mit dem angegebenen Schlüssel überhaupt antworten kann.
- „Gateway-Smoke-Test“ zeigt Ihnen, ob die vollständige Gateway- und Agent-Pipeline für dieses Modell funktioniert (Sitzungen, Verlauf, Werkzeuge, Sandbox-Richtlinie usw.).
Die nachfolgend zusammengestellten Modelllisten befinden sich in
src/agents/live-model-filter.ts und ändern sich im Laufe der Zeit; betrachten
Sie die dortigen Arrays als maßgebliche Quelle, nicht diese Seite.
MiniMax M3 verwendet minimax/MiniMax-M3 als standardmäßige Provider-/Modellreferenz.
Ebene 1: Direkte Modellvervollständigung (ohne Gateway)
- Test:
src/agents/models.profiles.live.test.ts - Ziel:
- Erkannte Modelle auflisten
- Mit
getApiKeyForModeldie Modelle auswählen, für die Sie Anmeldedaten besitzen - Pro Modell eine kleine Vervollständigung ausführen (sowie bei Bedarf gezielte Regressionstests)
- Aktivierung:
pnpm test:live(oderOPENCLAW_LIVE_TEST=1, wenn Vitest direkt aufgerufen wird)- Setzen Sie
OPENCLAW_LIVE_MODELS=modern,smalloderall(Alias fürmodern), um diese Suite tatsächlich auszuführen; andernfalls wird sie übersprungen, sodass sichpnpm test:liveallein weiterhin auf den Gateway-Smoke-Test konzentriert.
- Modellauswahl:
OPENCLAW_LIVE_MODELS=modernführt die zusammengestellte Prioritätsliste mit hoher Aussagekraft aus (siehe Live: Modellmatrix)OPENCLAW_LIVE_MODELS=smallführt die zusammengestellte Prioritätsliste kleiner Modelle ausOPENCLAW_LIVE_MODELS=allist ein Alias fürmodern- oder
OPENCLAW_LIVE_MODELS="openai/gpt-5.6-luna,anthropic/claude-opus-4-6,..."(durch Kommas getrennte Positivliste) - Lokale Ollama-Ausführungen mit kleinen Modellen verwenden standardmäßig
http://127.0.0.1:11434; setzen SieOPENCLAW_LIVE_OLLAMA_BASE_URLnur für LAN-, benutzerdefinierte oder Ollama-Cloud-Endpunkte. - Umfassende Prüfungen mit
modern/allundsmallverwenden standardmäßig die Länge ihrer zusammengestellten Liste als Obergrenze; setzen SieOPENCLAW_LIVE_MAX_MODELS=0für eine vollständige Prüfung des ausgewählten Profils oder eine positive Zahl für eine niedrigere Obergrenze. - Vollständige Prüfungen verwenden
OPENCLAW_LIVE_TEST_TIMEOUT_MSals Zeitlimit für den gesamten direkten Modelltest. Standardwert: 60 Minuten. - Direkte Modellprüfungen werden standardmäßig mit einer Parallelität von 20 ausgeführt; setzen Sie
OPENCLAW_LIVE_MODEL_CONCURRENCY, um dies zu überschreiben.
- Provider-Auswahl:
OPENCLAW_LIVE_PROVIDERS="google,google-antigravity,google-gemini-cli"(durch Kommas getrennte Positivliste)
- Herkunft der Schlüssel:
- Standardmäßig: Profilspeicher und Umgebungs-Fallbacks
- Setzen Sie
OPENCLAW_LIVE_REQUIRE_PROFILE_KEYS=1, um ausschließlich den Profilspeicher zu verwenden
- Zweck:
- Unterscheidet „Provider-API ist defekt / Schlüssel ist ungültig“ von „Gateway-Agent-Pipeline ist defekt“
- Enthält kleine, isolierte Regressionstests (Beispiel: Wiedergabe von Schlussfolgerungen und Werkzeugaufruf-Abläufe für OpenAI Responses/Codex Responses)
Ebene 2: Gateway- und Entwicklungs-Agent-Smoke-Test (was „@openclaw“ tatsächlich tut)
- Test:
src/gateway/gateway-models.profiles.live.test.ts - Ziel:
- Ein prozessinternes Gateway starten
- Eine
agent:dev:*-Sitzung erstellen/anpassen (Modellüberschreibung pro Ausführung) - Modelle mit Schlüsseln durchlaufen und Folgendes prüfen:
- „aussagekräftige“ Antwort (ohne Werkzeuge)
- ein echter Werkzeugaufruf funktioniert (Leseprüfung)
- optionale zusätzliche Werkzeugprüfungen (Ausführungs- und Leseprüfung)
- OpenAI-Regressionspfade (nur Werkzeugaufruf -> Folgeanfrage) funktionieren weiterhin
- Details zu den Prüfungen (damit Sie Fehler schnell erklären können):
read-Prüfung: Der Test schreibt eine Datei mit einem Nonce-Wert in den Arbeitsbereich und fordert den Agent auf, sie mitreadzu lesen und den Nonce-Wert zurückzugeben.exec+read-Prüfung: Der Test fordert den Agent auf, mitexeceinen Nonce-Wert in eine temporäre Datei zu schreiben und ihn anschließend mitreadzurückzulesen.- Bildprüfung: Der Test hängt eine generierte PNG-Datei an (Katze und zufälliger Code) und erwartet, dass das Modell
cat <CODE>zurückgibt. - Implementierungsreferenz:
src/gateway/gateway-models.profiles.live.test.tsundtest/helpers/live-image-probe.ts.
- Aktivierung:
pnpm test:live(oderOPENCLAW_LIVE_TEST=1, wenn Vitest direkt aufgerufen wird)
- Modellauswahl:
- Standardmäßig: die zusammengestellte Prioritätsliste mit hoher Aussagekraft (
modern) OPENCLAW_LIVE_GATEWAY_MODELS=smallführt die zusammengestellte Liste kleiner Modelle durch die vollständige Gateway- und Agent-Pipeline ausOPENCLAW_LIVE_GATEWAY_MODELS=allist ein Alias fürmodern- Oder setzen Sie
OPENCLAW_LIVE_GATEWAY_MODELS="provider/model"(oder eine durch Kommas getrennte Liste), um die Auswahl einzugrenzen - Gateway-Prüfungen mit
modern/allundsmallverwenden standardmäßig die Länge ihrer zusammengestellten Liste als Obergrenze; setzen SieOPENCLAW_LIVE_GATEWAY_MAX_MODELS=0für eine vollständige ausgewählte Prüfung oder eine positive Zahl für eine niedrigere Obergrenze.
- Standardmäßig: die zusammengestellte Prioritätsliste mit hoher Aussagekraft (
- Provider-Auswahl („alles über OpenRouter“ vermeiden):
OPENCLAW_LIVE_GATEWAY_PROVIDERS="google,google-antigravity,google-gemini-cli,openai,anthropic,zai,minimax"(durch Kommas getrennte Positivliste)
- Werkzeug- und Bildprüfungen sind in diesem Live-Test immer aktiviert:
read-Prüfung undexec+read-Prüfung (Werkzeug-Belastungstest)- Die Bildprüfung wird ausgeführt, wenn das Modell Unterstützung für Bildeingaben ankündigt
- Ablauf (Überblick):
- Der Test generiert eine kleine PNG-Datei mit „CAT“ und einem zufälligen Code (
test/helpers/live-image-probe.ts) - Sendet sie über
agentalsattachments: [{ mimeType: "image/png", content: "<base64>" }] - Das Gateway verarbeitet Anhänge zu
images[](src/gateway/server-methods/agent.tsundsrc/gateway/chat-attachments.ts) - Der eingebettete Agent leitet eine multimodale Benutzernachricht an das Modell weiter
- Prüfung: Die Antwort enthält
catund den Code (OCR-Toleranz: geringfügige Fehler sind zulässig)
- Der Test generiert eine kleine PNG-Datei mit „CAT“ und einem zufälligen Code (
Live: CLI-Backend-Smoke-Test (Claude, Gemini oder andere lokale CLIs)
- Test:
src/gateway/gateway-cli-backend.live.test.ts - Ziel: Die Gateway- und Agent-Pipeline mit einem lokalen CLI-Backend validieren, ohne Ihre Standardkonfiguration zu verändern.
- Backendspezifische Smoke-Test-Standardwerte befinden sich in der
cli-backend.ts-Definition des zuständigen Plugins. - Aktivierung:
pnpm test:live(oderOPENCLAW_LIVE_TEST=1, wenn Vitest direkt aufgerufen wird)OPENCLAW_LIVE_CLI_BACKEND=1
- Standardwerte:
- Standardmäßiger Provider bzw. standardmäßiges Modell:
claude-cli/claude-sonnet-4-6 - Verhalten von Befehl, Argumenten und Bildern stammt aus den Metadaten des zuständigen CLI-Backend-Plugins.
- Standardmäßiger Provider bzw. standardmäßiges Modell:
- Überschreibungen (optional):
OPENCLAW_LIVE_CLI_BACKEND_MODEL="claude-cli/claude-sonnet-4-6"OPENCLAW_LIVE_CLI_BACKEND_COMMAND="/full/path/to/claude"OPENCLAW_LIVE_CLI_BACKEND_ARGS='["-p","--output-format","json"]'OPENCLAW_LIVE_CLI_BACKEND_IMAGE_PROBE=1, um einen echten Bildanhang zu senden (Pfade werden in die Eingabeaufforderung eingefügt). In Docker-Rezepten standardmäßig deaktiviert.OPENCLAW_LIVE_CLI_BACKEND_IMAGE_ARG="--image", um Bilddateipfade als CLI-Argumente statt durch Einfügen in die Eingabeaufforderung zu übergeben.OPENCLAW_LIVE_CLI_BACKEND_IMAGE_MODE="repeat"(oder"list"), um zu steuern, wie Bildargumente bei gesetztemIMAGE_ARGübergeben werden.OPENCLAW_LIVE_CLI_BACKEND_RESUME_PROBE=1, um eine zweite Anfrage zu senden und den Fortsetzungsablauf zu validieren.OPENCLAW_LIVE_CLI_BACKEND_MODEL_SWITCH_PROBE=1, um die Kontinuitätsprüfung innerhalb derselben Sitzung beim Wechsel von Claude Sonnet zu Opus zu aktivieren, wenn das ausgewählte Modell ein Wechselziel unterstützt. Standardmäßig deaktiviert, auch in Docker-Rezepten.OPENCLAW_LIVE_CLI_BACKEND_MCP_PROBE=1, um die MCP-/Werkzeug-local-loopback-Prüfung zu aktivieren. In Docker-Rezepten standardmäßig deaktiviert.
Beispiel:
OPENCLAW_LIVE_CLI_BACKEND=1 \ OPENCLAW_LIVE_CLI_BACKEND_MODEL="claude-cli/claude-sonnet-4-6" \ pnpm test:live src/gateway/gateway-cli-backend.live.test.tsKostengünstiger Smoke-Test der Gemini-MCP-Konfiguration:
OPENCLAW_LIVE_TEST=1 \ pnpm test:live src/agents/cli-runner/bundle-mcp.gemini.live.test.tsHierbei wird Gemini nicht aufgefordert, eine Antwort zu generieren. Der Test
schreibt dieselben Systemeinstellungen, die OpenClaw an Gemini übergibt, und
führt anschließend gemini --debug mcp list aus. Damit wird nachgewiesen, dass
ein gespeicherter Server mit transport: "streamable-http" in die HTTP-MCP-Form
von Gemini normalisiert wird und eine Verbindung zu einem lokalen
Streamable-HTTP-MCP-Server herstellen kann.
Docker-Rezept:
pnpm test:docker:live-cli-backendDocker-Rezepte für einzelne Provider:
pnpm test:docker:live-cli-backend:claudepnpm test:docker:live-cli-backend:claude-subscriptionpnpm test:docker:live-cli-backend:geminiHinweise:
- Der Docker-Runner befindet sich unter
scripts/test-live-cli-backend-docker.sh. - Er führt den Live-Smoke-Test des CLI-Backends innerhalb des Docker-Images des Repositorys als Nicht-Root-Benutzer
nodeaus. - Er ermittelt die CLI-Smoke-Test-Metadaten aus dem zuständigen Plugin und installiert anschließend das passende Linux-CLI-Paket (
@anthropic-ai/claude-codeoder@google/gemini-cli) in einem zwischengespeicherten, beschreibbaren Präfix unterOPENCLAW_DOCKER_CLI_TOOLS_DIR(Standardwert:~/.cache/openclaw/docker-cli-tools). codex-cliist kein gebündeltes CLI-Backend mehr; verwenden Sie stattdessenopenai/*mit der Codex-App-Server-Laufzeit (siehe Live: Smoke-Test des Codex-App-Server-Testsystems).pnpm test:docker:live-cli-backend:claude-subscriptionerfordert portable OAuth-Anmeldedaten für ein Claude-Code-Abonnement, entweder über~/.claude/.credentials.jsonmitclaudeAiOauth.subscriptionTypeoder überCLAUDE_CODE_OAUTH_TOKENausclaude setup-token. Zunächst wirdclaude -pdirekt in Docker geprüft; anschließend werden zwei Gateway-CLI-Backend-Anfragen ausgeführt, ohne Umgebungsvariablen für Anthropic-API-Schlüssel beizubehalten. Dieser Abonnement-Testpfad deaktiviert die Claude-MCP-/Werkzeug- und Bildprüfungen standardmäßig, weil er die Nutzungskontingente des angemeldeten Abonnements verbraucht und Anthropic das Abrechnungs- sowie Ratenbegrenzungsverhalten des Claude Agent SDK bzw. vonclaude -pohne eine OpenClaw-Veröffentlichung ändern kann.- Claude und Gemini unterstützen über die obigen Flags dieselben Prüfungen (Textanfrage, Bildklassifizierung, MCP-Aufruf des Werkzeugs
cron, Kontinuität beim Modellwechsel), aber keine dieser Prüfungen wird standardmäßig ausgeführt – aktivieren Sie sie bei Bedarf jeweils über das entsprechende Flag.
Live: Erreichbarkeit von APNs über einen HTTP/2-Proxy
- Test:
src/infra/push-apns-http2.live.test.ts - Ziel: Durch einen lokalen HTTP-CONNECT-Proxy eine Verbindung zum Sandbox-APNs-Endpunkt von Apple tunneln, die APNs-HTTP/2-Validierungsanfrage senden und prüfen, ob die echte Antwort
403 InvalidProviderTokenvon Apple über den Proxy-Pfad zurückgegeben wird. - Aktivierung:
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_APNS_REACHABILITY=1 pnpm test:live src/infra/push-apns-http2.live.test.ts
- Optionales Zeitlimit:
OPENCLAW_LIVE_APNS_TIMEOUT_MS=30000
Live: ACP-Bindungs-Smoke-Test (/acp spawn ... --bind here)
- Test:
src/gateway/gateway-acp-bind.live.test.ts - Ziel: den realen ACP-Ablauf zur Konversationsbindung mit einem aktiven ACP-Agenten validieren:
/acp spawn <agent> --bind heresenden- eine synthetische Konversation eines Nachrichtenkanals direkt binden
- eine normale Folgenachricht in derselben Konversation senden
- überprüfen, dass die Folgenachricht im Transkript der gebundenen ACP-Sitzung ankommt
- Aktivierung:
pnpm test:live src/gateway/gateway-acp-bind.live.test.tsOPENCLAW_LIVE_ACP_BIND=1
- Standardwerte:
- ACP-Agenten in Docker:
claude,codex,gemini - ACP-Agent für direktes
pnpm test:live ...:claude - Synthetischer Kanal: Konversationskontext im Stil einer Slack-Direktnachricht
- ACP-Backend:
acpx
- ACP-Agenten in Docker:
- Überschreibungen:
OPENCLAW_LIVE_ACP_BIND_AGENT=claudeOPENCLAW_LIVE_ACP_BIND_AGENT=codexOPENCLAW_LIVE_ACP_BIND_AGENT=droidOPENCLAW_LIVE_ACP_BIND_AGENT=geminiOPENCLAW_LIVE_ACP_BIND_AGENT=opencodeOPENCLAW_LIVE_ACP_BIND_AGENTS=claude,codex,geminiOPENCLAW_LIVE_ACP_BIND_AGENT_COMMAND='npx -y @agentclientprotocol/claude-agent-acp@<version>'OPENCLAW_LIVE_ACP_BIND_CODEX_MODEL=gpt-5.6-lunaOPENCLAW_LIVE_ACP_BIND_OPENCODE_MODEL=opencode/kimi-k2.6OPENCLAW_LIVE_ACP_BIND_IMAGE_PROBE=1(oderon/true/yes), um die Bildprüfung zu erzwingen; jeder andere Wert deaktiviert sie. Sie wird standardmäßig für jeden Agenten außeropencodeausgeführt.OPENCLAW_LIVE_ACP_BIND_REQUIRE_CRON=1OPENCLAW_LIVE_ACP_BIND_PARENT_MODEL=openai/gpt-5.6-luna
- Hinweise:
- Dieser Testlauf verwendet die Gateway-Oberfläche
chat.sendmit ausschließlich Administratoren vorbehaltenen synthetischen Feldern für die Ursprungsroute, damit Tests einen Nachrichtenkanalkontext anfügen können, ohne eine externe Zustellung vorzutäuschen. - Wenn
OPENCLAW_LIVE_ACP_BIND_AGENT_COMMANDnicht gesetzt ist, verwendet der Test die integrierte Agentenregistrierung des eingebetteten Pluginsacpxfür den ausgewählten Agenten des ACP-Testsystems. - Die Cron-MCP-Erstellung für gebundene Sitzungen erfolgt standardmäßig nach bestem Bemühen, da externe ACP-Testsysteme MCP-Aufrufe abbrechen können, nachdem der Bindungs-/Bildnachweis erfolgreich war; setzen Sie
OPENCLAW_LIVE_ACP_BIND_REQUIRE_CRON=1, um diese Cron-Prüfung nach der Bindung strikt durchzuführen.
- Dieser Testlauf verwendet die Gateway-Oberfläche
Beispiel:
OPENCLAW_LIVE_ACP_BIND=1 \ OPENCLAW_LIVE_ACP_BIND_AGENT=claude \ pnpm test:live src/gateway/gateway-acp-bind.live.test.tsDocker-Rezept:
pnpm test:docker:live-acp-bindDocker-Rezepte für einzelne Agenten:
pnpm test:docker:live-acp-bind:claudepnpm test:docker:live-acp-bind:codexpnpm test:docker:live-acp-bind:droidpnpm test:docker:live-acp-bind:geminipnpm test:docker:live-acp-bind:opencodeDocker-Hinweise:
- Das Docker-Ausführungsskript befindet sich unter
scripts/test-live-acp-bind-docker.sh. - Standardmäßig führt es den ACP-Bindungs-Smoketest nacheinander mit den zusammengefassten aktiven CLI-Agenten aus:
claude,codexund anschließendgemini. - Verwenden Sie
OPENCLAW_LIVE_ACP_BIND_AGENTS=claude,OPENCLAW_LIVE_ACP_BIND_AGENTS=codex,OPENCLAW_LIVE_ACP_BIND_AGENTS=droid,OPENCLAW_LIVE_ACP_BIND_AGENTS=geminioderOPENCLAW_LIVE_ACP_BIND_AGENTS=opencode, um die Matrix einzuschränken. - Es stellt das passende CLI-Authentifizierungsmaterial im Container bereit und installiert anschließend bei Bedarf die angeforderte aktive CLI (
@anthropic-ai/claude-code,@openai/codex, Factory Droid überhttps://app.factory.ai/cli,@google/gemini-clioderopencode-ai). Das ACP-Backend selbst ist das eingebettete Paketacpx/runtimeaus dem offiziellen Pluginacpx. - Die Docker-Variante für Droid stellt
~/.factoryfür Einstellungen bereit, reichtFACTORY_API_KEYweiter und erfordert diesen API-Schlüssel, da die lokale Factory-Authentifizierung per OAuth/Schlüsselbund nicht in den Container übertragen werden kann. Sie verwendet den integrierten Registrierungseintragdroid exec --output-format acpvon ACPX. - Die Docker-Variante für OpenCode ist ein strikter Regressionstestlauf mit einem einzelnen Agenten. Sie schreibt aus
OPENCLAW_LIVE_ACP_BIND_OPENCODE_MODELein temporäres Standardmodell inOPENCODE_CONFIG_CONTENT(Standardwert:opencode/kimi-k2.6). - Direkte Aufrufe der CLI
acpxdienen nur als manueller Ausweichweg zum Vergleichen des Verhaltens außerhalb des Gateways. Der Docker-Smoketest für die ACP-Bindung prüft das eingebettete Laufzeit-Backendacpxvon OpenClaw.
Aktivtest: Smoketest des Codex-App-Server-Testsystems
- Ziel: das Plugin-eigene Codex-Testsystem über die normale Gateway-Methode
agentvalidieren:- das gebündelte Plugin
codexladen - über
/model <ref> --runtime codexein OpenAI-Modell auswählen - einen ersten Gateway-Agentendurchlauf mit der angeforderten Denkstufe senden
- einen zweiten Durchlauf an dieselbe OpenClaw-Sitzung senden und überprüfen, dass der App-Server-Thread fortgesetzt werden kann
/codex statusund/codex modelsüber denselben Gateway-Befehlspfad ausführen- optional zwei von Guardian geprüfte Shell-Tests mit erweiterten Berechtigungen ausführen: einen unbedenklichen Befehl, der genehmigt werden sollte, und einen Upload eines fingierten Geheimnisses, der abgelehnt werden sollte, sodass der Agent nachfragt
- das gebündelte Plugin
- Test:
src/gateway/gateway-codex-harness.live.test.ts - Aktivierung:
OPENCLAW_LIVE_CODEX_HARNESS=1 - Basismodell des Testsystems:
openai/gpt-5.6-luna - Standardauswahl bei einem neuen OpenAI-API-Schlüssel:
openai/gpt-5.6 - Standard-Denkstufe:
low - Modellüberschreibung:
OPENCLAW_LIVE_CODEX_HARNESS_MODEL=openai/<model> - Überschreibung der Denkstufe:
OPENCLAW_LIVE_CODEX_HARNESS_THINKING=<level> - Matrixüberschreibung:
OPENCLAW_LIVE_CODEX_HARNESS_TARGETS=<model>=<thinking>,... - Authentifizierungsmodus:
OPENCLAW_LIVE_CODEX_HARNESS_AUTH=codex-auth(Standardwert) verwendet die kopierte Codex-Anmeldung;api-keyverwendetOPENAI_API_KEYüber den Codex-App-Server. - Optionale Bildprüfung:
OPENCLAW_LIVE_CODEX_HARNESS_IMAGE_PROBE=1 - Optionale MCP-/Werkzeugprüfung:
OPENCLAW_LIVE_CODEX_HARNESS_MCP_PROBE=1 - Optionale Guardian-Prüfung:
OPENCLAW_LIVE_CODEX_HARNESS_GUARDIAN_PROBE=1 - Der Smoketest erzwingt für Provider/Modell
agentRuntime.id: "codex", sodass ein defektes Codex-Testsystem nicht unbemerkt bestehen kann, indem es auf OpenClaw zurückfällt. - Authentifizierung: Authentifizierung des Codex-App-Servers über die lokale Anmeldung des Codex-Abonnements oder
OPENAI_API_KEY, wennOPENCLAW_LIVE_CODEX_HARNESS_AUTH=api-keygesetzt ist. Docker kann für Abonnementläufe~/.codex/auth.jsonund~/.codex/config.tomlkopieren.
Lokales Rezept:
OPENCLAW_LIVE_CODEX_HARNESS=1 \ OPENCLAW_LIVE_CODEX_HARNESS_IMAGE_PROBE=1 \ OPENCLAW_LIVE_CODEX_HARNESS_MCP_PROBE=1 \ OPENCLAW_LIVE_CODEX_HARNESS_GUARDIAN_PROBE=1 \ OPENCLAW_LIVE_CODEX_HARNESS_MODEL=openai/gpt-5.6-luna \ pnpm test:live -- src/gateway/gateway-codex-harness.live.test.tsDocker-Rezept:
pnpm test:docker:live-codex-harnessNative Codex-Matrix für GPT-5.6:
OPENCLAW_LIVE_CODEX_HARNESS_AUTH=api-key \ OPENCLAW_LIVE_CODEX_HARNESS_TARGETS='openai/gpt-5.6-sol=ultra,openai/gpt-5.6-terra=ultra,openai/gpt-5.6-luna=max' \ pnpm test:docker:live-codex-harnessStandardwert bei einem neuen OpenAI-API-Schlüssel:
OPENCLAW_LIVE_GATEWAY_OPENAI_API_DEFAULT=1 \ OPENCLAW_LIVE_GATEWAY_PROVIDERS=openai \ OPENCLAW_LIVE_GATEWAY_THINKING=off \ pnpm test:live -- src/gateway/gateway-models.profiles.live.test.tsDieser Nachweis lässt OPENCLAW_LIVE_GATEWAY_MODELS ungesetzt, ermittelt das Modell über
die Auswahlsschnittstelle für Inferenz beim neuen Onboarding, prüft openai/gpt-5.6 und führt anschließend
einen echten Gateway-Durchlauf mit diesem ermittelten Modell aus.
Eingebettete OpenClaw-Matrix für GPT-5.6:
OPENCLAW_LIVE_GATEWAY_THINKING=ultra \ OPENCLAW_LIVE_GATEWAY_PROVIDERS=openai \ OPENCLAW_LIVE_GATEWAY_MODELS='openai/gpt-5.6-sol,openai/gpt-5.6-terra,openai/gpt-5.6-luna' \ pnpm test:live -- src/gateway/gateway-models.profiles.live.test.tsDocker-Hinweise:
- Das Docker-Ausführungsskript befindet sich unter
scripts/test-live-codex-harness-docker.sh. - Es reicht
OPENAI_API_KEYweiter, kopiert vorhandene Authentifizierungsdateien der Codex-CLI, installiert@openai/codexin ein beschreibbares, eingebundenes npm-Präfix, stellt den Quellbaum bereit und führt anschließend ausschließlich den Aktivtest des Codex-Testsystems aus. - Docker aktiviert die Bild-, MCP-/Werkzeug- und Guardian-Prüfungen standardmäßig. Setzen Sie
OPENCLAW_LIVE_CODEX_HARNESS_IMAGE_PROBE=0,OPENCLAW_LIVE_CODEX_HARNESS_MCP_PROBE=0oderOPENCLAW_LIVE_CODEX_HARNESS_GUARDIAN_PROBE=0, wenn Sie einen enger eingegrenzten Debug-Durchlauf benötigen. - Docker verwendet dieselbe explizite Codex-Laufzeitkonfiguration, sodass veraltete Aliasse oder ein Rückfall auf OpenClaw eine Regression des Codex-Testsystems nicht verbergen können.
- Matrixziele werden nacheinander in einem Container ausgeführt. Das Docker-Skript skaliert sein standardmäßiges Zeitlimit von 35 Minuten entsprechend der Anzahl der Ziele; jedes äußere Shell- oder CI-Zeitlimit muss dieselbe Gesamtdauer zulassen. Die kanonische CI führt jedes GPT-5.6-Ziel in einem separaten Shard aus.
Empfohlene Aktivtest-Rezepte
Eng eingegrenzte, explizite Zulassungslisten sind am schnellsten und am wenigsten fehleranfällig:
-
Einzelnes Modell, direkt (ohne Gateway):
OPENCLAW_LIVE_MODELS="openai/gpt-5.6-luna" pnpm test:live src/agents/models.profiles.live.test.ts
-
Direktes Profil für kleine Modelle:
OPENCLAW_LIVE_MODELS=small pnpm test:live src/agents/models.profiles.live.test.ts
-
Gateway-Profil für kleine Modelle:
OPENCLAW_LIVE_GATEWAY_MODELS=small pnpm test:live src/gateway/gateway-models.profiles.live.test.ts
-
Ollama-Cloud-API-Smoketest:
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_OLLAMA=1 OPENCLAW_LIVE_OLLAMA_BASE_URL=https://ollama.com OPENCLAW_LIVE_OLLAMA_MODEL=glm-5.1:cloud OPENCLAW_LIVE_OLLAMA_WEB_SEARCH=0 pnpm test:live -- extensions/ollama/ollama.live.test.ts
-
Einzelnes Modell, Gateway-Smoketest:
OPENCLAW_LIVE_GATEWAY_MODELS="openai/gpt-5.6-luna" pnpm test:live src/gateway/gateway-models.profiles.live.test.ts
-
Werkzeugaufrufe über mehrere Provider hinweg:
OPENCLAW_LIVE_GATEWAY_MODELS="openai/gpt-5.6-luna,anthropic/claude-opus-4-6,google/gemini-3.5-flash,deepseek/deepseek-v4-flash,zai/glm-5.1,minimax/MiniMax-M3" pnpm test:live src/gateway/gateway-models.profiles.live.test.ts
-
Direkter Smoketest für Z.AI Coding Plan GLM-5.2:
ZAI_CODING_LIVE_TEST=1 pnpm test:live src/agents/zai.live.test.ts
-
Schwerpunkt Google (Gemini-API-Schlüssel + Antigravity):
- Gemini (API-Schlüssel):
OPENCLAW_LIVE_GATEWAY_MODELS="google/gemini-3.5-flash" pnpm test:live src/gateway/gateway-models.profiles.live.test.ts - Antigravity (OAuth):
OPENCLAW_LIVE_GATEWAY_MODELS="google-antigravity/claude-opus-4-6-thinking,google-antigravity/gemini-3-pro-high" pnpm test:live src/gateway/gateway-models.profiles.live.test.ts
- Gemini (API-Schlüssel):
-
Google-Smoketest für adaptives Denken (
qa manualaus der privaten QA-CLI – erfordertOPENCLAW_ENABLE_PRIVATE_QA_CLI=1und einen Quellcode-Checkout; siehe QA-Übersicht):- Dynamischer Standardwert für Gemini 3:
OPENCLAW_ENABLE_PRIVATE_QA_CLI=1 pnpm openclaw qa manual --provider-mode live-frontier --model google/gemini-3.1-pro-preview --alt-model google/gemini-3.1-pro-preview --message '/think adaptive Reply exactly: GEMINI_ADAPTIVE_OK' --timeout-ms 180000 - Dynamisches Budget für Gemini 2.5:
OPENCLAW_ENABLE_PRIVATE_QA_CLI=1 pnpm openclaw qa manual --provider-mode live-frontier --model google/gemini-2.5-flash --alt-model google/gemini-2.5-flash --message '/think adaptive Reply exactly: GEMINI25_ADAPTIVE_OK' --timeout-ms 180000
- Dynamischer Standardwert für Gemini 3:
Hinweise:
google/...verwendet die Gemini-API (API-Schlüssel).google-antigravity/...verwendet die Antigravity-OAuth-Brücke (Agentenendpunkt im Stil von Cloud Code Assist).google-gemini-cli/...verwendet die lokale Gemini-CLI auf Ihrem Computer (separate Authentifizierung und Besonderheiten bei den Werkzeugen).- Gemini-API im Vergleich zur Gemini-CLI:
- API: OpenClaw ruft die von Google gehostete Gemini-API über HTTP auf (API-Schlüssel/Profilauthentifizierung); dies ist das, was die meisten Benutzer unter „Gemini“ verstehen.
- CLI: OpenClaw ruft ein lokales Binärprogramm
geminiüber die Shell auf; es verfügt über eine eigene Authentifizierung und kann sich anders verhalten (Streaming-/Werkzeugunterstützung, Versionsabweichungen).
Aktivtest: Modellmatrix (abgedeckter Umfang)
Aktivtests müssen explizit aktiviert werden, daher gibt es keine feste „CI-Modellliste“. OPENCLAW_LIVE_MODELS=modern / OPENCLAW_LIVE_GATEWAY_MODELS=modern (sowie ihr Alias all) führen die kuratierte Prioritätsliste aus HIGH_SIGNAL_LIVE_MODEL_PRIORITY in src/agents/live-model-filter.ts in dieser Prioritätsreihenfolge aus:
| Provider/Modell | Hinweise |
|---|---|
anthropic/claude-opus-4-8 |
|
anthropic/claude-sonnet-5 |
|
anthropic/claude-sonnet-4-6 |
|
anthropic/claude-opus-4-7 |
|
google/gemini-3.1-pro-preview |
Gemini API |
google/gemini-3.5-flash |
Gemini API |
cohere/command-a-plus-05-2026 |
|
moonshot/kimi-k2.7-code |
|
anthropic/claude-opus-4-6 |
|
deepseek/deepseek-v4-flash |
|
deepseek/deepseek-v4-pro |
|
minimax/MiniMax-M3 |
|
openai/gpt-5.5 |
|
openrouter/openai/gpt-5.2-chat |
|
openrouter/minimax/minimax-m2.7 |
|
opencode-go/glm-5 |
|
openrouter/ai21/jamba-large-1.7 |
|
xai/grok-4.5 |
|
xai/grok-4.20-0309-reasoning |
|
zai/glm-5.1 |
|
fireworks/accounts/fireworks/models/glm-5p1 |
|
minimax-portal/minimax-m3 |
Die kuratierte Liste der kleinen Modelle (OPENCLAW_LIVE_MODELS=small / OPENCLAW_LIVE_GATEWAY_MODELS=small) aus SMALL_LIVE_MODEL_PRIORITY:
| Provider/Modell |
|---|
lmstudio/qwen/qwen3.5-9b |
vllm/qwen/qwen3-8b |
sglang/qwen/qwen3-8b |
ollama/gemma3:4b |
openrouter/qwen/qwen3.5-9b |
openrouter/z-ai/glm-5.1 |
openrouter/z-ai/glm-5 |
zai/glm-5.1 |
Hinweise zur modernen Liste:
- Die Provider
codexundcodex-clisind vom standardmäßigen modernen Durchlauf ausgeschlossen (sie decken das Verhalten des CLI-Backends bzw. von ACP ab und werden oben separat getestet).openai/gpt-5.5selbst wird standardmäßig über das Codex-App-Server-Testsystem geleitet; siehe Live: Smoke-Test des Codex-App-Server-Testsystems. fireworks,google,openrouterundxaiführen im modernen Durchlauf nur ihre ausdrücklich kuratierten Modell-IDs aus (keine automatische Erweiterung auf „jedes Modell dieses Providers“).- Nehmen Sie mindestens ein bildfähiges Modell (Vision-Varianten der Claude-, Gemini- oder OpenAI-Familie usw.) in
OPENCLAW_LIVE_GATEWAY_MODELSauf, um die Bildprüfung auszuführen.
Führen Sie den Gateway-Smoke-Test mit Tools und Bild für eine manuell ausgewählte, Provider-übergreifende Gruppe aus:
OPENCLAW_LIVE_GATEWAY_MODELS="openai/gpt-5.6-luna,anthropic/claude-opus-4-6,google/gemini-3.1-pro-preview,google/gemini-3.5-flash,google-antigravity/claude-opus-4-6-thinking,deepseek/deepseek-v4-flash,zai/glm-5.1,minimax/MiniMax-M3" pnpm test:live src/gateway/gateway-models.profiles.live.test.tsOptionale zusätzliche Abdeckung außerhalb der kuratierten Listen (wünschenswert; wählen Sie ein für „Tools“ geeignetes Modell, das Sie aktiviert haben):
- Mistral:
mistral/... - Cerebras:
cerebras/...(wenn Sie Zugriff haben) - LM Studio:
lmstudio/...(lokal; Tool-Aufrufe hängen vom API-Modus ab)
Aggregatoren / alternative Gateways
Wenn Sie Schlüssel aktiviert haben, können Sie auch über Folgendes testen:
- OpenRouter:
openrouter/...(Hunderte Modelle; verwenden Sieopenclaw models scan, um Kandidaten mit Tool- und Bildunterstützung zu finden) - OpenCode:
opencode/...für Zen undopencode-go/...für Go (Authentifizierung überOPENCODE_API_KEY/OPENCODE_ZEN_API_KEY)
Weitere Provider, die Sie in die Live-Matrix aufnehmen können (wenn Sie Zugangsdaten bzw. eine Konfiguration haben):
- Integriert:
anthropic,cerebras,github-copilot,google,google-antigravity,google-gemini-cli,google-vertex,groq,mistral,openai,openrouter,opencode,opencode-go,xai,zai - Über
models.providers(benutzerdefinierte Endpunkte):minimax(Cloud/API) sowie beliebige OpenAI-/Anthropic-kompatible Proxys (LM Studio, vLLM, LiteLLM usw.)
Zugangsdaten (niemals committen)
Live-Tests ermitteln Zugangsdaten auf dieselbe Weise wie die CLI. Praktische Auswirkungen:
-
Wenn die CLI funktioniert, sollten die Live-Tests dieselben Schlüssel finden.
-
Wenn ein Live-Test „no creds“ meldet, führen Sie die Fehlersuche genauso durch wie bei
openclaw models listbzw. der Modellauswahl. -
Agent-spezifische Authentifizierungsprofile:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json(darauf bezieht sich „profile keys“ in den Live-Tests) -
Konfiguration:
~/.openclaw/openclaw.json(oderOPENCLAW_CONFIG_PATH) -
Veraltetes OAuth-Verzeichnis:
~/.openclaw/credentials/(wird, sofern vorhanden, in das bereitgestellte Live-Ausgangsverzeichnis kopiert, ist jedoch nicht der primäre Speicher für Profilschlüssel) -
Lokale Live-Ausführungen kopieren die aktive Konfiguration (wobei Überschreibungen für
agents.*.workspace/agentDirentfernt werden) und die Dateiauth-profiles.jsonjedes Agents – nicht den übrigen Inhalt des jeweiligen Agent-Verzeichnisses, sodass Daten ausworkspace/undsandboxes/niemals in das bereitgestellte Ausgangsverzeichnis gelangen – sowie das veraltete Verzeichniscredentials/und unterstützte Authentifizierungsdateien bzw. -verzeichnisse externer CLIs (.claude.json,.claude/.credentials.json,.claude/settings*.json,.claude/backups,.codex/auth.json,.codex/config.toml,.gemini,.minimax) in ein temporäres Test-Ausgangsverzeichnis.
Wenn Sie Umgebungsschlüssel verwenden möchten, exportieren Sie sie vor lokalen Tests oder verwenden Sie die nachstehenden Docker-Ausführungsprogramme mit einer ausdrücklich angegebenen Datei OPENCLAW_PROFILE_FILE.
Deepgram live (Audiotranskription)
- Test:
extensions/deepgram/audio.live.test.ts - Aktivieren:
DEEPGRAM_API_KEY=... DEEPGRAM_LIVE_TEST=1 pnpm test:live extensions/deepgram/audio.live.test.ts
BytePlus-Coding-Plan live
- Test:
extensions/byteplus/live.test.ts - Aktivieren:
BYTEPLUS_API_KEY=... BYTEPLUS_LIVE_TEST=1 pnpm test:live extensions/byteplus/live.test.ts - Optionale Modellüberschreibung:
BYTEPLUS_CODING_MODEL=ark-code-latest
ComfyUI-Workflow-Medien live
- Test:
extensions/comfy/comfy.live.test.ts - Aktivieren:
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts - Umfang:
- Führt die gebündelten Comfy-Pfade für Bilder, Videos und
music_generateaus - Überspringt jede Funktion, sofern
plugins.entries.comfy.config.<capability>nicht konfiguriert ist - Nützlich nach Änderungen an der Übermittlung von Comfy-Workflows, an Abfragen, Downloads oder der Plugin-Registrierung
- Führt die gebündelten Comfy-Pfade für Bilder, Videos und
Bilderzeugung live
- Test:
test/image-generation.runtime.live.test.ts - Befehl:
pnpm test:live test/image-generation.runtime.live.test.ts - Testsystem:
pnpm test:live:media image - Umfang:
- Erfasst jedes registrierte Provider-Plugin für die Bilderzeugung
- Verwendet bereits exportierte Provider-Umgebungsvariablen vor der Prüfung
- Verwendet standardmäßig Live-/Umgebungs-API-Schlüssel vor gespeicherten Authentifizierungsprofilen, sodass veraltete Testschlüssel in
auth-profiles.jsonkeine echten Shell-Zugangsdaten verdecken - Überspringt Provider ohne verwendbare Authentifizierung, verwendbares Profil oder Modell
- Führt jeden konfigurierten Provider über die gemeinsame Bilderzeugungs-Laufzeit aus:
<provider>:generate<provider>:edit, wenn der Provider Unterstützung für die Bearbeitung deklariert
- Derzeit abgedeckte gebündelte Provider:
deepinfrafalgoogleminimaxopenaiopenroutervydraxai
- Optionale Eingrenzung:
OPENCLAW_LIVE_IMAGE_GENERATION_PROVIDERS="openai,google,openrouter,xai"OPENCLAW_LIVE_IMAGE_GENERATION_PROVIDERS="deepinfra"OPENCLAW_LIVE_IMAGE_GENERATION_MODELS="openai/gpt-image-2,google/gemini-3.1-flash-image-preview,openrouter/google/gemini-3.1-flash-image-preview,xai/grok-imagine-image"OPENCLAW_LIVE_IMAGE_GENERATION_CASES="google:flash-generate,google:pro-edit,openrouter:generate,xai:default-generate,xai:default-edit"
- Optionales Authentifizierungsverhalten:
OPENCLAW_LIVE_REQUIRE_PROFILE_KEYS=1, um die Authentifizierung über den Profilspeicher zu erzwingen und ausschließlich umgebungsbasierte Überschreibungen zu ignorieren
Fügen Sie für den ausgelieferten CLI-Pfad einen infer-Smoke-Test hinzu, nachdem der Live-Test für Provider/Laufzeit erfolgreich war:
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_INFER_CLI_TEST=1 pnpm test:live -- test/image-generation.infer-cli.live.test.tsopenclaw infer image providers --jsonopenclaw infer image generate \ --model google/gemini-3.1-flash-image-preview \ --prompt "Minimal flat test image: one blue square on a white background, no text." \ --output ./openclaw-infer-image-smoke.png \ --jsonDies deckt die Analyse der CLI-Argumente, die Auflösung der Konfiguration bzw. des Standard-Agents, die Aktivierung gebündelter Plugins, die gemeinsame Bilderzeugungs-Laufzeit und die Live-Anfrage an den Provider ab. Es wird erwartet, dass Plugin-Abhängigkeiten vor dem Laden der Laufzeit vorhanden sind.
Musikerzeugung live
- Test:
extensions/music-generation-providers.live.test.ts - Aktivieren:
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/music-generation-providers.live.test.ts - Testsystem:
pnpm test:live:media music - Umfang:
- Führt den gemeinsamen Pfad der gebündelten Provider für die Musikerzeugung aus
- Deckt derzeit
fal,google,minimaxundopenrouterab - Verwendet bereits exportierte Provider-Umgebungsvariablen vor der Prüfung
- Verwendet standardmäßig Live-/Umgebungs-API-Schlüssel vor gespeicherten Authentifizierungsprofilen, sodass veraltete Testschlüssel in
auth-profiles.jsonkeine echten Shell-Zugangsdaten verdecken - Überspringt Provider ohne verwendbare Authentifizierung, verwendbares Profil oder Modell
- Führt beide deklarierten Laufzeitmodi aus, sofern verfügbar:
generatemit einer Eingabe, die nur eine Eingabeaufforderung enthältedit, wenn der Providercapabilities.edit.enableddeklariert
comfyverfügt über eine eigene separate Live-Datei und ist nicht Teil dieses gemeinsamen Durchlaufs
- Optionale Eingrenzung:
OPENCLAW_LIVE_MUSIC_GENERATION_PROVIDERS="google,minimax"OPENCLAW_LIVE_MUSIC_GENERATION_MODELS="google/lyria-3-clip-preview,minimax/music-2.6"
- Optionales Authentifizierungsverhalten:
OPENCLAW_LIVE_REQUIRE_PROFILE_KEYS=1, um die Authentifizierung über den Profilspeicher zu erzwingen und ausschließlich umgebungsbasierte Überschreibungen zu ignorieren
Videoerzeugung live
- Test:
extensions/video-generation-providers.live.test.ts - Aktivieren:
OPENCLAW_LIVE_TEST=1 pnpm test:live -- extensions/video-generation-providers.live.test.ts - Test-Harness:
pnpm test:live:media video - Umfang:
- Testet den gemeinsamen Pfad der gebündelten Provider für die Videogenerierung über
alibaba,byteplus,deepinfra,fal,google,minimax,openai,openrouter,pixverse,qwen,runway,together,vydra,xai - Verwendet standardmäßig den releasesicheren Smoke-Test-Pfad: eine Text-zu-Video-Anfrage pro Provider, einen einsekündigen Hummer-Prompt und ein Zeitlimit pro Provider-Vorgang aus
OPENCLAW_LIVE_VIDEO_GENERATION_TIMEOUT_MS(standardmäßig180000) - Überspringt FAL standardmäßig, da die providerseitige Warteschlangenlatenz die Release-Dauer dominieren kann; übergeben Sie
OPENCLAW_LIVE_VIDEO_GENERATION_PROVIDERS="fal"(oder leeren Sie die Überspringen-Liste), um den Test ausdrücklich auszuführen - Verwendet vor der Prüfung bereits exportierte Provider-Umgebungsvariablen
- Verwendet standardmäßig Live-/Umgebungs-API-Schlüssel vor gespeicherten Authentifizierungsprofilen, damit veraltete Testschlüssel in
auth-profiles.jsonechte Shell-Anmeldedaten nicht verdecken - Überspringt Provider ohne verwendbare Authentifizierung, verwendbares Profil oder verwendbares Modell
- Führt standardmäßig nur
generateaus - Setzen Sie
OPENCLAW_LIVE_VIDEO_GENERATION_FULL_MODES=1, um zusätzlich deklarierte Transformationsmodi auszuführen, sofern verfügbar:imageToVideo, wenn der Providercapabilities.imageToVideo.enableddeklariert und der ausgewählte Provider beziehungsweise das ausgewählte Modell im gemeinsamen Testlauf lokale, puffergestützte Bildeingaben akzeptiertvideoToVideo, wenn der Providercapabilities.videoToVideo.enableddeklariert und der ausgewählte Provider beziehungsweise das ausgewählte Modell im gemeinsamen Testlauf lokale, puffergestützte Videoeingaben akzeptiert
- Derzeit deklarierter, aber im gemeinsamen Testlauf übersprungener
imageToVideo-Provider:vydra(puffergestützte lokale Bildeingaben werden in diesem Testlauf nicht unterstützt)
- Providerspezifische Vydra-Abdeckung:
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_VYDRA_VIDEO=1 pnpm test:live -- extensions/vydra/vydra.live.test.ts- Diese Datei führt
veo3für Text-zu-Video sowie einenkling-Testlauf für Bild-zu-Video aus, der standardmäßig eine Fixture mit einer Remote-Bild-URL verwendet (zum ÜberschreibenOPENCLAW_LIVE_VYDRA_KLING_IMAGE_URL).
- Providerspezifische xAI-Abdeckung:
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_XAI_VIDEO=1 pnpm test:live -- extensions/xai/xai.live.test.ts -t "classic Grok Imagine"- Der klassische Fall generiert ein quadratisches lokales PNG als erstes Einzelbild, lässt Geometrieangaben weg, fordert einen einsekündigen Bild-zu-Video-Clip an, fragt den Status bis zum Abschluss ab und überprüft den heruntergeladenen Puffer.
OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_XAI_VIDEO=1 pnpm test:live -- extensions/xai/xai.live.test.ts -t "Grok Imagine Video 1.5"- Der 1.5-Fall generiert ein lokales PNG als erstes Einzelbild, fordert einen einsekündigen 1080P-Bild-zu-Video-Clip an, fragt den Status bis zum Abschluss ab und überprüft den heruntergeladenen Puffer.
- Aktuelle Live-Abdeckung für
videoToVideo:runwaynur, wenn das ausgewählte Modell zugen4_alephaufgelöst wird
- Derzeit deklarierte, aber im gemeinsamen Testlauf übersprungene
videoToVideo-Provider:alibaba,google,openai,qwen,xai, da diese Pfade derzeit Remote-Referenz-URLs mithttp(s)anstelle puffergestützter lokaler Eingaben erfordern
- Testet den gemeinsamen Pfad der gebündelten Provider für die Videogenerierung über
- Optionale Eingrenzung:
OPENCLAW_LIVE_VIDEO_GENERATION_PROVIDERS="deepinfra,google,openai,runway"OPENCLAW_LIVE_VIDEO_GENERATION_MODELS="google/veo-3.1-fast-generate-preview,openai/sora-2,runway/gen4_aleph"OPENCLAW_LIVE_VIDEO_GENERATION_SKIP_PROVIDERS="", um jeden Provider in den standardmäßigen Testlauf einzubeziehen, einschließlich FALOPENCLAW_LIVE_VIDEO_GENERATION_TIMEOUT_MS=60000, um das Zeitlimit jedes Provider-Vorgangs für einen aggressiven Smoke-Test zu reduzieren
- Optionales Authentifizierungsverhalten:
OPENCLAW_LIVE_REQUIRE_PROFILE_KEYS=1, um die Authentifizierung über den Profilspeicher zu erzwingen und ausschließlich über Umgebungsvariablen bereitgestellte Überschreibungen zu ignorieren
Live-Test-Harness für Medien
- Befehl:
pnpm test:live:media - Einstiegspunkt:
test/e2e/qa-lab/media/hosted-media-provider-live.ts, der pro ausgewählter Testsuitepnpm test:live -- <suite-test-file>ausführt, sodass das Heartbeat- und Ruhemodus-Verhalten mit anderenpnpm test:live-Ausführungen konsistent bleibt. - Zweck:
- Führt die gemeinsamen Live-Testsuites für Bilder, Musik und Videos über einen einzigen repo-eigenen Einstiegspunkt aus
- Lädt fehlende Provider-Umgebungsvariablen automatisch aus
~/.profile - Grenzt jede Testsuite standardmäßig automatisch auf Provider ein, für die derzeit eine verwendbare Authentifizierung vorliegt
- Optionen:
--providers <csv>globaler Provider-Filter;--image-providers/--music-providers/--video-providersbeschränken einen Filter auf eine Testsuite--all-providersüberspringt den authentifizierungsbasierten automatischen Filter--allow-emptybeendet den Vorgang mit0, wenn nach der Filterung keine ausführbaren Provider verbleiben--quiet/--no-quietwerden antest:liveweitergegeben
- Beispiele:
pnpm test:live:mediapnpm test:live:media image video --providers openai,google,minimaxpnpm test:live:media video --video-providers openai,runway --all-providerspnpm test:live:media music --quiet
Verwandte Themen
- Tests – Unit-, Integrations-, QA- und Docker-Testsuites