Generates a warm, compact daily briefing with weather, calendar, reminders, birthdays, and important emails for cron or chat delivery.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install daily-briefing或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install daily-briefing⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/daily-briefing/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: daily-briefing description: Generates a warm, compact daily briefing with weather, calendar, reminders, birthdays, and important emails for cron or chat delivery. metadata: {"openclaw":{"emoji":"🌅","requires":{"os":["darwin"],"bins":["curl","bash"]},"optional_bins":["icalpal","gog","himalaya"]}} user-invocable: true ---
Generates a compact, warm daily message suitable for cron delivery (stdout/chat reply). Always succeeds even with minimal context.
---
This skill uses the System Skill pattern for execution on macOS. The agent must:
curl for weather).Quick reference:
# Invoke data gatherer (waits for completion)
"{baseDir}/skills/daily-briefing/bin/run_daily_briefing.sh"
# Read output
cat /tmp/daily_briefing_data.json
---
CRITICAL: Output only the briefing text. No prefaces, no explanations, no "Done", no file paths, no tool output, no markdown code fences around the briefing.
Line 1 must begin exactly with the time-appropriate greeting:
Good {time_of_day} - Today is {Weekday}, {Month} {D}, {YYYY}. {Skies sentence}.
``` 🎉 Happy Birthday! Today is {Weekday}, {Month} {D}, {YYYY}. {Skies sentence}. ```
| Time Range | Greeting | |------------|----------| | 05:00–11:59 | Good morning | | 12:00–16:59 | Good afternoon | | 17:00–21:59 | Good evening | | 22:00–04:59 | Good night | | Unknown | Good morning (default) |
If weather is usable:
{Conditions} skies, around {TEMP}°{time_clause}{low_clause}{precip_clause}.
, with a low around {LOW}°, and a {CHANCE}% chance of {rain/snow/precipitation}If weather is not usable: Use exact fallback:
I can't access weather right now.
{Line 1: Greeting with skies sentence}
{Birthdays section - only if any today or upcoming}
{Calendar events section - only if any}
{Reminders section - only if any}
{Important emails section - only if enabled and any}
{Anchors - only if real priorities from context}
{Closing line - always required}
---
---
If interactive AND missing critical info (location/timezone/units):
emails.enabled in config; note iCloud Mail requires an app-specific password (emails.icloudPassword).If non-interactive (cron/automation):
"{baseDir}/skills/daily-briefing/bin/run_daily_briefing.sh"
scripts/daily_briefing_orchestrator.sh.After the app completes, read:
/tmp/daily_briefing_data.json
JSON structure:
{
"generated_at": "ISO timestamp",
"system": {
"timezone": "America/New_York",
"local_time": "2024-02-03T08:30:00",
"hour": 8
},
"config": {
"location": "New York, NY",
"units": "C",
"birthdays_enabled": true,
"birthdays_lookahead": 14,
"calendar_google_enabled": true,
"calendar_icloud_enabled": true,
"calendar_lookahead": 0,
"reminders_enabled": true,
"reminders_due_filter": "today",
"reminders_include_past_due": true,
"emails_enabled": false,
"emails_limit": 10,
"emails_sort_newest": true,
"emails_starred_first": true,
"emails_unread_only": true
},
"birthdays": {
"available": true,
"user_birthday_today": false,
"data": [
{"name": "Jane Doe", "date": "2024-02-03", "days_until": 0},
{"name": "John Smith", "date": "2024-02-05", "days_until": 2}
]
},
"calendar": {
"available": true,
"data": [
{"title": "Team standup", "start": "09:00", "end": "09:30", "all_day": false, "date": "2024-02-03", "source": "google"},
{"title": "Doctor appointment", "start": null, "end": null, "all_day": true, "date": "2024-02-03", "source": "icloud"}
]
},
"reminders": {
"available": true,
"data": [
{"title": "Pick up prescription", "due": "2024-02-03"}
]
},
"emails": {
"available": true,
"data": [
{"id": "abc123", "from": "Amazon", "from_email": "[email protected]", "subject": "Your order has shipped", "preview": "Your package is on its way...", "starred": false, "unread": true, "date": "2024-02-03T07:30:00Z", "source": "gmail"},
{"id": "def456", "from": "Chase", "from_email": "[email protected]", "subject": "Payment received", "preview": "We received your payment of...", "starred": true, "unread": true, "date": "2024-02-03T06:15:00Z", "source": "icloud"}
]
},
"contacts": {
"available": true,
"data": [
{"name": "Jane Doe", "email": "[email protected]"},
{"name": "John Smith", "email": "[email protected]"}
]
}
}
The agent must fetch weather directly using curl (not via orchestrator):
curl -fsSL --max-time 12 "https://wttr.in/{ENCODED_LOCATION}?format=j1"
config.location from gathered data; if empty/null, weather is unavailable.Parse from JSON response:
current_condition[0].weatherDesc[0].valuecurrent_condition[0].temp_Ccurrent_condition[0].temp_Fweather[0].maxtempCweather[0].maxtempFweather[0].mintempCweather[0].mintempFweather[0].hourly[*].chanceofrain (as integers)Units: Use config.units ("C" or "F"). Default to Celsius if unknown.
CRITICAL: Do NOT output raw curl/tool output. Do NOT use wttr.in one-line formats.
Only if config.emails_enabled is true and emails.available is true.
For each email in emails.data, use the agent's own semantic analysis to determine importance.
...
安装 Daily Briefing 后,可以对 AI 说这些话来触发它
Send a Slack message to the #engineering channel about the deployment
Formats and sends the message with relevant context, tagging the right people
Summarize all unread messages in my inbox from today
Reads messages across connected channels and returns a prioritized summary
Draft a reply to this customer complaint and send it for review
Writes an empathetic, professional response and routes it to the approval queue
将技能文件夹放到 ~/.claude/skills/daily-briefing/ 目录(个人级,所有项目可用),或 .claude/skills/daily-briefing/(项目级)。重启 AI 客户端后,用 /daily-briefing 主动调用,或让 AI 根据上下文自动发现并使用。
Daily Briefing 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Daily Briefing 可免费安装使用。请查阅仓库了解许可证信息。
Generates a warm, compact daily briefing with weather, calendar, reminders, birthdays, and important emails for cron or chat delivery.
Daily Briefing 属于「Communication」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。