📅 Schedule Manager — 日程管理

v1.0.1

本地日程与提醒工具,可查看、添加、修改、删除定时任务和临时提醒,直接操作用户 crontab 与本地文件,无需联网或密钥。

0· 397·2 当前·2 累计
cowboy231 头像by @cowboy231·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/11
0
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
安全
medium confidence
该技能的代码与说明均指向本地日程/提醒管理器:仅修改用户 crontab 与工作区文件,不请求密钥或远程端点;使用前请本地审查与测试。
评估建议
该技能功能与描述一致(本地调度与提醒)。安装前:1)检查或提供引用的 run-task.sh(~/.openclaw/workspace/scripts/run-task.sh),因为 crontab 会调用它——其内容决定实际运行逻辑。2)备份当前 crontab(crontab -l > before-crontab.txt),以便需要时恢复。3)如需语音提醒,安装/确认 TTS 工具 edge-tts;package.json 不会自动安装。4)将脚本 update_crontab 中硬编码 PATH(/home/wang/...)改为你的环境路径。5)在非关键账户或容器内测试行为。若无法检查 run-task.sh 或不想改动 crontab,请勿安装。...
详细分析 ▾
用途与能力
名称/描述与所含 Python 脚本及 SKILL.md 一致:工具读写本地任务文件、管理临时任务并更新 crontab 以调用本地 run-task.sh。小不一致:package.json 列出 edge-tts 依赖,SKILL.md 元数据也要求该二进制,但无自动安装步骤,需手动处理。
指令范围
运行时指令与脚本仅在 ~/.openclaw/workspace 及用户 crontab 内操作,符合调度器定位。脚本调用 crontab 并将实际任务执行委托给 RUN_TASK_SCRIPT(~/.openclaw/workspace/scripts/run-task.sh),但该助手脚本未随包提供,需自行提供或检查。代码不会读取无关系统凭据或外传数据。
安装机制
未提供安装脚本(仅指令/源文件),降低隐藏下载风险。但 package.json 声明 edge-tts 依赖而技能未自动安装;SKILL.md 期望存在 edge-tts 二进制。此为依赖存在但未自动安装的矛盾,需手动解决。
凭证需求
技能不请求环境变量或凭据。仅在用户主目录工作区写文件并更新用户 crontab,均与调度器功能相称。小异常:crontab PATH 含硬编码路径 /home/wang/.npm-global/bin,属开发者特定,使用前应检查/修改。
持久化与权限
技能修改用户 crontab(持久定时任务),此乃预期功能但属特权操作:将为安装账户创建循环系统级调用。always:false(非强制包含)且不请求其他技能的凭据。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.12026/3/15

维护更新

可疑

安装命令

点击复制
官方npx clawhub@latest install schedule-manager
镜像加速npx clawhub@latest install schedule-manager --registry https://cn.longxiaskill.com

技能文档

📅 管理工作区的定时任务和临时提醒

🚀 快速使用

# 查看所有任务
python scripts/schedule.py list

# 添加定时任务 python scripts/schedule.py add --time "07:00" --name "起床提醒" --type tts --content "早上好" --weekday "1-5"

# 添加临时任务(一次性) python scripts/schedule.py temp --time "2026-03-02 10:00" --message "明天上午 10 点开会"

# 修改任务 python scripts/schedule.py edit "起床提醒" --time "07:30"

# 暂停任务 python scripts/schedule.py toggle "起床提醒"

# 删除任务 python scripts/schedule.py delete "起床提醒"


📋 命令说明

1. 查看任务

# 查看所有定时任务
python scripts/schedule.py list

# 查看临时任务 python scripts/schedule.py list --temp

# 查看今日待执行临时任务 python scripts/schedule.py list --today

2. 添加定时任务

python scripts/schedule.py add \
  --time "07:00" \
  --name "起床提醒" \
  --type "tts" \
  --content "早上好,该起床啦" \
  --weekday "1-5" \
  --notify "本地播放 + 飞书"

参数说明:

参数说明必填默认值
--time执行时间 (HH:MM)-
--name任务名称-
--type任务类型 (tts/news)-
--contentTTS 文本或新闻目录-
--weekday星期规格1-7
--notify通知方式本地播放

3. 添加临时任务

# 指定日期时间
python scripts/schedule.py temp \
  --time "2026-03-02 10:00" \
  --message "明天上午 10 点开会"

# 相对时间(1 小时后) python scripts/schedule.py temp \ --in "1h" \ --message "1 小时后提醒我"

# 明天早上 8 点 python scripts/schedule.py temp \ --tomorrow "08:00" \ --message "明天早上 8 点提醒"

临时任务参数:

参数说明示例
--time绝对时间2026-03-02 10:00
--in相对时间30m / 1h / 2d
--tomorrow明天指定时间08:00
--message提醒内容"开会"
--notify通知方式本地播放 / 飞书

4. 修改任务

# 修改时间
python scripts/schedule.py edit "起床提醒" --time "07:30"

# 修改内容 python scripts/schedule.py edit "起床提醒" --content "早上好呀"

# 修改星期 python scripts/schedule.py edit "起床提醒" --weekday "1-7"

# 修改多个字段 python scripts/schedule.py edit "起床提醒" --time "07:30" --content "新内容"

5. 启用/暂停任务

# 切换状态(启用↔暂停)
python scripts/schedule.py toggle "起床提醒"

# 直接启用 python scripts/schedule.py enable "起床提醒"

# 直接暂停 python scripts/schedule.py disable "起床提醒"

6. 删除任务

# 删除定时任务
python scripts/schedule.py delete "起床提醒"

# 删除临时任务 python scripts/schedule.py delete --temp "临时任务 ID"

# 清理已过期的临时任务 python scripts/schedule.py cleanup


📁 文件结构

~/.openclaw/workspace/
├── daily-tasks.md              # 定时任务配置
├── calendar/
│   ├── temp-tasks.md           # 临时任务列表
│   └── daily-news/             # 新闻文件目录
├── task-logs/                  # 执行日志
└── skills/schedule-manager/
    ├── SKILL.md                # 本文件
    └── scripts/
        └── schedule.py         # 主脚本

🔧 技术细节

定时任务存储

daily-tasks.md

  • Markdown 表格格式:
时间任务名类型内容/参数星期通知方式状态
07:00起床提醒tts"早上好"1-5本地播放 + 飞书

临时任务存储

calendar/temp-tasks.md

  • YAML 格式:
tasks:
  - id: "temp_001"
    time: "2026-03-02 10:00"
    message: "明天上午 10 点开会"
    notify: "本地播放 + 飞书"
    status: "pending"  # pending / done / expired
    created_at: "2026-03-01 18:00"

crontab 集成

  • 定时任务:通过 crontab 精确执行
  • 临时任务:心跳轮询检查(每 5 分钟)

💡 使用场景

每日固定任务

# 工作日早上起床提醒
python scripts/schedule.py add \
  --time "07:00" \
  --name "起床提醒" \
  --type "tts" \
  --content "早上好,该起床啦" \
  --weekday "1-5"

# 每晚孩子睡觉提醒 python scripts/schedule.py add \ --time "21:30" \ --name "孩子洗漱" \ --type "tts" \ --content "宝贝,该洗漱准备睡觉啦" \ --weekday "1-7"

临时提醒

# 1 小时后提醒
python scripts/schedule.py temp --in "1h" --message "该休息了"

# 明天早上 9 点会议 python scripts/schedule.py temp --tomorrow "09:00" --message "周会"

# 指定日期时间 python scripts/schedule.py temp --time "2026-03-05 14:00" --message "看牙医"

任务管理

# 查看所有任务
python scripts/schedule.py list

# 暂停周末任务 python scripts/schedule.py disable "周末跑步"

# 修改任务时间 python scripts/schedule.py edit "起床提醒" --time "07:30"


⚠️ 注意事项

  • 临时任务检查 - 需要心跳轮询(建议 5 分钟间隔)
  • crontab 权限 - 确保用户有 crontab 权限
  • 时间格式 - 使用 24 小时制 (HH:MM)
  • 星期规格 - 1-5 (工作日), 1-7 (每天), 1,3,5 (隔天)
  • 任务名称 - 必须唯一,不能重复

🛠️ 故障排查

任务不执行

# 检查 crontab
crontab -l

# 检查任务状态 python scripts/schedule.py list

# 手动执行测试 ~/.openclaw/workspace/scripts/run-task.sh "任务名" --force

临时任务不触发

# 查看临时任务列表
python scripts/schedule.py list --temp

# 检查心跳配置 cat ~/.openclaw/workspace/HEARTBEAT.md

# 手动触发检查 python scripts/schedule.py check-temp


📞 相关文档

数据来源ClawHub ↗ · 中文优化:龙虾技能库