Zum Hauptinhalt springen

Für Agenten

Dieser Abschnitt richtet sich an KI-Agenten, LLMs und Automatisierungssysteme, die Otto programmatisch bedienen. Wenn Sie ein menschlicher Entwickler sind, beginnen Sie mit dem Schnellstart.

Umfang

Dieser Abschnitt behandelt:

  • Wie man Ottos Fähigkeiten vor dem Handeln überprüft
  • Welche Quellen kanonisch sind
  • Welche Einschränkungen während der Automatisierung gelten
  • Wie man Fehler deterministisch behandelt
  • Wie man den MCP-Server für programmatischen Zugriff verwendet
  • Wie man Otto bei Agent-Frameworks registriert
  • Wie man Otto-Skill-Pakete verwendet

Für das vollständige Automatisierungs-Runbook siehe den Automatisierungsleitfaden.

Kanonische Quellen

ThemaQuelle
Protokollverträgepackages/shared-protocol/src/index.ts
Relay-Routing und Authpackages/relay/src/index.ts
CLI-Befehlsstrukturpackages/cli/src/index.ts, packages/cli/src/cli/*.ts
Erweiterungslaufzeitextension/entrypoints/background.ts, extension/src/runtime/
Verfügbare Befehleextension/src/commands/

Kanonische Dokumentations-URLs:

  • Protokollreferenz: /protocol
  • CLI-Referenz: /cli
  • Befehlsreferenz: /commands
  • Fehlercodes: /error-codes

Entscheidungsfluss

Einschränkungen

Die folgenden Verhaltensweisen sind Invarianten; versuchen Sie nicht, sie zu umgehen:

  • Niemals Anmeldeinformationen automatisieren. Wenn eine Site eine Anmeldung erfordert, geben Sie manual_login_required zurück und bitten Sie den Menschen, sich im Browser zu authentifizieren.
  • Niemals ACL umgehen. Wenn acl_missing_node_grant zurückgegeben wird, bitten Sie den Menschen, den Controller-Zugriff im Erweiterungs-Popup zu genehmigen. Versuchen Sie nicht, ACL-Grants zu injizieren.
  • Immer targetNodeId verwenden. Wenn nur ein Node verbunden ist, wählt die CLI ihn automatisch aus. Bei mehreren Nodes übergeben Sie --node-id explizit.
  • Niemals Secrets in Protokollen offenlegen. Geben Sie OTTO_TOKEN_SECRET, Controller-Client-Secrets oder Node-Token in keiner Ausgabeoberfläche aus.
  • Payloads begrenzt halten. Versuchen Sie keine unbegrenzten Seiten-Scraping-Schleifen oder unbegrenzte Stream-Sessions.

Befehls-Gesundheitscheck

Überprüfen Sie vor jeder Automatisierungsaufgabe, ob der gesamte Stack erreichbar ist:

otto commands list --json

Eine erfolgreiche Antwort bestätigt: Relay läuft, Node ist verbunden, Controller ist authentifiziert und ACL-Grants sind aktiv. Wenn dies fehlschlägt, folgen Sie dem Entscheidungsfluss oben.

Fehlerbehandlung

FehlercodeEmpfohlene Aktion
manual_login_requiredPausieren und den Menschen bitten, sich auf der Site im Browser anzumelden, dann erneut versuchen
acl_missing_node_grantPausieren und den Menschen bitten, den Controller-Zugriff im Erweiterungs-Popup zu genehmigen, dann erneut versuchen
node_offlineAuf Wiederverbindung des Nodes warten oder erneut koppeln; nicht endlos schleifen
tab_url_not_readyNach kurzer Verzögerung (2–5 Sekunden) erneut versuchen
site_mismatchFrischen Tab mit der korrekten URL über primitive.tab.open öffnen, dann erneut versuchen
replay_rejectedNicht erneut abspielen; neuen Befehl mit frischer replayNonce generieren
forbidden_actionController-Token-Scopes überprüfen; eskalieren, wenn Scopes nicht erweitert werden können
rate_limitedZurückweichen und erneut versuchen; OTTO_RATE_LIMIT_PER_MIN nicht ohne Betreibergenehmigung erhöhen

Bei allen Fehlern: zuerst nach requestId korrelieren mit otto logs list --request-id <id> --source all.

Maschinenlesbare Ausgabe

Alle Otto-CLI-Befehle, die --json unterstützen, geben deterministische, strukturierte Ausgabe aus. Verwenden Sie --json für alle Automatisierungs-Workflows:

otto commands list --json
otto test reddit.com getPosts --json
otto logs list --source all --latest 100 --json
otto setup --non-interactive

otto setup --non-interactive gibt immer JSON ohne TTY-Formatierung aus.

Verwandte Seiten

  • Automatisierungsleitfaden — vollständiges Agenten-Runbook mit Codebeispielen.
  • MCP-Server — MCP-Server-Dokumentation und Werkzeugliste.
  • Agent-Setup — Otto bei Agent-Frameworks registrieren.
  • Skills — Otto-Skill-Pakete für Agent-Workflows.
  • Fehlercodes — vollständiger Fehlercode-Katalog.
  • Snippets — ausführbare Codebeispiele für gängige Agent-Muster.
  • llms.txt — maschinenlesbare Projektzusammenfassung für LLM-Kontextfenster.