用途
该技能用于分析 Trigger.dev 的任务(tasks)、调度(schedules)与运行记录(runs),寻找成本优化机会。它适用于被要求降低支出、优化成本、审计用量或调整机器规格(right-size)的场景。
主要能力与工作流来源
完整的、按版本锁定的成本审计工作流随已安装的 @trigger.dev/sdk 提供,而非独立文件。在给出建议前需要阅读以下内容,以确保建议与当前项目中的 SDK 版本一致:
- 技能文档:node_modules/@trigger.dev/sdk/skills/trigger-cost-savings/SKILL.md —— 包含静态分析清单、MCP 运行分析步骤(list_runs、get_run_details、get_current_worker)、报告格式以及机器预设成本表。
- 文档:规范指导打包在 node_modules/@trigger.dev/sdk/docs/how-to-reduce-your-spend.mdx,并在 node_modules/@trigger.dev/sdk/docs/ 下有配套页面(machines.mdx、runs/max-duration.mdx、queue-concurrency.mdx、idempotency.mdx、triggering.mdx、errors-retrying.mdx)。
使用方式
如果上述路径不存在,说明 @trigger.dev/sdk 尚未安装,需要先安装。在非扁平化(non-hoisted)布局中,可用 node -p "require.resolve('@trigger.dev/sdk/package.json')" 解析该包,并读取其旁边的 skills/ 与 docs/。
实时运行分析需要 Trigger.dev MCP 服务器,可通过 npx trigger.dev@latest install-mcp 安装。若没有该服务器,只能做静态源码分析,绝不可编造运行数据。
核心原则
- 超过 5 秒的等待是免费的(checkpointed,不计算力费用)。
- 从小规格开始,按需扩展:默认的 small-1x 适合大多数任务;对于卡在 large-* 且运行时间短的任务,应下调至合适规格。
- I/O 密集型任务不需要大机器:API 调用与数据库查询等待的是网络。
- 添加 maxDuration:限制失控的算力消耗。
- 对高频触发进行 debounce:将突发流量合并为单次运行。
- 使用幂等键(idempotency keys)防止重复计费的工作。
- 使用 AbortTaskRunError 停止无谓重试:不要为永久性失败的重试付费。
相关技能
同类技能包括:trigger-authoring-tasks(用于调整任务选项:machine、maxDuration、retry、queue、idempotency)、trigger-realtime-and-frontend、trigger-authoring-chat-agent 与 trigger-chat-agent-advanced(AI 智能体)。
限制
实时运行数据依赖 Trigger.dev MCP 服务器,缺少该服务器时不可进行运行数据分析,也不得虚构运行数据。具体的机器预设成本数值、报告格式细节均以已安装 SDK 版本内的文件为准,此处暂未提供。