后台与定时任务
在交互模式启动 siada-cli 时,会同时拉起一个后台守护进程,用它执行定时任务、整理每日进展,并按需推送消息。这一章说明如何查看和停止它,以及把周期性的工作交给它。
守护进程
守护进程是独立于当前会话的后台进程,有自己的运行状态与日志。它随交互会话启动;非交互的 --prompt 运行不会启动它。退出终端界面不会停止守护进程,需要显式结束。
siada-cli --daemon-status
siada-cli --stop-daemon
siada-cli --restart-daemon
--daemon-status 会显示进程是否运行;--stop-daemon 结束后台进程,--restart-daemon 先停止再启动。后台发现、等待你处理的任务可以在会话里输入 /task-list 查看。
siada-cli --no-daemon 禁止本次启动自动拉起守护进程。它不会停止已经运行的后台进程;需要停止时,先执行 siada-cli --stop-daemon。
用对话创建定时任务
直接说清时间、项目目录和任务内容即可。Siada 使用 manage-cron-task 技能保存周期任务,由守护进程到点后在本机执行,并记录结果。
每天早上九点半,按照 docs/release.md 编译并打包。
每周五 18:00 汇总本周提交,生成一份周报草稿。
每天凌晨两点执行测试用例,失败时说明原因。
查看、修改、停用和删除同样用对话完成,例如“列出所有定时任务”“把周报改到周五 17:30”“先停用每天凌晨的测试任务”。改动通常在半分钟内生效,不需要重启守护进程。
定时任务只在守护进程运行时触发。机器处于关机或休眠状态、或守护进程已经停止时,任务不会在这个时间段执行;重新启动 siada-cli 后再查看任务状态即可。
每日摘要
开启每日摘要后,后台会在设定时间根据当天的工作记录整理一份进展摘要。生成时间默认是 06:00,为了避免同时占用资源,实际开始时间会在一个时间窗内错开。
开启推送后,摘要会在 08:30 之后的错开窗口内发送到已配置的 IM(例如飞书),发送时间同样不是精确到分的一刻。飞书侧的接入方式见 飞书远程入口。
只有 proactive.send_daily_summary_to_im 打开时,后台才会安排每日摘要任务;关闭时不会生成摘要文件,也就不会推送到 IM。
后台设置
后台行为写在个人配置 ~/.siada-cli/conf.yaml 的 proactive 段中。没有对应命令的设置,可以编辑配置,或请 Siada 帮你改。
| 配置项 | 默认值 | 作用 |
|---|---|---|
proactive.enabled | true | 每日固定工作与主动分析开关;单独创建的周期任务按各任务开关运行。 |
proactive.daily_task_execution_time | "06:00" | 每日摘要开始生成的时间,随后在时间窗内错开执行。 |
proactive.daily_im_send_time | "08:30" | 摘要最早发送到 IM 的时间;实际发送会在之后的窗口内错开。 |
proactive.send_daily_summary_to_im | false | 生成每日摘要并推送到已配置的 IM。 |
proactive.llm_config | 未设置 | 为后台与定时任务单独指定模型,写法与顶层 llm_config 相同。 |
proactive:
enabled: true
daily_task_execution_time: "06:00"
daily_im_send_time: "08:30"
send_daily_summary_to_im: true
llm_config:
model: "your-model-id"
用 /task-list 查看后台发现的任务。你主动创建的周期任务会按计划触发,需要暂时停止时,停用该任务或停止守护进程。
修改 proactive 段后,重启守护进程让设置生效:
siada-cli --stop-daemon
siada-cli
版本自动更新
守护进程默认会在后台检查并安装新版本,相关设置位于 auto_update 段:enabled(默认 true)控制开关,check_interval_minutes(默认 30)控制检查间隔,channel(默认 prod)选择发布通道。
siada-cli --just-check-update
siada-cli --upgrade
--just-check-update 只检查一次版本并返回结果,不会安装,适合放进脚本里判断;需要立刻升级时用 --upgrade。启动时的版本检查由 --check-update 控制,默认开启,也可以用 --no-check-update 关闭。