Skip to main content

Encontre seus usuários onde eles já estão

O agente CrewAI que você construiu na Visão geral não precisa viver por trás de um web app. O mesmo Crew ou Flow pode rodar como um bot dentro de uma plataforma de mensagens. Sem reconstruir, sem uma segunda cópia da lógica do seu agente: o agente permanece exposto pelo protocolo AG-UI, e um channel o aciona a partir do Slack ou do Microsoft Teams. O Channels SDK do CopilotKit fornece esse channel. Você declara um createChannel em um pequeno runtime, aponta-o para o seu agente CrewAI, e a plataforma gerenciada Intelligence do CopilotKit intermedia a conexão com o provedor de mensagens.
Diferentemente do restante desta seção, Channels não é self-hosted. Ele roda através do CopilotKit Intelligence — uma superfície obrigatória para Channels, por design (há um plano gratuito disponível). O Intelligence detém a conexão com a plataforma e as credenciais, recebe cada evento da plataforma e entrega o turno ao processo do seu channel; seu processo executa o agente e transmite a resposta de volta. Você configura o Slack uma vez no painel do Intelligence, e as credenciais da plataforma nunca entram no seu processo. Seu agente, suas tools e seu estado continuam sendo seus.

Como tudo se encaixa

Nada muda no servidor do seu agente CrewAI. Ele continua servindo o seu Crew ou Flow por AG-UI exatamente como na Visão geral. O que você adiciona é um processo Node separado, de longa duração, construído com @copilotkit/channels: ele registra um channel no CopilotRuntime, conecta-se ao Intelligence e executa o seu agente sempre que chega uma mensagem.
O processo do channel mantém uma conexão persistente com o gateway do Intelligence, então ele precisa de um host de longa duração — um handler de requisições serverless não consegue ser dono dessa conexão. Seu servidor CrewAI pode continuar servindo o frontend web da Visão geral ao mesmo tempo: o web app e o channel são apenas dois clientes de um único endpoint AG-UI.

Guia de integração

1

Instale os pacotes do Channels

O Channels SDK vem com tudo incluído — cada plataforma é entregue no mesmo pacote, sem nenhum adaptador por plataforma para instalar. Adicione-o junto ao runtime que hospeda o channel e ao cliente AG-UI do CrewAI:
2

Crie um Channel no Intelligence

No painel do CopilotKit, crie um Channel e conecte o Slack — o Intelligence guia você na criação do app do Slack e detém suas credenciais. Isso deixa duas variáveis de ambiente para o seu processo, ambas vindas do painel:
3

Defina o channel

createChannel declara o channel e anexa o seu agente. Construa o agente como uma factory por thread, para que cada conversa ganhe sua própria sessão, usando o mesmo CrewAIAgent que a Visão geral usa no runtime web, apontado para o seu endpoint AG-UI. identifyUser: "platform" permite que o Intelligence mapeie cada usuário da plataforma para uma identidade estável.
4

Registre o channel no runtime

Crie um CopilotRuntime com o gateway do Intelligence e o seu channel, e então sirva-o com createCopilotNodeListener. O mapa agents permanece vazio — o channel fornece seu próprio agente. Aguarde o channel ficar pronto, para que uma configuração quebrada faça a inicialização falhar de forma visível.
5

Execute o runtime do channel

Inicie-o junto ao servidor do seu agente CrewAI:
Mencione o bot no Slack ou no Teams e ele executa o seu Crew ou Flow, transmitindo a resposta de volta para a thread. A thread permanece inscrita, então mensagens de acompanhamento rodam sem outra menção.

O modelo de eventos

Um channel reage a eventos da plataforma com handlers, e cada handler recebe uma thread que você aciona com alguns métodos:
  • channel.onMention dispara quando um usuário @-menciona o bot. Chame thread.subscribe() para entrar na thread, e então thread.runAgent() para executar o seu agente CrewAI na menção.
  • channel.onMessage dispara em cada mensagem de uma thread que o bot consegue ver. Restrinja com thread.isSubscribed() para que o agente só responda onde tiver entrado, e então thread.runAgent().
  • thread.runAgent() executa o agente CrewAI anexado para o turno atual e transmite a saída dele de volta para o channel. Passe { prompt } para sobrescrever o texto sobre o qual o agente roda.
Seu agente recebe um RunAgentInput comum do AG-UI e emite eventos comuns do AG-UI; as mecânicas da plataforma ficam por trás do channel, então o mesmo Crew ou Flow roda sem alterações em todas as plataformas. O channel também expõe handlers para boas-vindas, interrupções, comandos, reações e modais — consulte a referência de Channel para conhecer toda a superfície.

Suporte a plataformas

O caminho gerenciado do Intelligence cobre Slack e Microsoft Teams hoje — o mesmo código de channel roda em qualquer um dos dois, e message.platform / thread.platform reportam a origem nativa. Outras plataformas (Discord, Telegram, WhatsApp) são alcançadas através de adaptadores diretos operados pelo desenvolvedor, em vez do caminho gerenciado — o seu próprio processo detém as credenciais da plataforma e o transporte. Consulte a documentação de Channels do CopilotKit para a lista atual de plataformas e a configuração por plataforma.

Relacionados

Visão geral do Frontend

Sirva o seu Crew ou Flow por AG-UI — a base sobre a qual todo channel é construído.

Human-in-the-Loop

Pause o agente para coletar aprovação ou input do usuário no meio da execução.