en un clic
en un clic
| name | qqbot-remind |
| description | QQBot 定时提醒。支持一次性和周期性提醒的创建、查询、取消。当通过 QQ 通道通信且涉及提醒/定时任务时使用。 |
| metadata | {"openclaw":{"emoji":"⏰","requires":{"config":["channels.qqbot"]}}} |
当用户提到「提醒」「闹钟」「定时」「X分钟/小时后」「每天X点」「叫我」等任何涉及延时或定时的请求时,你必须调用工具,绝对不能只用自然语言回复说"好的,我会提醒你"!
你没有内存或后台线程,口头承诺"到时候提醒"是无效的——只有调用工具才能真正注册定时任务。
qqbot_remind 工具)第一步:调用 qqbot_remind 工具,传入简单参数:
| 参数 | 说明 | 示例 |
|---|---|---|
action | 操作类型 | "add" / "list" / "remove" |
content | 提醒内容 | "喝水" |
to | 目标地址(可选,系统自动获取,通常无需填写) | — |
time | 时间(相对时间或 cron 表达式) | "5m" / "1h30m" / "0 8 * * *" |
jobId | 任务 ID(仅 remove) | "xxx" |
第二步:qqbot_remind 会返回 cronParams,你必须立即将 cronParams 的值原样作为参数调用 cron 工具。禁止修改、省略或重组 cronParams 中的任何字段(尤其是 delivery 对象中的 accountId)。
第三步:根据 cron 工具的返回结果,回复用户。
用户说:"5分钟后提醒我喝水"
qqbot_remind:{ "action": "add", "content": "喝水", "time": "5m" }cronParams → 立即调用 cron 工具,参数为该 cronParams⏰ 好的,5分钟后提醒你喝水~cron 工具)仅当
qqbot_remind工具不可用时使用以下方式。
payload.kind 必须是
"agentTurn",绝对不能用"systemEvent"!systemEvent只在 AI 会话内部注入文本,用户收不到 QQ 消息。
5 个不可更改字段:
| 字段 | 固定值 | 原因 |
|---|---|---|
payload.kind | "agentTurn" | systemEvent 不会发 QQ 消息 |
delivery.mode | "announce" | 投递模式 |
delivery.channel | "qqbot" | QQ 通道标识 |
delivery.to | 用户 openid | 从 To 字段获取 |
sessionTarget | "isolated" | 隔离会话避免污染 |
delivery.accountId必须填写当前会话的账户 ID(如果已知),以确保多账户场景下消息通过正确的机器人账户发送。
schedule.atMs必须是绝对毫秒时间戳(如1770733800000),不支持"5m"等相对字符串。 计算方式:当前时间戳ms + 延迟毫秒。
{
"action": "add",
"job": {
"name": "{任务名}",
"schedule": { "kind": "at", "atMs": "{当前时间戳ms + N*60000}" },
"sessionTarget": "isolated",
"wakeMode": "now",
"deleteAfterRun": true,
"payload": {
"kind": "agentTurn",
"message": "你是一个暖心的提醒助手。请用温暖、有趣的方式提醒用户:{提醒内容}。要求:(1) 不要回复HEARTBEAT_OK (2) 不要解释你是谁 (3) 直接输出一条暖心的提醒消息 (4) 可以加一句简短的鸡汤或关怀的话 (5) 控制在2-3句话以内 (6) 用emoji点缀"
},
"delivery": {
"mode": "announce",
"channel": "qqbot",
"to": "{openid}",
"accountId": "{accountId}"
}
}
}
{
"action": "add",
"job": {
"name": "{任务名}",
"schedule": { "kind": "cron", "expr": "0 8 * * *", "tz": "Asia/Shanghai" },
"sessionTarget": "isolated",
"wakeMode": "now",
"payload": {
"kind": "agentTurn",
"message": "你是一个暖心的提醒助手。请用温暖、有趣的方式提醒用户:{提醒内容}。要求:(1) 不要回复HEARTBEAT_OK (2) 不要解释你是谁 (3) 直接输出一条暖心的提醒消息 (4) 可以加一句简短的鸡汤或关怀的话 (5) 控制在2-3句话以内 (6) 用emoji点缀"
},
"delivery": {
"mode": "announce",
"channel": "qqbot",
"to": "{openid}",
"accountId": "{accountId}"
}
}
}
周期任务不加
deleteAfterRun。群聊to格式为"qqbot:group:{group_openid}"。
| 场景 | expr |
|---|---|
| 每天早上8点 | "0 8 * * *" |
| 每天晚上10点 | "0 22 * * *" |
| 工作日早上9点 | "0 9 * * 1-5" |
| 每周一早上9点 | "0 9 * * 1" |
| 每周末上午10点 | "0 10 * * 0,6" |
| 每小时整点 | "0 * * * *" |
周期提醒必须加
"tz": "Asia/Shanghai"。
| 用户说法 | action | time 格式 |
|---|---|---|
| "5分钟后提醒我喝水" | add | "5m" |
| "1小时后提醒开会" | add | "1h" |
| "每天8点提醒我打卡" | add | "0 8 * * *" |
| "工作日早上9点提醒" | add | "0 9 * * 1-5" |
| "我有哪些提醒" | list | — |
| "取消喝水提醒" | remove | — |
| "修改提醒时间" | remove → add | — |
| "提醒我"(无时间) | 需追问 | — |
纯相对时间("5分钟后"、"1小时后")可直接计算,无需确认。时间模糊或缺失时需追问。
⏰ 好的,{时间}后提醒你{内容}~⏰ 收到,{周期}提醒你{内容}~📋 目前没有提醒哦~ 说"5分钟后提醒我xxx"试试?✅ 已取消"{名称}"openclaw cron add \ --name "下班提醒" \ --at "2026-03-26T21:42:31+08:00" \ --message "test" \ --to …``
通过官方脚本将 openclaw-qqbot 插件升级到最新 npm 版本。当用户要求更新 QQ 机器人插件、升级 qqbot 扩展或同步官方最新版时使用。
QQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
QQ 频道管理技能。查询频道列表、子频道、成员、发帖、公告、日程等操作。使用 qqbot_channel_api 工具代理 QQ 开放平台 HTTP 接口,自动处理 Token 鉴权。当用户需要查看频道、管理子频道、查询成员、发布帖子/公告/日程时使用此技能。