Un bot Slack per un agente di coding trasforma un messaggio in Slack in una richiesta per Claude Code o Codex in esecuzione sulla macchina di qualcuno e pubblica il risultato nel thread. muti assegna a ciascun agente il proprio bot con il proprio nome. Le persone nel tuo workspace gli scrivono in DM o lo menzionano in un canale; quel messaggio diventa l'attività. Se chi fa la richiesta non è il proprietario dell'agente, la richiesta rimane in attesa e il proprietario la approva tramite pulsanti nel proprio DM. Push, eliminazioni distruttive, operazioni a pagamento e accesso alle credenziali non diventano mai automatici, per nessuno.
Questo articolo spiega come funziona il connettore, cosa memorizza effettivamente “Allow always” e perché trattare Slack come input non attendibile è il punto fondamentale.
Cosa sbaglia la maggior parte dei bridge
Il tipico bridge memorizza un token bot, rimane in ascolto delle menzioni e invia il testo a una CLI locale. Funziona, ma presenta tre problemi: l'appartenenza al canale diventa il modello dei permessi, nessuno approva i passaggi rischiosi e lo stato di avanzamento inonda il canale con un messaggio per ogni chiamata di tool. Nessuno di questi è un problema di Slack. Sono problemi di permessi che casualmente emergono su Slack.
Il thread di un canale mostra la richiesta e il suo stato; i pulsanti di approvazione si trovano nel DM del proprietario; l'agente è in esecuzione sulla macchina del proprietario.
Un bot per agente
Crei l'app Slack a partire da un manifest generato da muti per quell'agente, così il bot porta il nome dell'agente e i suoi URL per gli eventi. Non c'è nulla da collegare né comandi da imparare:
- Scrivi in DM al bot e il testo diventa un'attività. Il DM diventa una stanza condivisa tra te e il proprietario dell'agente.
- Menzionalo in un canale e quel canale diventa una stanza di gruppo in muti al primo utilizzo. Il bot risponde nel thread.
- Allega file e arriveranno come allegati della stanza leggibili dall'agente, come gli upload via web.
Gli utenti Slack diventano utenti muti tramite l'email associata su Slack, verificata da Slack all'interno del workspace del proprietario. Se Slack nasconde l'email, il bot invia un codice di collegamento a sei cifre da riscattare una sola volta sul web. In ogni caso, i permessi sono associati all'account, non a un nome visualizzato.
Lo stesso gate del web
Ogni richiesta passa attraverso lo stesso gate utilizzato dal web. I messaggi del proprietario vengono eseguiti all'istante. Chiunque altro attende il proprietario, a meno che il proprietario non gli abbia già accordato l'autorizzazione permanente per questo agente. Lo stato viene mostrato nel thread: accettato con un id di richiesta, in attesa, in esecuzione con i riepiloghi delle chiamate ai tool, completato con il risultato. Una singola card, aggiornata sul posto, invece di un messaggio per ogni passaggio.
Pulsanti di approvazione e il significato di “always”
Quando arriva una richiesta da qualcun altro, o quando un'esecuzione raggiunge una chiamata di tool che richiede l'intervento umano, il proprietario riceve una card nel proprio DM con tre pulsanti: Allow, Allow always, Deny.
Allow vale per quella singola chiamata. Allow always memorizza una regola per l'agente con lo stesso identico livello di granularità della chiamata: questo dominio per WebFetch, questo prefisso di comando per Bash, questa skill per nome, questo tool di sola lettura. Le chiamate future corrispondenti ricevono risposta da muti senza mostrare alcun prompt. Le regole sono elencate e revocabili nella finestra di dialogo dell'agente.
Le chiamate appartenenti a categorie pericolose non sono mai idonee per una regola e non ne soddisfano mai una: push su branch condivisi, eliminazioni distruttive, escalation dei privilegi, pubblicazioni e deploy, e letture o scritture di percorsi contenenti credenziali. Rimangono autorizzabili solo una chiamata alla volta, esclusivamente con Allow e Deny. Questa è la versione del connettore delle quattro azioni che chiedono sempre conferma. Le approvazioni senza risposta scadono dopo 24 ore, proprio come le richieste.
Cosa vede il canale
Testo della richiesta, stato e id; riepiloghi delle chiamate ai tool; percorsi del diff e conteggio delle righe; la parte finale dell'output dei comandi; file prodotti e link. Mai: variabili d'ambiente, file di chiavi, il working tree o qualsiasi elemento proveniente da un'altra stanza. I token di Slack vengono memorizzati cifrati in muti; nulla relativo a Slack risiede sulla macchina del proprietario, che mantiene la sua connessione daemon solo in uscita. Vedi cosa carica il daemon.
Configurazione
- Nella console, apri Slack per l'agente che vuoi esporre e crea un'app Slack a partire dal manifest generato. Se vuoi, carica l'avatar dell'agente come icona dell'app; la procedura guidata lo mostra in anteprima.
- Incolla le due stringhe dalle impostazioni dell'app. muti effettua una singola chiamata a Slack, ti individua tramite email e ti collega come proprietario, rendendo i pulsanti di approvazione operativi fin da subito.
- Installa l'app nel tuo workspace. Scrivi al bot in DM, oppure invitalo in un canale e menzionalo.
- Approva la prima richiesta di un collega nel tuo DM. Usa Allow always solo per le chiamate circoscritte e di routine; lascia che quelle pericolose chiedano conferma.
Domande frequenti
Il bot richiede l'intervento dell'amministratore di Slack? L'installazione di un'app in un workspace richiede in genere un'approvazione dell'amministratore. L'app è tua, creata a partire dal manifest di muti, quindi nessuna app di terze parti possiede il token del tuo workspace.
I membri del canale possono approvare le richieste per se stessi? No. L'approvazione spetta al proprietario dell'agente e arriva nel suo DM. I membri possono annullare o aggiungere contesto.
E per quanto riguarda Feishu, Lark e DingTalk? Feishu/Lark sarà il prossimo e seguirà lo stesso modello di stanze e approvazioni; vedi il design di Feishu. DingTalk arriverà subito dopo.
È la stessa cosa di Claude Code Dispatch? Dispatch inoltra i tuoi messaggi Telegram alla tua sessione personale. Questo connettore è pensato per le altre persone, con tanto di approvazioni; vedi Dispatch a confronto con una stanza.
La stanza si occupa della gestione dei permessi; Slack è solo una porta d'accesso in più. Assegna una stanza al tuo agente.
Pubblicato il · Aggiornato il