Alle Seiten
Auf dieser Seite

GitHub Copilot

GitHub Copilot ist der Provider, mit dem OAR startet: Er ist immer verfügbar und nutzt die Copilot CLI, die auf dem Relay-Host angemeldet ist. Das Relay führt ihn auf einer von zwei Engines aus. Die SDK-Engine ist der Standard und bietet dir Nachsteuern, eine Task-Leiste für Hintergrund-Tasks und Fragen mit Mehrfachauswahl. Die Extension-Engine führt die echte Copilot CLI in einem Terminal aus, dem du zusehen kannst.

OpenAI mit deinem eigenen Key läuft auf denselben zwei Engines, daher gelten die Engine-Abschnitte dieser Seite auch dafür. Key und Modelle stehen auf der Seite OpenAI.

Was du brauchst #

  • Die Copilot CLI, angemeldet, auf dem Relay-Host. Installiere sie mit npm install -g @github/copilot, führ einmal copilot aus und melde dich an. Dein GitHub-Konto braucht einen Copilot-Plan, der Copilot CLI enthält.
  • Einen Neustart des Relays nach Installation oder Upgrade der CLI. Das Relay sucht die Runtime der CLI beim Start und sieht eine spätere Installation nicht.
  • Die GitHub CLI (gh), angemeldet, für oar copilot, Sessions der Extension-Engine unter Windows und die Copilot-Karte in Check Usage (Verbrauch prüfen).
  • tmux (optional, Linux und macOS), wenn du das Terminal einer Session mit 🖥️ Inspect tmux console (tmux-Konsole ansehen) beobachten willst.

Das Relay installiert oder aktualisiert die Copilot CLI nicht. In Settings → Providers → Copilot (Einstellungen → Provider → Copilot) meldet die Zeile GitHub Copilot CLI oben nur ihren Zustand.

Wie OAR die CLI findet #

Die SDK-Engine steuert die Runtime, die mit der Copilot CLI kommt. Beim Start sucht das Relay im Paket-Cache der CLI und nimmt die neueste Version dort:

System Ordner
Linux ~/.cache/copilot/pkg und ~/.local/share/copilot/pkg
macOS ~/Library/Application Support/copilot/pkg
Windows %LOCALAPPDATA%\copilot\pkg

Unter Linux folgen die beiden Ordner XDG_CACHE_HOME und XDG_DATA_HOME, wenn du sie setzt. Setz COPILOT_PKG_DIR, um einen Ordner zur Suche hinzuzufügen, oder COPILOT_SDK_PATH, um das copilot-sdk-Verzeichnis der Runtime direkt anzugeben. Wird nichts gefunden, ist die SDK-Engine nicht verfügbar (siehe Die Engine wählen).

oar copilot verwenden #

oar copilot startet das Relay im Hintergrund, wenn auf seinem Port keines antwortet, und öffnet dann die Copilot CLI (gh copilot) in deiner Shell. Ein Relay, das es gestartet hat, stoppt wieder, wenn die Session endet. Argumente nach -- gehen an gh copilot.

oar copilot
oar copilot --port 3400 -- --help

Jeder Lauf schreibt oder erneuert außerdem einen kleinen Wrapper in ~/.copilot/extensions/web-relay/, eine benutzerweite Extension, die die Extension von OAR in die Copilot CLI lädt. oar copilot --install-extension tut nur das und beendet sich (es braucht kein gh); --no-install-extension überspringt es für einen Lauf. Fehlt gh, sagt oar copilot das und stoppt; installiere die GitHub CLI oder starte nur das Relay mit oar start.

Die zwei Engines #

SDK-Engine Extension-Engine
Was läuft Ein Headless-Worker pro Konversation, der die mitgelieferte Runtime der Copilot CLI steuert Die Copilot CLI in einer Terminal-Session, mit geladener OAR-Extension
Standard Ja, seit 0.9.2 Genutzt, wenn das Relay die SDK-Engine nicht ausführen kann
Braucht Eine installierte, angemeldete Copilot CLI Dasselbe, plus gh unter Windows
Während eines Turns gesendete Nachricht Steer (Nachsteuern): Sie geht in den laufenden Turn Neu in 0.9.3 Wartet in der Queue, bis der Turn endet
Hintergrund-Tasks In der Task-Leiste des Eingabebereichs aufgelistet, jeder mit funktionierendem Stop (Stoppen) Neu in 0.9.3 Nicht in der Leiste
Fragen mit Mehrfachauswahl Ja: Das Modell kann eine Frage als Mehrfachauswahl markieren, und Auswahlkarten haben einen Schalter Select several (Mehrere auswählen) Neu in 0.9.3 Nicht auf einer einfachen Auswahlkarte. Ein Formular mit einem Feld, das mehrere Werte annimmt, bietet mehrere an
Wartezeit für Fragen 8 Stunden 2 Stunden
🖥️ Inspect tmux console Zeigt das Log des Workers, nicht den Copilot-Bildschirm Zeigt das live laufende Copilot-Terminal (Linux und macOS, mit tmux)
Agent-Tools relay_tool ist ein Tool; für preview wird dem Agent gesagt, wie er die Preview-API des Relays aufruft relay_tool und preview über den MCP-Server von OAR
Relay-Modi Native Plan- und Autopilot-Modi; plan lehnt alles ab, was nicht nur lesend ist, ask fragt vor jeder solchen Aktion Nur eine Anweisung im Prompt
Kompaktierung Die Runtime kompaktiert im Hintergrund bei 80 % des Kontextfensters und blockiert bei 95 % OAR setzt und zeigt nichts
Überwachung hängender Turns Lässt einen Turn nach 120 s Stille fehlschlagen, 300 s während einer Modellanfrage, 30 min während eines Tools Ein Turn ist auf 2 Stunden begrenzt; 45 s Inaktivitätsfenster, während das Relay die CLI für offline hält
Verbrauch Fügt der Copilot-Karte in Check Usage Last SDK worker turn (Letzter Turn des SDK-Workers) hinzu Nur die Kontoanzeigen der Karte

Beide Engines zeigen denselben Verlauf, dieselben Rückfrage-Karten, Plan-Boards, dieselbe Modellliste und Verbrauchszeile pro Antwort. Siehe Turns und die Queue für Steer, Queue (Einreihen) und die Fenster für hängende Turns, Relay-Modi und Kompaktieren für diese Zeilen sowie ask_user für Rückfrage-Karten.

Auf der SDK-Engine beendet Stop nur die Antwort. Hintergrund-Agents, die der Turn gestartet hat, laufen unter ihrem eigenen Stop in der Task-Leiste weiter.

Die Engine wählen #

Die Wahl ist eine Einstellung für das ganze Relay: Settings → Providers → Copilot → Copilot engine (Einstellungen → Provider → Copilot → Copilot-Engine), mit den Optionen Extension (Erweiterung) und SDK — default (SDK — Standard). Drück Save Copilot settings (Copilot-Einstellungen speichern), nachdem du sie geändert hast.

  • Sie gilt für Konversationen, deren Worker danach startet. Eine bereits laufende Session behält ihre Engine, bis ihr Worker neu startet.
  • Hat niemand eine Wahl gespeichert, nutzt das Relay SDK, wann immer es kann, und Extension, wenn nicht. Eine gespeicherte Wahl gewinnt immer. Das gilt auch für ein gespeichertes SDK: Findet ein späterer Neustart die CLI nicht mehr, wechselt das Relay nicht von selbst zurück, und der Worker einer neuen Konversation kann nicht starten, bis die CLI wieder gefunden wird oder du Extension speicherst.
  • Die Einstellungsseite sagt, welche Engine eingestellt ist: New Copilot conversations run on the headless SDK worker. No tmux inspector for these sessions. oder New Copilot conversations run on the Copilot CLI with the web-relay extension.

Welche Engine eine laufende Konversation nutzt, erkennst du an ihrem Eingabebereich und ihrer tmux-Konsole. Während eines Turns heißt der Senden-Button auf der SDK-Engine Steer (dort heißt er Queue, solange eine Rückfrage-Karte oder Freigabe offen ist, der Turn kompaktiert oder ein Tool-Aufruf läuft) und auf der Extension-Engine immer Queue. Die tmux-Konsole zeigt nur auf der Extension-Engine einen Copilot-Bildschirm. Die Konversation selbst trägt keine Engine-Bezeichnung.

Wenn das Speichern von SDK abgelehnt wird #

Das Relay lehnt das Speichern von SDK ab, wenn es SDK nicht ausführen konnte, und zeigt den Grund anstelle der Engine-Beschreibung. Die gespeicherte Einstellung ändert sich nicht, und die Auswahl springt auf die Engine zurück, die das Relay tatsächlich ausführt.

Meldung beginnt mit Was zu tun ist
The Copilot SDK was not found when the relay started (COPILOT_SDK_PATH did not resolve) Das Relay hat keine Runtime der Copilot CLI gefunden. Installiere oder aktualisiere die CLI, führ einmal copilot aus und starte das Relay neu. Siehe Wie OAR die CLI findet.
The SDK engine requires session worker routing, which is disabled on this relay (SESSION_WORKER_ROUTING_ENABLED) Schalte Session worker routing (Session-Worker-Routing) in Settings → Features (Einstellungen → Funktionen) wieder ein (standardmäßig an) und starte das Relay neu.

Einstellungen #

Unter Settings → Providers → Copilot:

Bedienelement Standard Was es tut
GitHub Copilot CLI Eine Statuszeile. Nur lesend: Diese CLI verwaltest du mit npm auf dem Relay-Host.
Copilot engine SDK Welche Engine neue Copilot-Konversationen ausführt. Siehe Die Engine wählen.
Save Copilot settings Speichert die Engine.

Andere Einstellungen, die Copilot-Sessions betreffen, liegen anderswo:

Einstellung Standard Wirkung auf Copilot
Settings → General → Background task timeout (Einstellungen → Allgemein → Timeout für Hintergrund-Tasks) 4 h Wie lange Hintergrund-Agents und abgelöste Shells allein eine Session nach ihrer Antwort weiterlaufen lassen dürfen. Danach werden sie gestoppt. 0 heißt kein Limit; der größte Wert ist 10 h.
Settings → General → Max turn duration (Einstellungen → Allgemein → Maximale Turn-Dauer) 60 min Wie lange ein Turn höchstens laufen darf, bevor das Relay ihn neu einreiht.
Settings → Features → Session worker routing an Die SDK-Engine braucht es. Eine Änderung gilt nach einem Neustart des Relays.

Modelle #

Das Relay liest die Modellliste aus der installierten Runtime der Copilot CLI wenige Sekunden nach dem Start. Jedes Modell zeigt die Reasoning-Efforts und das Kontextfenster, die die Runtime meldet. Die Liste beginnt mit auto und gruppiert die Modelle dann nach Hersteller (OpenAI, Anthropic, Google, xAI, Microsoft, Azure OpenAI, Moonshot AI, dann andere alphabetisch), neueste Version zuerst.

Bis zur ersten Erkennung bietet ein neues Relay gpt-5.4, gpt-5.4-mini (der Standard), gpt-5.3-codex, claude-sonnet-4.6 und claude-haiku-4.5 an.

Mit 🤗 Select Models → Copilot (Modelle auswählen → Copilot) im ⋯-Menü einer Konversation wählst du, welche Modelle im Eingabebereich erscheinen, dann 💾 Save enabled models (Aktivierte Modelle speichern). Refresh (Aktualisieren) liest die Liste erneut. Wirkt die Liste veraltet, drück Refresh.

Verbrauch #

  • Unter einer Antwort zeigt ein Copilot-Turn, was er verbraucht hat: +N für die Credits, mit dem Anteil an deinem Monatsplan in Klammern, und month N% left. Ein stale-Tag heißt, dass die Zahlen für diesen Turn nicht aktualisiert werden konnten. Nur Copilot-Turns bekommen diese Zeile; andere Provider, OpenAI eingeschlossen, verbrauchen keine Copilot-Credits.
  • Im Header summiert eine Session-Zeile die Konversation, zum Beispiel Session: 1.25 AIC used.
  • In Check Usage: Öffne 📊 Check Usage im ⋯-Menü und wähl den Copilot-Tab für das Live-Kontingent (AI-Credits oder Premium-Requests, Chat und Plan). Auf der SDK-Engine kommt Last SDK worker turn hinzu: die Credits, die dieser Turn tatsächlich verbraucht hat, seine Tokens und Modellaufrufe. Das sind die Zahlen eines Turns, keine laufende Summe, und der Abschnitt verschwindet nach sieben Tagen.

Die Copilot-Karte liest dein Konto über gh. Wenn du gh nicht nutzt, setz GH_TOKEN oder GITHUB_TOKEN in der Umgebung des Relays.

Vorhandene Sessions importieren #

Beim Start importiert das Relay die auf dem Host gespeicherten Copilot-Sessions, sodass sie mit ihrem Verlauf in deiner Liste erscheinen. Es liest sie über die installierte Copilot-Runtime. Ist die Runtime nicht verfügbar, wird der Import als fehlgeschlagen gemeldet. Das Relay rät nicht anhand der Dateien.

Eine solche Session zu löschen blendet sie nur aus: Die eigene Session der Copilot CLI bleibt, weil das Relay sie nie ausgeführt hat.

Umgebungsvariablen #

Setz diese in der Umgebung des Relay-Prozesses und starte das Relay dann neu.

Variable Was sie tut
COPILOT_SDK_PATH Das copilot-sdk-Verzeichnis der Runtime der Copilot CLI, statt des neuesten im Paket-Cache
COPILOT_PKG_DIR Ein zusätzlicher Paket-Cache, in dem nach der Runtime gesucht wird
GH_TOKEN, GITHUB_TOKEN Ein GitHub-Token für die Copilot-Karte in Check Usage, statt gh auth token
OAR_MCP_SERVER=0 Den MCP-Server von OAR nicht an die Extension-Engine anhängen; sie bekommt die Preview-Anweisungen als Text und kein Tool relay_tool
COPILOT_REMOTE_SESSION_WORKER_ROUTING_ENABLED=0 Hält Session worker routing fest aus, wodurch die SDK-Engine nicht verfügbar ist

Grenzen #

  • Das Relay braucht einen Neustart, um eine Copilot CLI zu bemerken, die nach seinem Start installiert oder aktualisiert wurde.
  • Auf der SDK-Engine gibt es kein Terminal zum Anhängen.
  • Nachrichten während eines Turns werden auf der Extension-Engine eingereiht; man kann mit ihnen nicht nachsteuern.
  • Auf der SDK-Engine gibt das Relay einem Turn 2 Minuten Stille, wenn nichts läuft, 5 Minuten während einer Modellanfrage und 30 Minuten, während ein Tool läuft, bevor es den Turn fehlschlagen lässt. Ein Turn, der auf eine Rückfrage-Karte wartet, gilt nie als hängend. Die Fenster stehen in Turns und die Queue.
  • Eine OpenAI-Konversation mit deinem eigenen Key nutzt diese Engines ebenfalls, verbraucht aber deinen Key, daher tragen ihre Turns keine Copilot-Verbrauchszeile.

Wenn es nicht funktioniert #

Was passiert Warum, und was zu tun ist
Copilot startet nicht, oder die SDK-Engine wird mit COPILOT_SDK_PATH did not resolve abgelehnt Beim Start wurde keine Runtime der Copilot CLI gefunden. Installiere oder aktualisiere die CLI, führ einmal copilot aus, starte das Relay neu.
Auf der SDK-Engine sagt die Antwort, die Copilot-Runtime konnte sich nicht authentifizieren Führ copilot auf dem Relay-Host aus, melde dich an und sende die Nachricht erneut.
Neue Konversationen laufen auf Extension, obwohl du SDK wolltest Niemand hat eine Wahl gespeichert und das Relay kann SDK nicht ausführen, oder du hast Extension gespeichert. Setz Copilot engine auf SDK und speichere; die Ablehnungsmeldung nennt die Ursache, falls es eine gibt.
Eine laufende Konversation hat die Engine nicht gewechselt Die Engine wird gelesen, wenn ihr Worker startet. ☠️ Kill session (Session beenden) im ⋯-Menü stoppt den Worker; die nächste Nachricht startet ihn auf der aktuellen Engine.
Die Antwort sagt, GitHub Copilot hat für dieses Abrechnungsfenster keine AI-Credits mehr Der Plan ist aufgebraucht. Öffne Check Usage für die Reset-Zeit und versuch es danach erneut, oder wechsle die Konversation zu einem anderen Provider. Das Relay versucht es hier nicht erneut.
oar copilot sagt, die GitHub CLI fehlt Es führt gh copilot aus. Installiere die GitHub CLI oder starte nur das Relay.
Die Modellliste ist veraltet oder falsch 🤗 Select Models → Refresh.
Keine Verbrauchszeile unter einer Antwort Nur Copilot-Turns erfassen sie.
🖥️ Inspect tmux console zeigt Log-Zeilen statt eines Copilot-Bildschirms Die Konversation läuft auf der SDK-Engine.

Agent-Sessions, Relay-Modi und anderes Verhalten, das nicht von der Engine abhängt, funktionieren wie auf den Seiten zu Sessions und Agents im Zusammenspiel beschrieben.