Files
NightStar 3d3dd79df0 Add 39 shared skills from local agent inventory
Sources: ~/.openclaw/skills, ~/.agents/skills, workshop-skills, workspace/skills
2026-09-10 16:54:57 +08:00

85 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: "remind-me"
description: "飞书加急提醒:设置定时提醒,到点自动通过飞书加急消息弹窗通知用户。支持\"X点提醒我XXX\"等自然语言。"
---
# Remind Me — 飞书加急提醒
设置定时提醒,到点自动通过飞书加急消息弹窗通知用户。支持"X点提醒我XXX"等自然语言。
## 触发条件
用户说出类似以下话语时触发:
- "X点提醒我XXX"
- "X分钟后提醒我XXX"
- "今晚8点提醒我XXX"
- "明天早上9点叫我XXX"
## 流程
### 1. 解析时间和内容
从用户话语中提取:
- **时间**:转换为 ISO-8601 UTC 时间戳(注意时区:用户在东八区 Asia/Shanghai,需减8小时转UTC)
- **内容**:提醒的具体事项
- 如果时间表述模糊(如"明天早上"),确认具体时间
### 2. 创建定时任务
用 `automations(action="add")` 创建(CLI 侧核对用 `openclaw cron list`)。⚠️ 不要用 `agentTurn` 类型:依赖 LLM,DeepSeek 高峰期会超时导致 job 失败(2026-08-12 踩坑)。也**不要**写 `payload.kind:"command"` + `argv`——该形状会被拒(实测报 `unexpected property 'command'`),现在只接受 `systemEvent` / `agentTurn` / `script`。
用 `script` 类型(code mode 里跑一次 exec),零 LLM 依赖:
```json
{
"name": "remind-me-{简短描述}",
"schedule": { "kind": "at", "at": "{ISO-8601 UTC时间}" },
"sessionTarget": "isolated",
"deleteAfterRun": true,
"delivery": { "mode": "none" },
"payload": {
"kind": "script",
"script": "const r = await exec({command: \"python3 /root/.openclaw/workspace/scripts/feishu_urgent.py '⏰ {提醒内容}'\"});\nreturn {output: r.stdout ?? JSON.stringify(r)};",
"timeoutSeconds": 60
}
}
```
关键字段:
- `schedule.kind: "at"` — 一次性定时
- `schedule.at` — UTC 时间,北京时间20:00 = `2026-07-29T12:00:00.000Z`
- `payload.kind: "script"` — code mode 里执行 shell,不走 LLM(同 daily-leetcode,用 `openclaw cron list` 查它当前 ID)
- `sessionTarget: "isolated"` + `delivery.mode: "none"` — 脚本自己发飞书加急,不需要再 announce 一条
- `deleteAfterRun: true` — 一次性 job 成功投递后自动删
- 脚本内自读 `~/.openclaw/.env` 的 `FEISHU_USER_ID`,无需显式传 user_id
- 提醒文本保持 10-30 字且不含引号,避免 JS/shell 嵌套转义出错
### 3. 确认
创建成功后告诉用户:
- 提醒时间(北京时间)
- 提醒内容
- "到点会飞书加急弹窗哦~"
想先验证链路,另建一个 2 分钟后的测试提醒触发一次(别 force 正式那条,会立刻弹一次)。
### 4. 修改/取消
用户说"取消提醒" → `automations(action="remove")` 删除最近创建的 remind-me-* 任务
## 脚本依赖
`scripts/feishu_urgent.py` 已封装飞书加急全流程:
```bash
python3 scripts/feishu_urgent.py "消息内容" [user_id]
```
内部自动完成:读配置 → 获取 token → 发消息 → 加急弹窗
## 时区换算
用户说的都是北京时间(Asia/Shanghai)。转为 UTC:
- 北京时间 - 8 小时 = UTC
- 例:今晚8点 = `2026-07-29T20:00:00+08:00` = `2026-07-29T12:00:00.000Z`