[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CRSCF8XBNE4Q1J63V3X30R":3,"skill-same:01M6CRSCF8XBNE4Q1J63V3X30R":64},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":22,"linkOnly":23,"markdownContent":24,"markdownBody":25,"frontMatter":26,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":30,"repositoryHtmlUrl":31,"repositoryHomepageUrl":6,"ownerHtmlUrl":32,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":33,"install":34,"resources":47},"01M6CRSCF8XBNE4Q1J63V3X30R","cron",null,"定时任务管理：列出、创建、更新、删除、立即运行与查看状态。调度类型支持 at（一次性时间）、every（固定间隔）、cron（cron 表达式）。不依赖 openclaw；任务持久化在 .first_paramecium\u002Fcron\u002Fjobs.json。","William2333ZZ\u002FParameciumU","William2333ZZ","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F50814640?v=4","01M6CRQ2DX8PR2N21FMADV27TG","01M6CRQ2J2PAAJMQ26N9AWQ4WP",5,"MIT","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Fcron\u002FSKILL.md",[],[5,18,19,20,21],"openclaw","first","json","jobs","2026-11-10 10:12:30",false,"---\nname: cron\ndescription: \"定时任务管理：列出、创建、更新、删除、立即运行与查看状态。调度类型支持 at（一次性时间）、every（固定间隔）、cron（cron 表达式）。不依赖 openclaw；任务持久化在 .first_paramecium\u002Fcron\u002Fjobs.json。\"\n---\n\n# Cron（定时任务）\n\n管理定时任务：创建、列表、更新、删除、立即运行与查看状态。任务存储在本地 JSON，不依赖任何网关。\n\n## 何时使用\n\n- 用户要求「每天 9 点提醒」「每 30 分钟检查一次」「下周五 18:00 执行」等时，用 **cron_add** 创建任务。\n- 查看已有任务用 **cron_list**，查看调度器状态用 **cron_status**。\n- 修改或删除任务用 **cron_update**、**cron_remove**。\n- 需要立即执行一次时用 **cron_run**（仅更新运行时间与下次运行时间，不执行 agent；实际定时执行需外部调度器或系统 crontab）。\n\n## 调度类型（schedule）\n\n- **at**：一次性，ISO 时间字符串，如 `2026-02-15T09:00:00Z` 或 `2026-02-15`。\n- **every**：固定间隔，`everyMs` 毫秒，可选 `anchorMs`。\n- **cron**：标准 cron 表达式，如 `0 9 * * *`（每天 9:00），可选 `tz` 时区。\n\n## 工具\n\n### cron_status\n\n返回当前存储路径、任务数、下次唤醒时间（最小 nextRunAtMs）。\n\n### cron_list\n\n列出任务，可选包含已禁用的。参数 `includeDisabled` 为 true 时包含禁用任务。\n\n### cron_add\n\n创建任务。参数：`name`（必填）、`description`（可选）、`schedule`（必填，见上）、`payload`（必填：`{ kind: \"systemEvent\", text: \"...\" }` 或 `{ kind: \"agentTurn\", message: \"...\" }`）、`enabled`（可选，默认 true）、`deleteAfterRun`（可选，at 任务默认 true）、`deliver`（可选，见下）。\n\n**deliver**（仅对 `payload.kind === \"agentTurn\"` 有效）：执行完成后将结果推送到指定 Connector 会话。格式 `{ connectorId: string, chatId: string }`，例如 `{ connectorId: \"feishu\", chatId: \"oc_xxxx\" }`。需 Agent 连 Gateway 且对应 Connector（如 feishu-node）已连接，汇报才会发出。飞书 chatId 可从该群内与机器人对话时的会话信息或 Control UI \u002F feishu-node 日志中获得。\n\n### cron_update\n\n更新任务。参数：`id`（必填）、`patch`（可选字段：name、description、enabled、schedule、payload、deleteAfterRun、deliver 等）。\n\n### cron_remove\n\n删除任务。参数：`id`（必填）。\n\n### cron_run\n\n立即“运行”一次任务（更新 lastRunAtMs、nextRunAtMs，不执行 agent）。参数：`id`（必填）、`mode`（可选，`force` 或 `due`，默认 `force`）。\n\n### cron_start_scheduler\n\n启动**常驻定时调度器**（后台进程）。调度器会持续运行，按 `.first_paramecium\u002Fcron\u002Fjobs.json` 中的任务到点自动更新状态（相当于到点自动执行 cron_run）。用户说「启动定时器」「开定时调度」时可调用。停止方式：关闭启动时所在终端或结束该进程。\n\n若使用 **apps\u002Fagent** 连接 Gateway，调度器已内嵌在 agent 进程内，无需单独启动。仅在未跑 agent 且需独立推进任务时间时，可在项目根执行 `npm run cron:daemon`（monorepo 下已配置该脚本）；该独立进程不会执行 agent turn。\n\n## 存储\n\n任务与记忆等持久化数据统一放在**当前项目的 .\u002F.first_paramecium 目录**下。定时任务文件可由环境变量 `CRON_STORE` 指定，未设置时默认 `.\u002F.first_paramecium\u002Fcron\u002Fjobs.json`。\n","# Cron（定时任务）\n\n管理定时任务：创建、列表、更新、删除、立即运行与查看状态。任务存储在本地 JSON，不依赖任何网关。\n\n## 何时使用\n\n- 用户要求「每天 9 点提醒」「每 30 分钟检查一次」「下周五 18:00 执行」等时，用 **cron_add** 创建任务。\n- 查看已有任务用 **cron_list**，查看调度器状态用 **cron_status**。\n- 修改或删除任务用 **cron_update**、**cron_remove**。\n- 需要立即执行一次时用 **cron_run**（仅更新运行时间与下次运行时间，不执行 agent；实际定时执行需外部调度器或系统 crontab）。\n\n## 调度类型（schedule）\n\n- **at**：一次性，ISO 时间字符串，如 `2026-02-15T09:00:00Z` 或 `2026-02-15`。\n- **every**：固定间隔，`everyMs` 毫秒，可选 `anchorMs`。\n- **cron**：标准 cron 表达式，如 `0 9 * * *`（每天 9:00），可选 `tz` 时区。\n\n## 工具\n\n### cron_status\n\n返回当前存储路径、任务数、下次唤醒时间（最小 nextRunAtMs）。\n\n### cron_list\n\n列出任务，可选包含已禁用的。参数 `includeDisabled` 为 true 时包含禁用任务。\n\n### cron_add\n\n创建任务。参数：`name`（必填）、`description`（可选）、`schedule`（必填，见上）、`payload`（必填：`{ kind: \"systemEvent\", text: \"...\" }` 或 `{ kind: \"agentTurn\", message: \"...\" }`）、`enabled`（可选，默认 true）、`deleteAfterRun`（可选，at 任务默认 true）、`deliver`（可选，见下）。\n\n**deliver**（仅对 `payload.kind === \"agentTurn\"` 有效）：执行完成后将结果推送到指定 Connector 会话。格式 `{ connectorId: string, chatId: string }`，例如 `{ connectorId: \"feishu\", chatId: \"oc_xxxx\" }`。需 Agent 连 Gateway 且对应 Connector（如 feishu-node）已连接，汇报才会发出。飞书 chatId 可从该群内与机器人对话时的会话信息或 Control UI \u002F feishu-node 日志中获得。\n\n### cron_update\n\n更新任务。参数：`id`（必填）、`patch`（可选字段：name、description、enabled、schedule、payload、deleteAfterRun、deliver 等）。\n\n### cron_remove\n\n删除任务。参数：`id`（必填）。\n\n### cron_run\n\n立即“运行”一次任务（更新 lastRunAtMs、nextRunAtMs，不执行 agent）。参数：`id`（必填）、`mode`（可选，`force` 或 `due`，默认 `force`）。\n\n### cron_start_scheduler\n\n启动**常驻定时调度器**（后台进程）。调度器会持续运行，按 `.first_paramecium\u002Fcron\u002Fjobs.json` 中的任务到点自动更新状态（相当于到点自动执行 cron_run）。用户说「启动定时器」「开定时调度」时可调用。停止方式：关闭启动时所在终端或结束该进程。\n\n若使用 **apps\u002Fagent** 连接 Gateway，调度器已内嵌在 agent 进程内，无需单独启动。仅在未跑 agent 且需独立推进任务时间时，可在项目根执行 `npm run cron:daemon`（monorepo 下已配置该脚本）；该独立进程不会执行 agent turn。\n\n## 存储\n\n任务与记忆等持久化数据统一放在**当前项目的 .\u002F.first_paramecium 目录**下。定时任务文件可由环境变量 `CRON_STORE` 指定，未设置时默认 `.\u002F.first_paramecium\u002Fcron\u002Fjobs.json`。\n",{"name":5,"description":7},"main","44a4b22199c7b4214bbd59f96c4bdd2c1a254a7a","packages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Fcron",2,"https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ","2026-03-10 17:40:15",{"source":8,"skillName":5,"commands":35,"prompt":45,"zipAvailable":46},[36,39,42],{"tool":37,"command":38},"npx","npx skills add William2333ZZ\u002FParameciumU --skill cron",{"tool":40,"command":41},"bunx","bunx skills add William2333ZZ\u002FParameciumU --skill cron",{"tool":43,"command":44},"pnpm","pnpm dlx skills add William2333ZZ\u002FParameciumU --skill cron","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Fcron\u002FSKILL.md",true,[48,54,60],{"path":49,"resourceType":50,"resourceTypeDesc":51,"sizeBytes":52,"sourceHtmlUrl":53},"scripts\u002Ftools.ts","SCRIPT","脚本",9731,"https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Fcron\u002Fscripts\u002Ftools.ts",{"path":55,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":58,"sourceHtmlUrl":59},"SOURCE.md","REFERENCE","参考文档",202,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fgekko-portfolio-manager\u002FSOURCE.md",{"path":61,"resourceType":56,"resourceTypeDesc":57,"sizeBytes":62,"sourceHtmlUrl":63},"TRUST.auto.yaml",2217,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Ftrading\u002Fgekko-portfolio-manager\u002FTRUST.auto.yaml",[65,80,89,96,105,120],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":76,"publishedAt":22},"01M6CRT0YRSDP7FZ946MA1BDRQ","valid-skill","A valid skill for testing purposes.","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fskills\u002Ftest\u002Ffixtures\u002Fskills\u002Fvalid-skill\u002FSKILL.md",[71],{"categoryNo":72,"categoryName":73,"taxonomyType":74,"taxonomyTypeDesc":75},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[77,78,79],"valid","valid skill","testing",{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":22},"01M6CRSZZ5GRNTR4FAXGKRC955","different-name","Name does not match parent directory.","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fskills\u002Ftest\u002Ffixtures\u002Fskills\u002Fname-mismatch\u002FSKILL.md",[],[87,88],"different name","directory",{"skillNo":90,"name":91,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":22},"01M6CRSYZ04Y3MC57ATW85RXWZ","missing-description","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fskills\u002Ftest\u002Ffixtures\u002Fskills\u002Fmissing-description\u002FSKILL.md",[],[95],"missing description",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":22},"01M6CRSXZ43BPMK6YKQBA48W4N","disable-model-invocation","Skill with disable-model-invocation true.","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fskills\u002Ftest\u002Ffixtures\u002Fskills\u002Fdisable-model-invocation\u002FSKILL.md",[],[103,104],"disable model invocation","model",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":112,"publishedAt":22},"01M6CRSWAYCA79S2T2NKV0G6PJ","web_skill","Fetch URL content or search the web. Use web_fetch for a known URL; use web_search when you need to find current information.","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Fweb_skill\u002FSKILL.md",[111],{"categoryNo":72,"categoryName":73,"taxonomyType":74,"taxonomyTypeDesc":75},[113,114,115,116,117,118,119],"web skill","web","fetch","use","find","content","search",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":127,"publishedAt":22},"01M6CRSTZJMZG9VABJEG41B7NB","todo_skill","会话内待办列表。复杂任务先拆成 todowrite，执行中用 todoread 查看、用 todowrite 更新状态（in_progress\u002Fcompleted），与 OpenCode 任务管理一致。","https:\u002F\u002Fgithub.com\u002FWilliam2333ZZ\u002FParameciumU\u002Fblob\u002Fmain\u002Fpackages\u002Fagent-template\u002Ftemplate\u002Fskills\u002Ftodo_skill\u002FSKILL.md",[126],{"categoryNo":72,"categoryName":73,"taxonomyType":74,"taxonomyTypeDesc":75},[128,129,130],"todo skill","todo","opencode"]