Betrieb & Deployment
covey ist bewusst langweilig zu betreiben: ein Prozess, eine Datenbank, ein Port. Alles, was darüber hinausgeht, ist optional.
Was läuft
- covey — die Control Plane, hört auf 8494 (API, Oberfläche, Daemon-WebSocket)
- PostgreSQL mit
pgvector— Zustand, Queue, Gedächtnis, Secrets - Docker — für die Sandboxen, gestartet über den Socket des Hosts
- optional covey-runner — wenn die Data Plane auf mehrere Maschinen soll
Migrationen laufen beim Start automatisch, abgesichert über ein Advisory Lock; zwei gleichzeitig startende Instanzen migrieren nicht gegeneinander.
Die Adressen auseinanderhalten
Zwei Variablen sehen ähnlich aus und meinen Gegenteiliges:
COVEY_PUBLIC_URLzeigt nach innen — unter dieser Adresse erreichen die Sandboxen die Control Plane. Steht hier die Domain der Website, wählen die Container über das offene Netz zurück und scheitern an der Egress-Allowlist.COVEY_SITE_URLzeigt nach außen — die kopierbaren Webhook- und Trigger-URLs, die Adresse im herunterladbaren Skill, die Links in den Mails der Installation. Leer lassen ist der Normalfall; der Server leitet sie aus dem Request ab. Die Einstellungsite.url(Plattform → Einstellungen) sagt dasselbe aus dem Produkt heraus und hat Vorrang — die Benachrichtigungsmails werden aus einer Schleife ohne Request verschickt und brauchen eine der beiden.
Beim Start warnt covey, wenn diese beiden Rollen vertauscht aussehen.
HTTPS
Ein Reverse-Proxy davor, TLS dort terminieren, COVEY_PUBLIC_URL beziehungsweise COVEY_SITE_URL passend setzen. Das sichere Cookie schaltet sich dann von selbst ein. Für die Datenbank sslmode=require oder höher.
Egress-Isolation
Zwei Stufen. Kooperativ: Der Datenverkehr der Sandbox läuft über einen Proxy, der die Allowlist durchsetzt. Hart (COVEY_EGRESS_ISOLATION=network): Die Sandbox hängt in einem internen Netz ohne Internet, und der Proxy-Container ist der einzige Weg hinaus — nicht mehr umgehbar. Für die harte Stufe wird ein zweites Image gebaut.
Sicherungen
Zwei Dinge: die Postgres-Datenbank und der COVEY_MASTER_KEY. Ohne den Schlüssel ist ein Datenbank-Backup zwar vollständig, aber jedes Secret darin unlesbar. Die Homes der Agenten (COVEY_DATA_DIR) sind nützlich, aber wiederherstellbar — sie enthalten Arbeitsstände, keinen unersetzlichen Zustand.
Updates
Neues Binary oder neues Image, Prozess neu starten; die Migrationen laufen mit. Nach einem Update lohnt ein Blick mit
covey config lint
Das ändert nichts, sondern meldet Konfigurationen, die mit der neuen Fassung nicht mehr gut zusammengehen: zu kurze Heartbeat-Takte, blockierende Aufgaben an Systemen ohne Webhook, Boards mit Spalten, die Aufgaben statt Zuständen benennen, häufige Turn-Abbrüche. Der Exit-Code ist 1, wenn es Befunde gibt — ein Upgrade-Skript kann darauf reagieren.
Beobachten
covey version beantwortet, welcher Stand läuft; dieselbe Angabe steht in der Startzeile und unten in der Oberfläche. Kosten, Tokens und Läufe stehen in der Oberfläche je Agent und je Modell. Das Request-Log zeigt die HTTP-Ränder — was hereinkam, was hinausging.
Weiter
- Schnellstart (Docker) — die Installation
- Architektur-Überblick — warum die Sandbox ein Geschwister-Container ist
- Guard-Rails & Kontrolle — Not-Aus und Aufzeichnung
Häufige Fragen
Wie viel Arbeitsspeicher braucht ein covey-Server?
Die Control Plane selbst ist genügsam — ein Go-Prozess neben Postgres. Der Bedarf entsteht in den Sandboxen: Jede läuft mit einer Node-Runtime, bei Browser-Aufgaben zusätzlich mit chromium. Planen Sie nach gleichzeitig wachen Agenten, nicht nach der Anzahl angelegter.
Kann ich covey hinter einen Reverse-Proxy stellen?
Ja, das ist der vorgesehene Weg für HTTPS. Wichtig ist nur, COVEY_PUBLIC_URL nicht auf die öffentliche Domain zu setzen, wenn die Sandboxen sie nicht erreichen — diese Variable zeigt nach innen.
Wie aktualisiere ich ohne Datenverlust?
Binary oder Image tauschen und neu starten; die Migrationen laufen beim Start und sind gegen parallele Starts abgesichert. Vorher die Datenbank sichern, den Master-Key ohnehin aufbewahren. Danach covey config lint laufen lassen.
Läuft covey auch ohne Internetzugang?
Die Plattform ja. Die Agenten brauchen den Modell-Endpunkt — bei harter Egress-Isolation steht der Proxy davor und lässt genau die erlaubten Hosts durch. Ein selbst betriebener Einbettungsdienst hält zusätzlich die Wiki-Suche im Haus.