drizzle
Use this skill when writing or modifying Drizzle ORM schemas, queries, or migrations in this repo — specifically the…
Covers writing backend Trigger.dev tasks with @trigger.dev/sdk: defining task() and schemaTask(), the run function and its ctx, retries, waits, queues and concurrency, idempotency keys, run metadata, logging, triggering other tasks (and the Result shape), scheduled/cron tasks,
Claude Code
$ npx -y skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks --agent claude-code
Codex
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a codex -y
Cursor
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a cursor -y
Gemini CLI
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a gemini-cli -y
GitHub Copilot
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a github-copilot -y
OpenCode
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a opencode -y
Windsurf
$ npx skills add triggerdotdev/trigger.dev --skill trigger-authoring-tasks -a windsurf -y
name: trigger-authoring-tasks description: > Covers writing backend Trigger.dev tasks with @trigger.dev/sdk: defining task() and schemaTask(), the run function and its ctx, retries, waits, queues and concurrency, idempotency keys, run metadata, logging, triggering other tasks (and the Result shape), scheduled/cron tasks, and the essentials of trigger.config.ts. Load this whenever you are authoring or editing code inside a /trigger directory, defining a task, or writing backend code that triggers tasks. Realtime/React hooks and AI chat are covered by separate skills. type: core library: trigger.dev
The full, version-pinned reference for authoring tasks ships **inside your installed `@trigger.dev/sdk`**. Read it before writing code — it always matches the SDK version in this project, so it never drifts:
If those paths don't exist, `@trigger.dev/sdk` isn't installed yet — install it first. In a non-hoisted layout, resolve the package with `node -p "require.resolve('@trigger.dev/sdk/package.json')"` and read `skills/` + `docs/` beside it.
Always import from `@trigger.dev/sdk` — never `@trigger.dev/sdk/v3` (deprecated alias) or `@trigger.dev/core`.
1. **CRITICAL: Treating the wait result as the output.** `triggerAndWait` and `wait.forToken` return a Result object, not the raw output.
2. **Wrapping `triggerAndWait` / `batchTriggerAndWait` / `wait` in `Promise.all`.**
3. **Importing the task instance into backend code.**
4. **Calling `metadata.set/get` outside `run()`.**
5. **Assuming child tasks inherit the parent's queue or metadata.**
6. **Bundling native/WASM packages.**
7. **Relying on a raw string idempotency key being global.**
Sibling skills: **trigger-realtime-and-frontend** (subscribe to runs, trigger from the frontend), **trigger-authoring-chat-agent** and **trigger-chat-agent-advanced** (AI chat agents).
The quickest way to get started is to create an account and project in our web app, and follow the instructions in the onboarding. Build and deploy your first task in minutes.
Use this skill when writing or modifying Drizzle ORM schemas, queries, or migrations in this repo — specifically the…
End-to-end smoke test for the public Errors HTTP API (error groups). Seeds failed runs into ClickHouse so the error materialized…
Use when adding, modifying, or debugging OTel span timeline events in the trace view. Covers event structure, ClickHouse storage…
Use this skill when writing, designing, or optimizing Trigger.dev background tasks and workflows. This includes creating reliable…
Author and run a durable AI chat agent with chat.agent from @trigger.dev/sdk/ai: the per-turn run loop, why you MUST take…
Advanced and operational chat.agent capabilities for Trigger.dev, loaded on demand. Load this when working on the raw Sessions…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.