Pular para o conteúdo principal
Os triggers da CrewAI AMP conectam suas automações a eventos em tempo real nas ferramentas que sua equipe já usa. Em vez de fazer polling ou depender de execuções manuais, os triggers escutam mudanças — novos e‑mails, atualizações de calendário, alterações no CRM — e iniciam imediatamente a crew ou flow que você definiu.

Playbooks de Integração

Os guias abaixo explicam, em detalhe, como habilitar e testar cada integração:

Capacidades dos Triggers

Com triggers você pode:
  • Responder em tempo real – Executar workflows automaticamente quando condições forem atendidas
  • Integrar com sistemas externos – Conectar Gmail, Outlook, OneDrive, JIRA, Slack, Stripe e muito mais
  • Escalar automações – Lidar com alto volume de eventos sem intervenção manual
  • Manter contexto – Acessar dados do trigger dentro das suas crews e flows

Gerenciando Triggers

Visualizando Triggers Disponíveis

  1. Abra sua automação no painel da CrewAI
  2. Clique na aba Triggers para listar todas as integrações disponíveis
Lista de triggers disponíveis

Habilitando e Desabilitando

Cada trigger possui uma chave de ativação:
Alternância de trigger habilitado
  • Habilitado (azul) – Executa a automação quando o evento ocorrer
  • Desabilitado (cinza) – Ignora eventos
As alterações são aplicadas imediatamente.

Monitorando Execuções

Use a lista de execuções para acompanhar histórico, status e payloads:
Lista de execuções acionadas por triggers

Construindo Automações Orientadas por Trigger

Checklist de Configuração

Antes de ativar em produção, confirme que você:
  • Conectou a integração em Tools & Integrations e concluiu OAuth ou configuração de API
  • Habilitou o trigger na automação correta
  • Definiu variáveis de ambiente necessárias (tokens, IDs de tenant, segredos)
  • Criou tarefas que analisam o payload no primeiro passo da crew/flow
  • Decidiu se usará allow_crewai_trigger_context para injetar contexto automaticamente
  • Configurou monitoramento (webhooks, históricos da CrewAI, alertas externos)

Repositório de Payloads e Crews de Exemplo

IntegraçãoQuando disparaAmostras de payloadCrews de exemplo
GmailNovas mensagens, atualização de threadsPayloads de alertas e threadsnew-email-crew.py, gmail-alert-crew.py
Google CalendarEvento criado/atualizado/iniciado/encerrado/canceladoPayloads de eventoscalendar-event-crew.py, calendar-meeting-crew.py, calendar-working-location-crew.py
Google DriveArquivo criado/atualizado/excluídoPayloads de arquivosdrive-file-crew.py, drive-file-deletion-crew.py
OutlookNovo e‑mail, evento removidoPayloads do Outlookoutlook-message-crew.py, outlook-event-removal-crew.py
OneDriveOperações de arquivo (criar, atualizar, compartilhar, excluir)Payloads do OneDriveonedrive-file-crew.py
HubSpotRegistros criados/atualizados (contatos, empresas, negócios)Payloads do HubSpothubspot-company-crew.py, hubspot-contact-crew.py, hubspot-record-crew.py
Microsoft TeamsChat criadoPayload do Teamsteams-chat-created-crew.py
Use essas amostras para ajustar o parsing, copiar a crew correspondente e substituir o payload de teste pelo dado real.

Triggers com Crews

Suas definições de crew funcionam naturalmente com triggers; basta ter uma tarefa que processe o payload recebido:
@CrewBase
class MinhaCrewAutomatizada:
    @agent
    def pesquisador(self) -> Agent:
        return Agent(
            config=self.agents_config['pesquisador'],
        )

    @task
    def analisar_payload_trigger(self) -> Task:
        return Task(
            config=self.tasks_config['analisar_payload_trigger'],
            agent=self.pesquisador(),
        )

    @task
    def analisar_conteudo_trigger(self) -> Task:
        return Task(
            config=self.tasks_config['analisar_dados_trigger'],
            agent=self.pesquisador(),
        )

Integração com Flows

Flows oferecem controle adicional sobre o uso do payload:

Acessando o Payload

Todos os métodos @start() podem receber crewai_trigger_payload:
from crewai.flow import Flow, start, listen

class MeuFlowAutomatizado(Flow):
    @start()
    def lidar_com_trigger(self, crewai_trigger_payload: dict = None):
        if crewai_trigger_payload:
            trigger_id = crewai_trigger_payload.get('id')
            dados_evento = crewai_trigger_payload.get('payload', {})
            self.state.trigger_id = trigger_id
            self.state.trigger_type = dados_evento
            return dados_evento
        return None

    @listen(lidar_com_trigger)
    def processar_dados(self, dados_trigger):
        # ... processa o trigger

Acionando Crews a partir de Flows

@start()
def delegar_para_crew(self, crewai_trigger_payload: dict = None):
    crew = MinhaCrewEspecializada()
    resultado = crew.crew().kickoff(
        inputs={
            'parametro_personalizado': "valor_personalizado",
            'crewai_trigger_payload': crewai_trigger_payload
        },
    )
    return resultado

Solução de Problemas

Trigger não dispara:
  • Verifique se está habilitado
  • Confira o status da conexão
Falhas de execução:
  • Consulte os logs para entender o erro
  • Durante o desenvolvimento, garanta que crewai_trigger_payload está presente com o payload correto
Os triggers transformam suas implantações CrewAI em sistemas orientados por eventos, integrando-se perfeitamente aos processos e ferramentas já usados pelo seu time.
I