OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  birthday-reminder:使用自然语言管理生日提醒的智能助手

birthday-reminder:使用自然语言管理生日提醒的智能助手

 
  desktop ·  2026-02-04 17:19:32 · 3 次点击  · 0 条评论  

名称: birthday-reminder
描述: 使用自然语言管理生日。将生日信息存储在 /home/clawd/clawd/data/birthdays.md 文件中,可获取即将到来的生日提醒并计算年龄。当用户提及生日、想要添加/记住某人生日、查看即将到来的生日或询问某人的年龄/生日时使用。能理解诸如“X hat am DD.MM. Geburtstag”、“Wann hat X Geburtstag?”、“Nächste Geburtstage”等短语。


生日提醒技能

使用自然语言管理生日。信息存储在 data/birthdays.md 文件中,支持自然语言查询。

存储

生日信息存储在 /home/clawd/clawd/data/birthdays.md 文件中:

# 生日列表

- **Valentina** - 14.02.2000 (即将 26 岁)
- **Max** - 15.03.1990

自然语言模式

添加生日

当用户说出类似以下内容时:
- "Valentina 的生日是 2 月 14 日"
- "添加:Max,生日 1990年3月15日"
- "X 出生于 1985年5月10日"

执行操作:
1. 解析姓名和日期
2. 提取年份(如果提供)
3. 计算即将到来的年龄:生日年份 - 出生年份
4. 将信息追加到 /home/clawd/clawd/data/birthdays.md 文件
5. 确认并附带年龄信息

查询生日

当用户询问:
- "Valentina 什么时候过生日?"
- "接下来有哪些生日?"
- "Valentina 多大了?"
- "下一个生日"

执行操作:
1. 读取 /home/clawd/clawd/data/birthdays.md 文件
2. 解析所有条目
3. 计算距离每个生日的天数
4. 按即将到来的日期排序
5. 如果已知年份,则显示即将到来的年龄

列出所有生日

当用户说:
- "显示所有生日"
- "列出我的生日列表"

执行操作:
1. 读取文件
2. 显示格式化的列表,并包含距离每个生日的天数

日期解析

支持多种日期格式:
- "14. Februar" → 14.02
- "14.02." → 14.02
- "14.02.2000" → 14.02.2000
- "14.2.2000" → 14.02.2000

年龄计算

from datetime import datetime

def calculate_turning_age(birth_year, birthday_month, birthday_day):
    today = datetime.now()
    birthday_this_year = today.replace(month=birthday_month, day=birthday_day)

    if today.date() <= birthday_this_year.date():
        birthday_year = today.year
    else:
        birthday_year = today.year + 1

    return birthday_year - birth_year

距离生日的天数

def days_until(month, day):
    today = datetime.now()
    birthday = today.replace(month=month, day=day)
    if birthday < today:
        birthday = birthday.replace(year=today.year + 1)
    return (birthday - today).days

自动提醒

对于定时任务/提醒,每天检查生日并在以下情况通知:
- 生日前 7 天
- 生日前 1 天
- 生日当天

使用 scripts/reminder.py 中的 check_reminders() 逻辑。

文件格式

每行格式:- **姓名** - DD.MM.YYYY (即将 X 岁)- **姓名** - DD.MM.

保持文件按日期(月/日)排序,便于阅读。

3 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor