Manage birthdays with natural language. Store birthdays in /home/clawd/clawd/data/birthdays.md, get upcoming reminders, calculate ages. Use when the user mentions birthdays, wants to add/remember someone's birthday, check upcoming birthdays, or asks about someone's age/birthday. Understands phrases like "X hat am DD.MM. Geburtstag", "Wann hat X Geburtstag?", "Nächste Geburtstage".
Scanned 9/7/2026
Install to Claude Code
npx -y skills add modbender/skill-library-mcp --skill birthday-reminder --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Birthday Reminder?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/modbender-birthday-reminder)More formats (shields.io, HTML) on the badges page.
---
name: birthday-reminder
description: Manage birthdays with natural language. Store birthdays in /home/clawd/clawd/data/birthdays.md, get upcoming reminders, calculate ages. Use when the user mentions birthdays, wants to add/remember someone's birthday, check upcoming birthdays, or asks about someone's age/birthday. Understands phrases like "X hat am DD.MM. Geburtstag", "Wann hat X Geburtstag?", "Nächste Geburtstage".
---
# Birthday Reminder Skill
Manage birthdays naturally. Store in `data/birthdays.md`, query with natural language.
## Storage
Birthdays are stored in `/home/clawd/clawd/data/birthdays.md`:
```markdown
# Geburtstage
- **Valentina** - 14.02.2000 (wird 26)
- **Max** - 15.03.1990
```
## Natural Language Patterns
### Adding Birthdays
When user says things like:
- "Valentina hat am 14. Februar Geburtstag"
- "Füge hinzu: Max, 15.03.1990"
- "X wurde am 10.05.1985 geboren"
**Action:**
1. Parse name and date
2. Extract year if provided
3. Calculate upcoming age: `birthday_year - birth_year`
4. Append to `/home/clawd/clawd/data/birthdays.md`
5. Confirm with age info
### Querying Birthdays
When user asks:
- "Wann hat Valentina Geburtstag?"
- "Welche Geburtstage kommen als Nächstes?"
- "Wie alt wird Valentina?"
- "Nächster Geburtstag"
**Action:**
1. Read `/home/clawd/clawd/data/birthdays.md`
2. Parse all entries
3. Calculate days until each birthday
4. Sort by upcoming date
5. Show age turning if year is known
### Listing All
When user says:
- "Zeige alle Geburtstage"
- "Liste meine Geburtstage"
**Action:**
1. Read the file
2. Show formatted list with days until each
## Date Parsing
Support various formats:
- "14. Februar" → 14.02
- "14.02." → 14.02
- "14.02.2000" → 14.02.2000
- "14.2.2000" → 14.02.2000
## Age Calculation
```python
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
```
## Days Until Birthday
```python
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
```
## Automatic Reminders
For cron/reminders, check birthdays daily and notify if:
- 7 days before
- 1 day before
- On the day
Use the `check_reminders()` logic from `scripts/reminder.py`.
## File Format
Each line: `- **Name** - DD.MM.YYYY (wird X)` or `- **Name** - DD.MM.`
Keep the file sorted by date (month/day) for easier reading.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!