openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > 生日提醒

管理并计算生日提醒(阳历与农历),支持每条记录单独配置和全局默认值,支持当天提醒/提前 N 天/多次提醒和提醒时间配置,默认使用北京时间。用于需要生成或维护生日提醒方案、编写配置文件、验证提醒是否到期,并结合官方定时任务技能自动触发通知发送。

通信与消息

作者:Jeff @905583906

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.6

统计:⭐ 1 · 49 · 0 current installs · 0 all-time installs

1

安装量(当前) 0

🛡 VirusTotal :良性 · OpenClaw :良性

Package:905583906/birthday-reminder-cn

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

The skill's code, instructions, and required inputs are consistent with a local birthday reminder + notifier; it requests no unrelated credentials or installs and only uses network calls to send notifications to channels the user configures.

目的

Name/description match the provided scripts and docs. The Python scripts implement reminder calculation (solar/lunar) and multi-channel notification dispatch, which is coherent with the stated purpose.

说明范围

SKILL.md directs the agent/user to run the included Python scripts and to provide local JSON configs. Instructions only reference the birthday and notify config files and official Automation scheduling; they do not request arbitrary system files or unrelated environment variables.

安装机制

No install spec or external downloads. The repository contains local Python scripts to be run directly. No network-based install or extracted archives are used by the skill itself.

证书

The skill requests no environment variables; notification channel credentials are supplied in notify.json (e.g., Telegram bot_token/chat_id, webhook URLs). This is appropriate for a notifier, but those secrets live in a file so users should protect that file (permissions, not checked into VCS).

持久

always is false and the skill does not modify system or other skills' configs. It only runs as a local script and relies on the official Automation skill for scheduling.

综合结论

This skill appears to do what it says: calculate birthdays (solar/lunar) and send notifications to channels you configure. Before installing: (1) inspect notify.json and keep tokens/webhook URLs secret (file permissions, don't commit to public repos); (2) test with --dry-run and run the 'list' and 'check' commands to validate behavior; (3) if you schedule automatic runs, ensure the runtime environment only has network access to endpoints you t…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「生日提醒」。简介:管理并计算生日提醒(阳历与农历),支持每条记录单独配置和全局默认值,支持当天提醒/提前 N 天/多次提醒和提醒时间配置,默认使用北京时间。用于需要生成或维护生…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/905583906/birthday-reminder-cn/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: birthday-reminder
description: 管理并计算生日提醒(阳历与农历),支持每条记录单独配置和全局默认值,支持当天提醒/提前 N 天/多次提醒和提醒时间配置,默认使用北京时间。用于需要生成或维护生日提醒方案、编写配置文件、验证提醒是否到期,并结合官方定时任务技能自动触发通知发送。
---

# Birthday Reminder

## 5分钟上手

### 1) 先决条件

- 已安装本技能。
- 环境可执行 `python3`(建议 3.9+)。
- 已准备官方定时任务 skill(Automation)。
- 已准备通知通道凭据(如 Telegram 的 `bot_token` 和 `chat_id`)。

### 2) 准备 `birthdays.json`

复制下面模板并按需修改:

```json
{
  "defaults": {
    "calendar": "solar",
    "timezone": "Asia/Shanghai",
    "remind_at": "09:00",
    "offset_days": [7, 1, 0],
    "leap_strategy": "skip"
  },
  "people": [
    {
      "name": "妻子",
      "calendar": "solar",
      "month": 3,
      "day": 25
    },
    {
      "name": "父母",
      "calendar": "lunar",
      "month": 8,
      "day": 8,
      "offset_days": [15, 3, 0]
    }
  ]
}
```

关键字段:

- `defaults`:全局默认值。
- `people`:生日记录列表;每一条可覆盖任意默认字段。
- `calendar`:`solar` 或 `lunar`。
- `month/day`:生日月日。
- `offset_days`:提醒提前天数数组,`0` 表示当天提醒。
- `remind_at`:提醒时间,格式 `HH:MM`。
- `timezone`:IANA 时区名,默认 `Asia/Shanghai`。
- `leap_month`:仅农历使用,是否闰月生日。
- `leap_strategy`:闰月缺失年份处理策略。
- `skip`:该年跳过。
- `use-non-leap`:该年改用同月非闰月。

### 3) 准备 `notify.json`

建议从 `assets/notify.example.json` 复制后修改。常见 Telegram 配置:

```json
{
  "message_style": "warm",
  "channels": [
    {
      "type": "telegram",
      "enabled": true,
      "bot_token": "你的_bot_token",
      "chat_id": "你的_chat_id"
    }
  ]
}
```

支持的通知类型:

- `console`
- `file`
- `webhook`
- `feishu`
- `dingtalk`
- `slack`
- `telegram`

### 4) 三步检查(推荐顺序)

先看会生成哪些提醒:

```bash
python3 scripts/birthday_reminder.py list --config /绝对路径/birthdays.json
```

再查当前是否有到期提醒:

```bash
python3 scripts/birthday_reminder.py check --config /绝对路径/birthdays.json --output json
```

最后预览发送内容(不真实发送):

```bash
python3 scripts/notify_bridge.py 
  --birthday-config /绝对路径/birthdays.json 
  --notify-config /绝对路径/notify.json 
  --dry-run
```

时间模拟(推荐格式 `yyyy-MM-DD HH:mm:ss`):

```bash
python3 scripts/notify_bridge.py 
  --birthday-config /绝对路径/birthdays.json 
  --notify-config /绝对路径/notify.json 
  --now "2026-03-18 19:00:00"
```

### 5) 自动运行(官方定时任务 skill)

在官方定时任务 skill(Automation)里定时执行:

```bash
python3 scripts/notify_bridge.py 
  --birthday-config /绝对路径/birthdays.json 
  --notify-config /绝对路径/notify.json
```

- 推荐频率:每 10 分钟。
- 推荐时区:`Asia/Shanghai`。

## 用户示例请求

- “添加一条农历八月初八的生日,并提前 15 天和当天上午 9 点提醒。”
- “把妻子生日设为阳历 3 月 25 日,默认时区北京,提前 7 天和 1 天提醒。”

### 示例:桐桐(阳历 3/18 晚上 19:00,Telegram 提醒)

`birthdays.json`:

```json
{
  "defaults": {
    "calendar": "solar",
    "timezone": "Asia/Shanghai",
    "remind_at": "09:00",
    "offset_days": [0],
    "leap_strategy": "skip"
  },
  "people": [
    {
      "name": "桐桐",
      "calendar": "solar",
      "month": 3,
      "day": 18,
      "remind_at": "19:00",
      "offset_days": [0]
    }
  ]
}
```

`notify.json`:

```json
{
  "channels": [
    {
      "type": "telegram",
      "enabled": true,
      "bot_token": "你的_bot_token",
      "chat_id": "你的_chat_id"
    }
  ]
}
```

测试发送:

```bash
python3 scripts/notify_bridge.py 
  --birthday-config /绝对路径/birthdays.json 
  --notify-config /绝对路径/notify.json 
  --now "2026-03-18 19:00:00"
```

## 常见问题

- 配置了但没收到提醒:
  - 通常是官方定时任务 skill 没触发到 `notify_bridge.py`。
- `--now` 怎么写:
  - 推荐 `yyyy-MM-DD HH:mm:ss`,例如 `2026-03-25 09:00:00`。
- 只执行了 `check` 为什么没发消息:
  - `check` 只检查;真正发送需要执行 `notify_bridge.py`。

## 问题反馈

- 代码仓库:`https://github.com/905583906/jeff-skills`
- 提交问题(Issues):`https://github.com/905583906/jeff-skills/issues`

遇到问题时,建议在 Issue 里附上:

- 你的配置片段(隐藏敏感信息)
- 执行命令
- 报错信息或截图