auto: sync OpenClaw config 2026-07-31 20:00
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
---
|
||||
name: "birthday-reminder"
|
||||
description: "\"管理家人/朋友生日提醒。农历或阳历生日,每年换算公历,生日前7天、前3天、当天通过钉钉提醒杨轩。\""
|
||||
status: proposal
|
||||
version: "v1"
|
||||
date: "2026-07-31T11:29:54.202Z"
|
||||
---
|
||||
|
||||
# 生日提醒 skill
|
||||
|
||||
统一管理杨轩的家人/朋友生日提醒。支持农历或阳历生日,每年换算公历日期,在生日**前7天、前3天、当天**通过钉钉当前对话提醒杨轩。
|
||||
|
||||
## 触发场景
|
||||
|
||||
- 杨轩提供新的生日信息(农历或阳历)
|
||||
- 需要查询/修改/删除某个人的生日提醒
|
||||
- 需要为下一年设置生日提醒
|
||||
|
||||
## 成员生日库(记录于 MEMORY.md)
|
||||
|
||||
| 人物 | 生日类型 | 出生日期 | 说明 |
|
||||
|------|---------|---------|------|
|
||||
| 汪礼平 | 农历 | 1968年六月二十日 | 三次提醒 |
|
||||
| 杨安顺 | 农历 | 1968年八月十八日 | 三次提醒 |
|
||||
| 王芳 | 农历 | 1993年十月初七日 | 三次提醒 |
|
||||
| 杨锦书 | 阳历 | 2021年11月10日 | 卷儿,阳历固定 |
|
||||
|
||||
## 换算规则
|
||||
|
||||
- **农历生日**:每年农历日期对应的公历日期都不同,需要用 lunar_python 逐年换算
|
||||
- **阳历生日**:日期固定,不换算(如杨锦书每年都是11月10日)
|
||||
|
||||
农历换算命令(需要 lunar_python 已安装):
|
||||
|
||||
```bash
|
||||
python3 -c "
|
||||
from lunar_python import Lunar
|
||||
for year in range(2026, 2031):
|
||||
lunar = Lunar.fromYmd(year, 8, 18) # 月, 日(农历)
|
||||
solar = lunar.getSolar()
|
||||
print(f'{year}年农历8月18日 = 公历 {solar.getYear()}-{solar.getMonth():02d}-{solar.getDay():02d}')
|
||||
"
|
||||
```
|
||||
|
||||
## 提醒时间点计算
|
||||
|
||||
每年按公历生日计算三个提醒日,**当天 0 点(UTC)触发**:
|
||||
|
||||
- 前7天 = 生日 - 7天
|
||||
- 前3天 = 生日 - 3天
|
||||
- 当天 = 生日当天
|
||||
|
||||
## 创建 cron 任务(核心流程)
|
||||
|
||||
每个生日创建**3个一次性 cron 任务**(前7天/前3天/当天),使用 `isolated` session + announce 投递到钉钉。
|
||||
|
||||
关键投递参数(**必须显式设置,否则不会推送到钉钉**):
|
||||
- `--session isolated`
|
||||
- `--announce --channel dingtalk-connector --to 0464031658857345`
|
||||
- `--wake now --delete-after-run`
|
||||
|
||||
命令模板:
|
||||
|
||||
```bash
|
||||
cd /home/yangxuan/.openclaw && openclaw cron create "<UTC时间ISO>" \
|
||||
--name "<姓名>生日提前7天" \
|
||||
--message "🎂 提醒:<姓名>生日快到了!7天后<br>就是生日。" \
|
||||
--session isolated --announce --channel dingtalk-connector \
|
||||
--to "0464031658857345" --wake now --delete-after-run
|
||||
```
|
||||
|
||||
注意:`--at` 时间不带时区按 UTC 处理。北京时间 = UTC+8。
|
||||
|
||||
## 步骤
|
||||
|
||||
1. 记录/更新生日信息到 MEMORY.md 的"🎂 生日提醒"区域
|
||||
2. 若农历生日,用 lunar_python 换算当年及下一年的公历日期;若阳历则固定
|
||||
3. 计算三个提醒日(前7天/前3天/当天)
|
||||
4. 为每年分别创建3个一次性 cron 任务(isolated + announce 钉钉)
|
||||
5. 验证:`openclaw cron list` 确认任务已创建且 delivery 为 dingtalk-connector
|
||||
6. 更新 MEMORY.md 记录已完成设置的年份
|
||||
|
||||
## 验证
|
||||
|
||||
创建后必须确认任务 delivery 已配置为 `dingtalk-connector:0464031658857345`,否则提醒不会推送到钉钉(main session 的 system-event 默认不投递)。
|
||||
|
||||
## 注意事项
|
||||
|
||||
- **当年提醒时效**:若当年提醒日已过,从下一年开始设置
|
||||
- 任务为一次性,运行后自动删除;下一年需重新换算农历并新建
|
||||
- 农历生日每年代入 lunar_python 换算公历日期(lunar_python 已通过 `pip install --break-system-packages --user lunar_python` 安装)
|
||||
@@ -0,0 +1 @@
|
||||
{"schema":"openclaw.skill-workshop.proposal.v1","id":"birthday-reminder-20260731-b22c95216e","kind":"create","status":"applied","title":"Create birthday-reminder","description":"\"管理家人/朋友生日提醒。农历或阳历生日,每年换算公历,生日前7天、前3天、当天通过钉钉提醒杨轩。\"","createdAt":"2026-07-31T11:29:54.202Z","updatedAt":"2026-07-31T11:33:42.919Z","createdBy":"skill-workshop","origin":{"agentId":"main","sessionKey":"agent:main:dingtalk-connector:direct:0464031658857345","runId":"4a92a4e4-442d-4327-90d0-440505518eb3","messageId":"msg003iQyZFijTOfEB9HpgwIg=="},"proposedVersion":"v1","draftFile":"PROPOSAL.md","draftHash":"68a3da0aa70ccd19d727fb8c3edc9bb50fd0178465c0c9ae927d9c7191fc98c2","target":{"skillName":"birthday-reminder","skillKey":"birthday-reminder","skillDir":"/home/yangxuan/.openclaw/workspace/skills/birthday-reminder","skillFile":"/home/yangxuan/.openclaw/workspace/skills/birthday-reminder/SKILL.md","source":"openclaw-workspace"},"scan":{"state":"clean","scannedAt":"2026-07-31T11:33:42.888Z","critical":0,"warn":0,"info":0,"findings":[]},"goal":"统一管理杨轩家庭成员/朋友的生日提醒:记录生日信息(农历/阳历)、每年换算公历生日、创建三次提醒 cron 任务、维护长期记忆。实现一套可复用的标准化流程。","appliedAt":"2026-07-31T11:33:42.919Z"}
|
||||
@@ -0,0 +1 @@
|
||||
{"schema":"openclaw.skill-workshop.rollback.v1","proposalId":"birthday-reminder-20260731-b22c95216e","writtenAt":"2026-07-31T11:33:42.892Z","targetSkillFile":"/home/yangxuan/.openclaw/workspace/skills/birthday-reminder/SKILL.md","action":"create"}
|
||||
Reference in New Issue
Block a user