ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

如何用 Kortix 的 cron 触发器让 agent 按定时任务自动运行

2026/9/14 11:18:53 拓冰建站 浏览量
如何用 Kortix 的 cron 触发器让 agent 按定时任务自动运行 如何用 Kortix 的 cron 触发器让 agent 按定时任务自动运行【免费下载链接】agentpressThe open-source AI Management System项目地址: https://gitcode.com/GitHub_Trending/ag/agentpressKortix 的 trigger触发器可以启动一个没有人参与的 session其中cron类型按你设定的计划时间自动运行触发时把 manifest 里配置好的prompt渲染为新 session 的第一条消息。本文覆盖从安装 CLI、添加一个 cron 触发器、上线到验证它确实在跑的完整路径让 agent 按定时任务自动执行工作例如每个工作日上午汇总昨日活动。适用的环境是 macOS 或 Linux官方安装脚本只提供这两个平台的预编译二进制Windows 不受支持前提是你已经拥有一个 Kortix 账号并能登录。准备条件安装 CLI 并登录curl -fsSL https://kortix.com/install | bash安装脚本下载预编译的kortix二进制。然后登录kortix login接着让当前目录关联到一个项目。两种方式取决于你是否已有项目# 新建项目 kortix init my-app cd my-app # 或者把已克隆的仓库关联到已有项目 kortix projects link project-idkortix projects link会在当前目录写入.kortix/link.json此后从该目录执行的kortix命令都指向这个项目。如果打算先跑kortix ship可以跳过 link——首次 ship 会自动为不存在的项目创建云端项目。确认 manifest 满足触发器运行的前提kortix.yaml中agents不能为空且必须声明default_agentcron 触发器没有指定agent时默认用它。manifest 结构和字段约束见 Manifest 参考。添加一个 cron 触发器在关联项目的仓库目录里执行kortix triggers add daily-digest --type cron \ --cron 0 0 9 * * 1-5 --timezone America/Los_Angeles \ --prompt Summarize yesterdays activity and save it as a daily note.这条命令的关键点--type cron是默认类型显式写出不影响行为但便于与 webhook、monitor 类型区分--cron是6 字段表达式秒、分、时、日、月、星期。上例0 0 9 * * 1-5即工作日 9:00:00 触发注意这是秒级精度表达式不是常见的 5 字段写法--timezone传 IANA 时区名缺省为 UTC。定时按该时区的墙钟时间计算--prompt必填会渲染成触发时 session 的第一条消息。执行后触发器只写入了本地kortix.yaml还没生效。等价的做法是直接在kortix.yaml的triggers:列表里手写配置字段形态如下# kortix.yaml triggers: - slug: daily-digest # 必填小写字母连字符项目内唯一 name: Daily digest # 可选默认取 slug type: cron # 必填 agent: kortix # 可选缺省为 default_agent且必须命名 agents: 中的键 model: anthropic/claude-sonnet-4-5 # 可选缺省在触发时解析模型 enabled: true # 可选默认 true cron: 0 0 9 * * 1-5 # 6 字段表达式与 run_at 二选一 timezone: America/Los_Angeles session_mode: fresh # fresh | reuse | pinned | keyed默认 fresh prompt: Summarize yesterdays activity and save it as a daily note.cron触发器必须恰好提供cron或run_at之一不能同时给。run_at是 ISO-8601 时间戳只触发一次之后进入 dormant 状态——适合一次性任务而不是周期任务。session 复用策略由session_mode决定默认fresh每次触发都开新 sandbox 和新分支。若希望同一触发器反复复用同一个 session可以设为reusepinned、keyed需要分别配session_id、session_key属于进阶用法。prompt 支持模板变量。cron 触发可用{{ cron.schedule }}、{{ cron.timezone }}、{{ cron.scheduled_for }}本次触发对应的计划槽位、{{ cron.claimed_at }}调度器实际领取时间、{{ cron.last_scheduled_for }}上一次槽位首次触发时为空以及{{ trigger.slug }}、{{ trigger.type }}等通用变量。缺失的变量渲染为空字符串不会报错。上线ship 并落到默认分支kortix shipkortix ship会校验kortix.yaml、提交本地改动并推送到项目仓库的远端分支。调度计划在该提交落到项目默认分支后才生效。manifest 变更走的是正常分支流程调度器在合并后数秒内会拾取 cron 或 webhook 的变更。如果不想走本地编辑 ship 的流程add还支持--apply直接提交到云端项目的main并立即对账一步到位。kortix triggers set slug则只改云端线上触发器只写你传入的字段没有本地形态也没有对应的--apply。验证触发器在运行先列出所有触发器及运行状态kortix triggers ls输出包含每个触发器的 slug、state 和上次触发时间last fire。用kortix triggers info daily-digest可以查看单个触发器的详情加--json可获得机器可读格式。不想等到计划时间点可以立即手动触发一次kortix triggers fire daily-digest手动触发走的是和 cron 相同的 session 创建路径因此能验证 prompt、agent、sandbox 整条链路是否通畅。随后可以用kortix sessions ls查看被触发的 session 是否在运行。注意访问边界触发器创建的 session 默认是私有策略由触发器 agent 的 service account 持有项目 manager以及账号 owner、账号 admin总能打开它们但配置触发器或手动触发它本身不会给你额外的访问权限除非你本身持有上述角色。日常管理启停与暂停单个触发器的开关编辑本地 manifest需要kortix ship才生效kortix triggers enable daily-digest kortix triggers disable daily-digest kortix triggers rm daily-digest项目级暂停/恢复是服务端的独立开关一次性停掉项目内所有触发器与每个触发器自己的enabled字段互不影响kortix triggers pause kortix triggers resume暂停期间调度器跳过该项目webhook 入站请求返回200加{ status: skipped }不会启动 session但手动 fire 仍然可用。文档给出的典型使用场景同一个仓库同时跑在两个控制面例如 dev 和 production时用 pause 避免 cron 被两边重复触发。修改已有 cron 表达式用set例如kortix triggers set daily-digest --cron 0 0 10 * * 1-5 --timezone America/Los_Angeles--cron和--run-at互斥设置一个会清掉另一个。set立即作用于线上触发器不产生本地 manifest 编辑。限制与行为边界调度精度调度器大约每秒轮询一次默认 1000 ms可用KORTIX_TRIGGER_SCHEDULER_INTERVAL_MS配置cron 精度是尽力而为的秒级尽管表达式里有秒字段。并发上限每个项目默认同时允许 3 个由触发器发起的 session 处于 provisioning超出限额的触发不报错而是返回queued202等有空位再运行。账号计划层的活跃 session 上限同样可能生效。去重cron 触发按计划槽位去重即使一次触发超时但实际落下了重试也不会重复执行。模型触发器不指定model时在触发时解析指定后model字段或--model provider/model该 session 固定使用该模型。触发不产生 commit触发器触发、运行时状态last fire time、status都存在数据库里不写 Git 历史。通过 API、SDK 或 dashboard 增删改触发器会直接写默认分支不走 change request 流程。完整字段表和端点参考见 Triggers 文档全部kortix triggers子命令见 CLI 文档。【免费下载链接】agentpressThe open-source AI Management System项目地址: https://gitcode.com/GitHub_Trending/ag/agentpress创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考