Workday Reminder

v1.0.0

工作日下班提醒技能。提供工作日下班时间(默认 17:30)的定时提醒、倒计时查询和提醒管理功能。当用户提到"下班提醒"、"下班倒计时"、"还有多久下班"、"设置下班时间"等相关需求时触发。支持工作日和周末区分提醒。

0· 122·0 current·0 all-time
byliu hongbin@artwebs

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for artwebs/workday-reminder.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Workday Reminder" (artwebs/workday-reminder) from ClawHub.
Skill page: https://clawhub.ai/artwebs/workday-reminder
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Config paths to check: channels.qqbot
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install workday-reminder

ClawHub CLI

Package manager switcher

npx clawhub@latest install workday-reminder
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
Name/description (workday off-time reminders) align with requested config path channels.qqbot and the instructions to schedule cron jobs and send messages via a QQ channel. No unrelated credentials or binaries are requested.
Instruction Scope
SKILL.md tightly prescribes using the platform 'cron' tool and building a specific job payload that delivers messages to the 'qqbot' channel and uses the user's openid from context. This is consistent with sending reminders, but the skill insists you must call cron whenever the user mentions reminders (rather than optionally offering a conversational reply) — a design choice that grants the skill broad discretion to create scheduled jobs. The instructions require access to the user's openid in context; ensure the agent actually has that available and you're comfortable with scheduling autonomous jobs.
Install Mechanism
No install spec; instruction-only with a small included countdown script. Nothing is downloaded or written by an installer step. Low install risk.
Credentials
No environment variables or external credentials requested. The single required config path channels.qqbot is proportional to sending messages via a QQ bot channel (this likely maps to bot/channel configuration).
Persistence & Privilege
The skill creates persistent cron jobs (via the platform cron tool) so scheduled reminders will persist and run later. always:false and normal autonomous invocation are used. Creating persistent jobs is expected for this purpose, but users should be aware scheduling persists beyond the immediate conversation and that jobs will target the qqbot channel and a user openid.
Assessment
This skill is coherent with its stated purpose: it schedules persistent cron jobs to send QQ-bot reminders and provides a local Python countdown helper. Before installing, confirm: (1) you are comfortable the agent can create persistent cron jobs on your account/platform (they will run later and persist until removed); (2) the platform config path channels.qqbot likely gives the skill access to your QQ channel/bot configuration—review what that config contains (tokens or channel IDs) and ensure you trust it; (3) the countdown script uses the host's local time (SKILL.md states Asia/Shanghai for cron jobs); if your agent runtime is in a different timezone the countdown output may be inconsistent—verify timezone handling; (4) the skill requires the agent to obtain the user's openid from context to deliver messages—ensure the agent has that data and you consent to its use. No network endpoints, secret exfiltration, or external installers were found in the files.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🏃 Clawdis
Configchannels.qqbot
countdownvk979v01vybsta19r3mw8g58tn583jhe0latestvk979v01vybsta19r3mw8g58tn583jhe0remindervk979v01vybsta19r3mw8g58tn583jhe0workdayvk979v01vybsta19r3mw8g58tn583jhe0
122downloads
0stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

工作日下班提醒

⚠️ 强制规则

当用户提到「下班提醒」「下班时间」「还有多久下班」「几点下班」「查看倒计时」等任何涉及下班时间的请求时,必须调用 cron 工具来设置定时提醒或计算倒计时,绝对不能只用自然语言回复说"好的"!

你没有内存或后台线程,口头承诺"到时候提醒"是无效的——只有调用 cron 工具才能真正注册定时任务。


核心规则

1. 下班提醒设置

默认下班时间:17:30(工作日)

  • 只在工作日提醒(周一到周五)
  • 周末不提醒
  • 使用 cron 表达式:"30 17 * * 1-5"
  • 时区:Asia/Shanghai

payload.kind 必须是 "agentTurn",绝对不能用 "systemEvent"

5 个不可更改字段:

字段固定值原因
payload.kind"agentTurn"systemEvent 不会发 QQ 消息
payload.delivertrue否则不投递
payload.channel"qqbot"QQ 通道标识
payload.to用户 openid从上下文获取
sessionTarget"isolated"隔离会话避免污染

提醒消息模板:

{
  "message": "你是一个暖心的下班提醒助手。请用温暖、有趣的方式提醒用户:下班时间到了!要求:(1) 不要回复HEARTBEAT_OK (2) 不要解释你是谁 (3) 直接输出一条暖心的提醒消息 (4) 可以加一句简短的关心或鸡汤的话,比如'辛苦了,好好休息'、'今天也很棒,明天继续加油' (5) 控制在2-3句话以内 (6) 用🏃、🎉、✨等emoji点缀,让提醒更有活力"
}

完整的 job 配置:

{
  "action": "add",
  "job": {
    "name": "工作日下班提醒",
    "schedule": {
      "kind": "cron",
      "expr": "30 17 * * 1-5",
      "tz": "Asia/Shanghai"
    },
    "sessionTarget": "isolated",
    "wakeMode": "now",
    "payload": {
      "kind": "agentTurn",
      "message": "你是一个暖心的下班提醒助手。请用温暖、有趣的方式提醒用户:下班时间到了!要求:(1) 不要回复HEARTBEAT_OK (2) 不要解释你是谁 (3) 直接输出一条暖心的提醒消息 (4) 可以加一句简短的关心或鸡汤的话,比如'辛苦了,好好休息'、'今天也很棒,明天继续加油' (5) 控制在2-3句话以内 (6) 用🏃、🎉、✨等emoji点缀,让提醒更有活力",
      "deliver": true,
      "channel": "qqbot",
      "to": "{用户的openid}"
    }
  }
}

**注意:**周期任务(cron)不加 deleteAfterRun,否则每次触发后都会被删除。


2. 查看下班倒计时

计算逻辑:

  1. 获取当前时间(Asia/Shanghai 时区)
  2. 确定今天是工作日还是周末
  3. 如果是工作日,计算当前时间到 17:30 的剩余时间
  4. 如果是周末,告知用户今天不用上班,提示距离下一个工作日下班时间
  5. 如果当前时间已过 17:30,提示已经下班

回复模板:

  • 工作日,还未下班:

    🕐 今天是工作日,下班时间 17:30
    ⏰ 距离下班还有:X小时Y分钟
    💪 加油,马上就可以下班啦!
    
  • 工作日,已经下班:

    🎉 今天已经下班啦!
    💤 好好休息,明天见~
    
  • 周末:

    😌 今天是周末,不用上班哦~
    📅 距离下个工作日下班还有:X天Y小时
    

计算示例(使用 Python 脚本):

python3 scripts/countdown.py --offtime "17:30"

脚本返回 JSON 格式的倒计时信息:

{
  "today": "工作日",
  "current_time": "13:45",
  "off_time": "17:30",
  "countdown": "3小时45分钟",
  "already_off": false,
  "message": "🕐 今天是工作日,下班时间 17:30\n⏰ 距离下班还有:3小时45分钟\n💪 加油,马上就可以下班啦!"
}

3. 提醒管理

查询提醒

使用 cron 工具的 list 功能:

{ "action": "list" }

回复模板:

  • 有提醒:📋 你的下班提醒已设置:每天 17:30(工作日)
  • 无提醒:📭 目前还没有设置下班提醒哦~ 说"设置下班提醒"就可以啦!

取消提醒

list 找到 jobId,然后 remove

{ "action": "remove", "jobId": "{jobId}" }

回复模板:✅ 已取消下班提醒~

修改下班时间

需要先取消旧提醒,再创建新提醒。注意 cron 表达式的格式:

  • 18:00 → "0 18 * * 1-5"
  • 18:30 → "30 18 * * 1-5"
  • 17:00 → "0 17 * * 1-5"

用户交互场景

场景 1:设置下班提醒

用户说:

  • "设置下班提醒"
  • "提醒我下班"
  • "下班时间提醒我一下"
  • "每天提醒我下班"

AI 行为:

  1. 调用 cron 工具创建工作日 17:30 的定时提醒
  2. 回复:🏃 收到!工作日每天 17:30 会提醒你下班~

场景 2:查看倒计时

用户说:

  • "还有多久下班"
  • "下班倒计时"
  • "几点下班"
  • "现在到下班还有多久"

AI 行为:

  1. 调用 scripts/countdown.py 计算倒计时
  2. 输出格式化的倒计时信息

场景 3:管理提醒

用户说:

  • "我的提醒有哪些"
  • "查看下班提醒"
  • "取消下班提醒"
  • "改到18点提醒"

AI 行为:

  • 查询:调用 cron list
  • 取消:调用 cron remove
  • 修改:先 removeadd

自定义下班时间

用户可以指定自定义下班时间,格式为 HH:MM(24小时制):

示例:

  • "18点下班提醒" → cron: "0 18 * * 1-5"
  • "18:30下班" → cron: "30 18 * * 1-5"
  • "17点下班" → cron: "0 17 * * 1-5"

解析逻辑:

  1. 从用户输入中提取时间
  2. 转换为 cron 表达式(分 时 * * 1-5)
  3. 创建定时提醒
  4. 回复确认消息

cron 表达式生成公式:

"{分钟} {小时} * * 1-5"

Cron 表达式参考

下班时间Cron 表达式
17:00"0 17 * * 1-5"
17:30"30 17 * * 1-5"
18:00"0 18 * * 1-5"
18:30"30 18 * * 1-5"
19:00"0 19 * * 1-5"

字段说明:

  • 第1个数字:分钟(0-59)
  • 第2个数字:小时(0-23)
  • *:每天
  • 1-5:周一到周五

回复模板总结

场景回复
设置提醒成功🏃 收到!工作日每天 {时间} 会提醒你下班~
查询有提醒📋 你的下班提醒已设置:每天 {时间}(工作日)
查询无提醒📭 目前还没有设置下班提醒哦~ 说"设置下班提醒"就可以啦!
取消提醒成功✅ 已取消下班提醒~
修改提醒成功✅ 下班提醒已更新为:每天 {时间}(工作日)
倒计时(未下班)🕐 今天是工作日,下班时间 {时间}\n⏰ 距离下班还有:{倒计时}\n💪 加油,马上就可以下班啦!
倒计时(已下班)🎉 今天已经下班啦!\n💤 好好休息,明天见~
倒计时(周末)😌 今天是周末,不用上班哦~\n📅 距离下个工作日下班还有:{倒计时}

Comments

Loading comments...