Archyl-Bot pro Kanal beschränken: der richtige Raum, die richtigen Projekte

Als wir Archyl im Juni in Slack und Teams gebracht haben, antwortete der Bot zu jedem Projekt deiner Organisation, in jedem Kanal. Für ein kleines Team ist das der richtige Standard. Für einen Workspace mit einem Payments-Team, einem Lending-Team und einem Platform-Team bedeutet es: Jemand in #payments fragt „Was hängt vom Ledger ab?", bekommt eine Antwort über den Ledger der Lending-Plattform, im falschen Raum, und niemand merkt es, bis eine Entscheidung darauf aufbaut.

Ab heute kannst du einen Kanal auf das beschränken, was er sehen soll. Ein Admin beschränkt einen Slack-Kanal oder eine Teams-Unterhaltung auf ein oder mehrere Teams oder auf eine explizite Liste von Projekten. Alles andere in der Organisation bleibt für diesen Kanal unsichtbar. Kanäle, die du nicht beschränkt hast, behalten den organisationsweiten Standard.

#payments auf das Payments-Team beschränken

Angenommen, das Payments-Team besitzt drei Projekte: Checkout, Billing und PaymentService. Öffne in Archyl Organisation → Bot → Kanal-Geltungsbereich und klicke auf Kanal beschränken. Drei Schritte:

  1. Was der Kanal sieht. Wähle das Payments-Team. Oder wähle Projekte einzeln aus, wenn der Kanal keinem Team entspricht.
  2. Welcher Kanal. Wähle Slack oder Teams und gib einen Namen für die Liste ein, #payments. Klicke auf Befehl abrufen.
  3. Fügen Sie dies in #payments ein. Archyl zeigt einen Befehl. Sende ihn im Kanal:
@Archyl scope K7Q4M2PX

Der Bot bestätigt im Kanal mit dem angewendeten Geltungsbereich und den Projekten, zu denen er aufgelöst wurde:

✅ This channel is now scoped to team "Payments" — Billing, Checkout, PaymentService.

Der Kanal erscheint in Archyls Liste, sobald der Code angewendet ist, ohne dass die Seite neu geladen werden muss. Von da an antwortet #payments zu diesen drei Projekten und zu nichts anderem. Frag ihn nach der Lending-Plattform, und er hat nichts, woraus er antworten könnte: Das Projekt ist nicht in seinem Kontext, und die Tools weigern sich, es abzurufen.

Weil der Geltungsbereich ein Team ist und keine Liste von Projekt-IDs, folgt er dem Team. Wenn Payments im nächsten Quartal ein viertes Projekt übernimmt, deckt der Kanal es ab, sobald das nächste Mal jemand fragt. Die Bindung wird zum Zeitpunkt der Antwort aufgelöst, nicht beim Anlegen kopiert.

Warum ein Code und kein Button

Der Bot antwortet mit den Berechtigungen des Admins, der ihn verbunden hat, und er kann nicht erkennen, wer in einem Kanal tippt. Ein Slash-Befehl, den jeder ausführen könnte, würde jedem Mitglied des Kanals erlauben, das, was der Bot preisgibt, zu erweitern oder einzuschränken. Deshalb beginnt die Beschränkung in Archyl: Der Code wird von einem Organisations-Admin erzeugt, ist 15 Minuten gültig und funktioniert genau einmal.

Ihn im Kanal einzufügen ist das, was Archyl sagt, welchen Kanal du gemeint hast, denn der Bot kann auch keine Kanalnamen lesen. Der Name, den du in Schritt 2 eingegeben hast, ist eine Bezeichnung für die Liste. Die Bindung selbst gilt für den Kanal, in dem du den Befehl einfügst.

Durchgesetzt auf der Tool-Ebene, nicht im Prompt

Ein beschränkter Kanal bekommt zwar einen engeren System-Prompt, der die Projekte nennt, über die er sprechen darf. Das ist eine Lenkung, und eine Lenkung ist keine Grenze. Die Grenze sitzt tiefer.

Jeder Aufruf, den der Bot an Archyls MCP-Server macht, trägt die Projekt-Allow-List des Kanals, und der Server wendet sie auf jeden Aufruf an. Ein Tool, das nach einem Element per ID gefragt wird, schlägt nach, in welchem Projekt dieses Element liegt, und verweigert die Antwort, wenn es außerhalb des Geltungsbereichs liegt. Listen-Tools filtern ihre Ergebnisse auf dieselbe Weise. Im Direktmodus, in dem der Bot aus einem Kontextpaket antwortet statt Tools aufzurufen, engt dieselbe Allow-List das Paket ein. Den Container eines anderen Projekts über seine ID abzufragen funktioniert nicht, weil die Verweigerung stattfindet, bevor irgendwelche Daten gelesen werden.

Zwei Konsequenzen, die man kennen sollte:

  • ADRs, Dokumentation und API-Verträge auf Organisationsebene bleiben sichtbar in einem beschränkten Kanal. Sie gehören der Organisation, nicht einem Projekt, deshalb greift der Projektfilter bei ihnen nicht.
  • Der Geltungsbereich verhält sich fail-closed. Ein Kanal, der an ein Team ohne Projekte gebunden ist, antwortet nichts und sagt das auch, statt stillschweigend auf die ganze Organisation zurückzufallen.

Wieder erweitern

Klicke in Archyls Liste neben dem Kanal auf Aufheben. Bei der nächsten Frage kehrt der Kanal zum organisationsweiten Standard zurück.

Verfügbarkeit

Der Slack- und Teams-Bot ist Teil der Business-, Scale- und Custom-Pläne, und die Kanal-Beschränkung kommt mit ihm. Die vollständige Anleitung steht in der Dokumentation unter Einen Kanal auf ein Team oder Projekte beschränken.

Wenn dein Bot bereits in einem gemeinsamen Workspace lebt, ist der erste Kanal, den du beschränken solltest, der, in dem die falsche Antwort am teuersten wäre. Für die meisten Teams ist das der mit „payments" im Namen.