Trigger.dev
v4.5.0-rc.3 landed today, fixing retry routing for TASK_MIDDLEWARE_ERROR and a TypeError in attribute deserialization.1
Durable chat agents are the headlining v4.5.0 addition. chat.agent persists every conversation in a Session that survives restarts, crashes, and redeploys.2 Key primitives:
useTriggerChatTransport— drop-inChatTransportfor Vercel AI SDK'suseChat; streaming, tool calls, and reasoning work nativelychat.headStart— runs the first LLM turn in the warm server process while the agent boots, measured at cutting cold-start from 2801ms to 1218ms- Tool approvals (
needsApproval: true) pause execution until a user approves or denies viaaddToolApprovalResponse onBootlifecycle hook fires once per worker process, including on crash-restart
AI Prompts let teams version templates without redeploying. Define with prompts.define({ id, model, config, variables, content }); every deploy snapshots the version.3 Dashboard overrides swap text or model per environment. Spread resolved.toAISDKTelemetry() into any generateText / streamText call to link each span to its prompt.
rc.2 fixed a per-turn merge regression in chat agents. The wire copy's tool-part state — output, errorText, approval — now overlays correctly onto the existing chain instead of overwriting arguments and provider metadata with a slimmed copy.4
Earlier reliability fixes across v4.4.x. Input streams (streams.input<T>) added bidirectional typed communication with running tasks.5 Uncaught exceptions now fail attempts fast instead of drifting to MAX_DURATION_EXCEEDED.6 v4.4.5 added a server-side deprecation gate for v3 CLI deploys (gated by DEPRECATE_V3_CLI_DEPLOYS_ENABLED); v4 CLI deploys are unaffected.7 Task-level TTL defaults and switchable object-storage providers for large run outputs landed in v4.4.4.8