Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

get tomorrow weather of beijing , with Chinese almanac information

v1.0.2

获取北京明日天气预报和黄历,每天下午6点推送。包含气温对比提醒(波动超5℃警告)、雨天带伞提醒、以及第二天的黄历信息。

0· 386·1 current·1 all-time
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
技能名与描述(获取北京明日天气并推送含黄历信息)与运行指令基本一致:使用 wttr.in 获取天气、通过网页搜索或可选黄历 API 获取黄历、再用消息工具推送。唯一值得注意的轻微不一致是 SKILL.md 在示例 URL 中包含 mxnzp 的 app_id/app_secret 占位符,但 registry 元数据未声明任何必需的环境变量或凭据。
Instruction Scope
运行步骤限定在获取天气(curl wttr.in)、获取黄历(优先 API,备选为网页搜索)和通过 message 工具发消息。指令不要求读取系统文件、访问不相关凭据或将数据发送到未说明的外部端点。使用 batch_web_search 与 message 工具 属于平台工具调用,属于技能目的范围。
Install Mechanism
无安装规范、无代码文件,属于 instruction-only,最低磁盘/执行风险。仅声明需要 curl 二进制,这与使用 curl 调用 wttr.in 一致。
Credentials
注册表显示无需任何环境变量或凭据,这是合理的(wttr.in 无需密钥)。但 SKILL.md 展示了一个可选的 mxnzp API 调用示例,其中包含 app_id 和 app_secret 占位符('your_app_id'/'your_secret'),且未在 requires.env 中声明。另一个隐含需求是需要知道接收者的飞书 openid 或由 message 工具在运行时提供接收信息——这些也没有在元数据中明确说明。
Persistence & Privilege
flags: always=false,技能不会强制常驻。默认允许模型自主调用(平台默认),但没有请求修改其它技能或系统配置,也没有声明持久化安装步骤。
Assessment
技能总体内部一致且用途明确,但在安装/使用前请确认: - 如果你打算让技能使用 mxnzp 黄历 API,你需要提供 app_id/app_secret;当前元数据没有声明这些凭据,因此需要在配置或调用时明确传入。否则技能会退回到网页搜索抓取黄历。 - 确认消息推送所用的 message 工具(飞书)如何接收目标 openid/目标用户:确保你信任该工具并理解谁会收到消息。 - 技能会调用外部服务(wttr.in 与搜索结果);如果你对隐私或数据外发敏感,评估这些请求是否接受。 - 技能提到由 cron 在 18:00 触发,但没有安装/注册定时任务的具体步骤;确认你的运行环境如何安排定时执行(或手动触发)。 总体而言可以安装,但在把凭据或收件人信息交给技能前先确认运行细节与信任边界。

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🌤️ Clawdis
Binscurl
latestvk978g097psanje5s67y8hxcd51821f22
386downloads
0stars
3versions
Updated 5h ago
v1.0.2
MIT-0

Tomorrow Weather Skill — 明日天气推送

功能概述

每天下午 6:00(北京时间)自动执行,推送以下内容给用户:

  1. 明日天气 — 北京明日天气状况 + 最高/最低气温
  2. 气温变化提醒 — 今日 vs 明日最高气温,波动超过 5℃ 时发出警告
  3. 雨天提醒 — 明日有雨(小雨/中雨/大雨/暴雨/雷雨/雨夹雪等)时提醒带伞
  4. 明日黄历 — 宜/忌事项

执行步骤

Step 1:获取今日和明日天气

使用 wttr.in 获取北京两天的天气数据(JSON格式):

curl -s "https://wttr.in/Beijing?format=j1"

返回的 JSON 中:

  • weather[0] = 今日天气,maxtempC 为今日最高气温
  • weather[1] = 明日天气,包含:
    • maxtempC — 明日最高气温
    • mintempC — 明日最低气温
    • hourly[4].weatherDesc[0].value — 天气描述(英文)
    • hourly[4].chanceofrain — 降雨概率

中文天气描述映射(根据英文描述判断):

  • Sunny / Clear → 晴
  • Partly Cloudy → 多云
  • Cloudy / Overcast → 阴
  • Rain / Drizzle / Light rain → 小雨
  • Moderate rain → 中雨
  • Heavy rain → 大雨
  • Thunderstorm → 雷阵雨
  • Snow / Blizzard → 雪
  • Sleet → 雨夹雪
  • Mist / Fog → 雾/霾

Step 2:获取明日黄历

使用以下 API 获取黄历(根据明日实际日期构造 URL):

# 先计算明天日期
TOMORROW=$(date -d "+1 day" +%Y%m%d)
curl -s "https://www.mxnzp.com/api/holiday/single/${TOMORROW}?ignoreHoliday=false&app_id=your_app_id&app_secret=your_secret"

备用方案(无需 API Key): 直接搜索获取黄历信息:

使用 batch_web_search 搜索:北京 {明日日期} 黄历 宜忌

从搜索结果中提取:

  • 宜:适合做的事(2-4项)
  • 忌:不适合做的事(2-4项)

Step 3:构建推送内容

按以下逻辑组装消息:

**🌤 明日天气预报(北京)**

明天天气是{天气描述},最高气温{maxtempC}℃,最低气温{mintempC}℃。

{气温变化提醒(条件触发)}
{雨天提醒(条件触发)}

**📅 明日黄历({具体日期,如2月29日})**
✅ 宜:{宜1}、{宜2}、{宜3}
❌ 忌:{忌1}、{忌2}、{忌3}

---
🤖 Jay · 天气助手

条件触发规则:

  • 气温波动提醒(满足任一触发):

    • 明日最高气温 - 今日最高气温 > 5℃ → 追加:⚠️ 明日气温较今日上升超过5℃(今日{今日气温}℃→明日{明日气温}℃),注意增减衣物!
    • 今日最高气温 - 明日最高气温 > 5℃ → 追加:⚠️ 明日气温较今日下降超过5℃(今日{今日气温}℃→明日{明日气温}℃),注意保暖!
  • 雨天提醒(满足任一触发):

    • 天气描述包含"雨"字 → 追加:☂️ 明日有雨,记得带伞!
    • chanceofrain > 50 → 追加:☂️ 明日降雨概率较高({概率}%),建议带伞出门。

Step 4:通过飞书发送给用户

使用 message tool,发送给用户 你的飞书openid,channel 为 feishu。


注意事项

  • 天气数据来源:wttr.in(免费,无需 API Key)
  • 黄历优先通过搜索获取,确保日期准确(取明日实际日期)
  • 气温单位统一使用摄氏度(℃)
  • 推送时间:每天 18:00(Asia/Shanghai)
  • 若 wttr.in 请求失败,重试一次;仍失败则推送"天气数据获取失败,请稍后查看"

触发方式

  • 定时任务(主要):每天 18:00 由 cron 自动触发
  • 手动触发:用户说"发送明日天气"、"明天天气怎么样"、"天气推送"时激活

Comments

Loading comments...