Verbinde Slack mit einem Projekt, und eine Nachricht in einem Thread startet eine Sitzung. Der Agent übernimmt seinen eigenen Cloud-Computer, erledigt die Arbeit und antwortet im selben Thread. Niemand muss ein neues Tool öffnen, um etwas anzufordern.
Einen Änderungsantrag gegen main öffnen?
launch-note.md · +64 −0
A channel is a chat platform bound to a project — a closed set of three, not an open field. Here is the real state of each one, including the parts a marketing page usually leaves out.
Standardmäßig aktiviert, ohne Flag. Über das Dashboard oder die CLI verbinden, den Bot in einen Channel einladen und erwähnen. Alles andere auf dieser Seite beschreibt Slack.
Für jedes Projekt aktiv, ohne Flag. Ein Tenant-Admin stimmt einmal zu, oder ein Projekt bringt seine eigene Bot-App mit. Dieselben Sitzungen, dieselben Identitätsregeln wie bei Slack.
Ein Projekt-Posteingang: Eine Nachricht an eine Adresse startet eine Sitzung, und eine Antwort setzt sie fort. Unter Customize → Feature flags pro Projekt aktivieren. Echt, aber noch nicht fertig.
Telegram, WhatsApp, SMS und Discord sind keine Channels. Diese Seite wird nicht andeuten, dass sie auf einer Roadmap stehen, die sie nicht versprechen kann. Es gibt außerdem keine API zum Erstellen eigener Channels — die Plattformliste ist ein geschlossenes Enum. Stattdessen gibt es einen signierten Webhook-Trigger, und wir nennen lieber seine Grenzen, als dir das Wort „extensible“ zu verkaufen.
Die ehrliche Alternative →Die erste Nachricht in einem Thread erstellt eine Sitzung. Jede spätere Nachricht in diesem Thread erreicht dieselbe Sitzung — auch nachdem die Sandbox über Nacht gestoppt wurde oder die Person, die sie gestartet hat, nach Hause gegangen ist. Diese Zuordnung ist ein eindeutiger Index in der Datenbank, keine Konvention, auf deren Einhaltung sich zwei Services einigen.
Einen Änderungsantrag gegen main öffnen?
launch-note.md · +64 −0
In einem Channel, in den er eingeladen wurde, oder per Direktnachricht. Eine bloße Erwähnung ohne Aufgabe erhält eine Erinnerung, eine Aufgabe hinzuzufügen, statt eine Sitzung zu starten, die niemand angefordert hat.
Kortix erstellt einen Branch und startet seinen eigenen isolierten Cloud-Computer — genau wie bei einer Sitzung, die über das Dashboard oder die CLI gestartet wurde. Du erhältst eine Reaktion auf deine eigene Nachricht, keinen Bot-Beitrag mit „bin dabei“.
Er verfügt über eine Shell, ein Dateisystem, das Netzwerk sowie die Connectoren und Secrets, die sein Agent-Block gewährt. Der Thread ist der Ort zum Beobachten. Auf der Maschine findet die Arbeit statt.
Die Antwort wird in die Nachricht gestreamt, mit der die Sitzung gestartet wurde — in dem Thread, in dem die Frage gestellt wurde. Zwei Personen können zuschauen. Keine von beiden musste etwas öffnen.
Zwei Ereignisse für denselben brandneuen Thread, die gleichzeitig eintreffen, erzeugen keine zwei Sitzungen: Das zweite reiht sich als Follow-up in das erste ein. Ein Slack-Workspace, der an mehr als ein Projekt gebunden ist, zeigt bei der ersten Erwähnung eine Projektauswahl, statt zu raten.
Auf einem Host mit konfigurierter gemeinsamer Slack-App gibt kortix channels connect einen Installationslink aus, und in drei Klicks bist du fertig. Bei einer Bereitstellung ohne gemeinsame App wechselt derselbe Befehl automatisch in den manuellen Modus und liefert dir ein App-Manifest zum Einfügen.
# verwaltet: Installationslink öffnen, dann den Workspace auswählen$ kortix channels connect --wait→ verbunden: Slack-Workspace acme-hq # Self-Hosting? Derselbe Befehl wechselt in den manuellen Modus$ kortix channels manifest > slack-app.json$ kortix channels connect --manual \--bot-token xoxb-... --signing-secret ... # prüfen oder Verbindung trennen$ kortix channels status$ kortix channels disconnectEin Kanal lohnt sich nur, wenn die Antwort dort ankommt, wo die Frage gestellt wurde. Dateien gehen in beide Richtungen, und Entscheidungen, die ein Agent von dir braucht, erscheinen als Schaltflächen im Thread statt als Link an einen anderen Ort.
Die Antwort erscheint als eine Nachricht im Thread, die nach und nach ausgefüllt wird, nicht als Wand aus Aktualisierungen. Der Agent finalisiert diese Nachricht, statt darunter eine zweite zu posten.
Eine im Thread abgelegte Datei wird auf den Cloud-Computer des Agenten übertragen. Eine vom Agenten erzeugte Datei wird in denselben Thread hochgeladen. Das Deck landet dort, wo du es angefordert hast.
Wenn der Agent eine Entscheidung braucht, veröffentlicht er eine Karte mit Schaltflächen, statt einen Durchlauf für immer zu blockieren. Dein Klick ist das Urteil, und die Sitzung wird im selben Thread fortgesetzt.
Eine ehrliche Einschränkung: Die Karte enthält die Entscheidung und einen Link zurück zu Kortix. Den tatsächlichen Diff einer Änderungsanfrage liest du in der Web-App, wo ein Diff hingehört – Slack ist kein Code-Review-Tool, und wir tun nicht so, als wäre es eines.
Gib diese Befehle in Slack als /kortix <command> ein oder als normalen Text in einer Direktnachricht. Vieles, wofür du sonst das Dashboard öffnen würdest, ist im Kanal eine einzige Zeile.
Eine Slack-Nachricht erhält keine Berechtigungen, die eine Sitzung im Dashboard nicht hätte. Die Oberfläche ändert sich. Darunter ändert sich nichts.
Es gibt keine API zum Erstellen eigener Kanäle – die Plattformliste ist ein geschlossenes Enum, und wir werden eine Lücke nicht als Plug-in-System tarnen. Was ausgeliefert wird, ist ein signierter Webhook-Trigger, der pro Unterhaltung eine Sitzung startet. Die eingehende Hälfte funktioniert damit gut, und wir sagen dir genau, was er nicht kann.
# jede Gesprächsquelle ohne kanalspezifischen Codetriggers:- slug: support-inbox type: webhook agent: support secret_env: WEBHOOK_SECRET # eine Sitzung pro Unterhaltung, nicht pro Nachricht session_mode: keyed session_key: "{{ body.data.conversation_id }}" # ausgehende Nachrichten des Agenten ignorieren filter: "body.data.direction": "inbound" prompt: "{{ body.data.text }}"Eine Sitzung pro Unterhaltung. session_key wird aus der Payload erzeugt, sodass ein einzelner Trigger eine Sitzung pro Chat, Kunde oder Repository startet – getrennte Threads statt eines vermischten Protokolls.
Eine Quelle, die beide Seiten einer Unterhaltung meldet, würde den Agenten sonst bei seiner eigenen Antwort auslösen. filter verwirft diese Zustellungen mit 200 und ohne Sitzung. Signiert mit HMAC-SHA256, wie jeder Kortix-Webhook.
Kein Antwort-Relay. Ein echter Kanal streamt die Antwort für dich zurück; hier muss der Agent die ausgehende Nachricht selbst über einen von dir freigegebenen Connector senden. Eingehend ist gelöst. Ausgehend musst du selbst verdrahten.
Beginne mit einer Aufgabe und wachse von dort aus.