triggerdotdev/trigger-tasks

Construye agentes de IA, flujos de trabajo y tareas de fondo duraderas con Trigger.dev. Úsalo al crear tareas, activar trabajos, manejar reintentos, programar trabajos cron o implementar colas y control de concurrencia.

¿Qué es trigger-tasks?

Este skill permite integrar Trigger.dev en proyectos de agentes de IA, proporcionando una API TypeScript-first para crear tareas duraderas, flujos de trabajo y trabajos en segundo plano. Es útil para manejar reintentos automáticos, programar trabajos cron, implementar colas de mensajes y control de concurrencia, todo con visibilidad en tiempo real y reanudación automática tras fallos. Compatible con plataformas como Claude Code, Cursor y Codex, el skill expone funciones como `triggerTask()` para desencadenar tareas, `defineJob()` para definir trabajos, y manejo de eventos con `onEvent()`. Su documentación incluye ejemplos detallados de configuración con variables de entorno, esquemas de validación con Zod y patrones de idempotencia, lo que lo hace ideal para construir agentes autónomos, procesamiento de datos y automatización de flujos.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/triggerdotdev/skills/tree/main/skills/trigger-tasks

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace trigger-tasks?

Construye agentes de IA, flujos de trabajo y tareas de fondo duraderas con Trigger.dev. Úsalo al crear tareas, activar trabajos, manejar reintentos, programar trabajos cron o implementar colas y control de concurrencia.

Introducción

Este skill proporciona la integración con Trigger.dev, una plataforma para ejecutar tareas asíncronas, flujos de trabajo y agentes de IA de manera fiable. Utiliza TypeScript-first con soporte para reintentos automáticos, programación cron, colas y control de concurrencia.

Características principales

  • Tareas duraderas: Ejecuta tareas que pueden durar horas, con recuperación automática tras fallos.
  • Flujos de trabajo: Encadena múltiples pasos con dependencias y lógica condicional.
  • Reintentos automáticos: Configura reintentos con retroceso exponencial y ventanas de tiempo.
  • Programación cron: Programa tareas recurrentes con expresiones cron.
  • Colas y concurrencia: Controla cuántas tareas ejecutar simultáneamente.
  • Visibilidad: Panel en tiempo real para monitorear ejecuciones.

Funciones expuestas

triggerTask()

Desencadena una tarea definida con parámetros opcionales.

import { triggerTask } from 'triggerdev/skill';

const result = await triggerTask('my-task', { 
  payload: { userId: '123' },
  options: {
    delay: '5 minutes',
    maxRetries: 3
  }
});

defineJob()

Define un trabajo con configuración de reintentos y concurrencia.

import { defineJob } from 'triggerdev/skill';

const job = defineJob({
  id: 'process-order',
  name: 'Procesar pedido',
  version: '1.0.0',
  trigger: {
    event: 'order.created',
    filter: { status: 'pending' }
  },
  retry: {
    maxAttempts: 5,
    factor: 2,
    minTimeoutInMs: 1000,
    maxTimeoutInMs: 60000
  },
  run: async (payload, ctx) => {
    // Lógica del trabajo
    console.log('Procesando pedido:', payload.id);
  }
});

onEvent()

Escucha eventos entrantes y ejecuta acciones.

import { onEvent } from 'triggerdev/skill';

onEvent('user.signup', async (event) => {
  await sendWelcomeEmail(event.user.email);
});

Configuración

Variables de entorno

VariableDescripción
TRIGGER_SECRET_KEYClave secreta de Trigger.dev
TRIGGER_API_URLURL de la API (por defecto: https://api.trigger.dev)

Autenticación

trigger login --api-key TRIGGER_SECRET_KEY

Ejemplos de uso

Agente de IA con tareas

import { triggerTask, defineJob } from 'triggerdev/skill';

// Definir un agente como trabajo
const aiAgent = defineJob({
  id: 'ai-agent',
  name: 'Agente de IA',
  trigger: {
    event: 'agent.invoke',
    schema: z.object({
      prompt: z.string(),
      context: z.object({})
    })
  },
  run: async (payload, ctx) => {
    // Llamar a un modelo de IA
    const response = await callLLM(payload.prompt, payload.context);
    return { response };
  }
});

// Desencadenar el agente
await triggerTask('ai-agent', {
  payload: {
    prompt: 'Resume this document',
    context: { docId: '123' }
  }
});

Programación Cron

const cronJob = defineJob({
  id: 'daily-report',
  name: 'Informe diario',
  trigger: {
    cron: '0 8 * * *', // Cada día a las 8:00
    timezone: 'America/Mexico_City'
  },
  run: async (_, ctx) => {
    await generateDailyReport();
  }
});

Control de Concurrencia

const limitedJob = defineJob({
  id: 'rate-limited',
  name: 'Tarea con límite de concurrencia',
  trigger: {
    event: 'data.process',
    concurrencyLimit: 10 // Máximo 10 ejecuciones simultáneas
  },
  run: async (payload) => {
    // Procesar datos
  }
});

Manejo de errores

const robustJob = defineJob({
  id: 'robust-task',
  name: 'Tarea robusta',
  retry: {
    maxAttempts: 5,
    strategies: [
      { error: ['NetworkError', 'TimeoutError'], maxAttempts: 3 },
      { error: ['ValidationError'], maxAttempts: 1 }
    ]
  },
  run: async (payload) => {
    // Lógica propensa a errores
  }
});

Integración con plataformas

Este skill es compatible con:

  • Claude Code
  • Cursor
  • Codex (OpenAI)
  • Otras herramientas que soporten skills markdown

Soporte

Para más información, consulta la documentación oficial de Trigger.dev.

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

Skills relacionados