此技能在用户请求早安问候、请求配置每日早安问候、请求手动补发今天的早安问候或请求备份版本时触发
Daily Morning Greetings是一项面向实际任务的技能,主要用于这个 skill 现在走“脚本取数 + 固定模板输出”的稳定路径:;先运行本地脚本,取目标城市当天上下文 JSON;
手动触发和“换一条”走本地伪随机轮换,并尽量做到同日同窗不重复;Supported Int。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
这个 skill 现在走“脚本取数 + 固定模板输出”的稳定路径:
formatted 字段输出最终文案。这个 skill 需要识别 3 类中文提示词:
请配置早安问候为每天早上固定6点请配置早安问候为每天早上固定7点请配置早安问候为每天早上7点半来一条今天的早安问候手动补发一次今天的早安问候换一条再来个备选版所有用户可见文案统一叫“早安问候”,不要再写“晨间问候”。
公开版默认定时时间是 06:00,但用户如果明确指定 07:00、07:30 或别的时间段,应优先按用户指定时间配置。
配置早安问候定时任务时,默认同时开启失败提醒。
Asia/Shanghai 场景,天气数据优先来自 Open-Meteowttr.inOpen-Meteoreferences/wisdom_pairs.json触发后第一步必须运行:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --variant 0
如需指定城市,使用:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --variant 0 --city "Beijing" --city-zh "北京" --timezone "Asia/Shanghai"
如果需要更便于程序解析,可用:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --variant 0 --compact
如果是 cron 定时标准版,或需要在保留主聊天投递的同时自动补发微信 bot,优先使用包装脚本:
python3 "$SKILL_DIR/scripts/dispatch_morning_greeting.py" --variant 0 --deliver-weixin auto --print-message
推荐的 cron 内联 payload 文案是:
Run this command first: python3 "$SKILL_DIR/scripts/dispatch_morning_greeting.py" --variant 0 --deliver-weixin auto --print-message . Then return the stdout exactly as the final answer. Preserve blank lines. Do not read any skill or prompt file unless strictly necessary. Do not add any extra text.
如果是手动触发,希望当天同一窗口尽量不重复,使用:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --selection-mode manual --scope-key "chat:example"
如果是备选版,改用非 0 的 variant:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --variant 1
如果是“换一条 / 再来个备选版”,应优先改用:
python3 "$SKILL_DIR/scripts/build_daily_context.py" --selection-mode alternate --scope-key "chat:example"
如果是“手动补发一次今天的早安问候”,并希望在当前聊天正常回显的同时,自动补发到已配置的微信 bot,优先使用:
python3 "$SKILL_DIR/scripts/dispatch_morning_greeting.py" --selection-mode manual --scope-key "chat:example" --deliver-weixin auto --print-message
默认地点是上海。
如果你希望在自己的环境里长期固定成别的城市,可以设置这些环境变量:
export MORNING_WEATHER_CITY="Shanghai" export MORNING_WEATHER_CITY_ZH="上海" export MORNING_WEATHER_TIMEZONE="Asia/Shanghai" export MORNING_WEATHER_LATITUDE="31.2304" export MORNING_WEATHER_LONGITUDE="121.4737"
如果只是某一次调用临时换城市,优先使用命令行参数,不必改环境变量。
脚本会给出:
variantselection脚本返回的 JSON 是唯一事实来源:
location:目标地点与时区;若未指定,默认上海variant:当前是标准版还是第几个备选版selection:当前是标准版还是手动伪随机轮换,以及是否绑定了某个会话作用域date_context:今天日期、星期、当前时段season_hint:季节语境提示weather:天气事实、天气图标、穿衣建议语句、数据来源greeting:开头问候图标与文本wisdom:智慧人物、短句、关联祝福语、结尾图标formatted:最终三段成品文案如果 weather.ok 是 false:
你是一个懂节气和生活分寸的布衣小军师,但不是算命先生。
**、>、编号、额外标题固定输出 3 段,段间保留 1 个空行,除此之外不要多写任何内容:
第 1 段是 formatted.greeting
第 2 段是 formatted.weather
第 3 段是 formatted.wisdom
如果脚本里存在 formatted.message,优先直接原样输出这个字段,不要自己再拼接。
这个字段内部必须是下面这个结构:
formatted.greeting
formatted.weather
formatted.wisdom
当用户说 请配置早安问候为每天早上固定6点、请配置早安问候为每天早上固定7点、请配置早安问候为每天早上7点半 或语义等价的话:
6点,就按 06:007点,就按 07:007点半,就按 07:3006:00Asia/Shanghai,除非用户明确指定别的时区。daily-morning-greetings 这个前缀,避免和别的任务混淆。SKILL.md;必须改用内联轻量 payload。payload.messagepython3 "$SKILL_DIR/scripts/dispatch_morning_greeting.py" --variant 0 --deliver-weixin auto --print-messageReturn the stdout exactly as the final answer. Preserve blank lines. Do not read any skill or prompt file unless strictly necessary. Do not add any extra text.sessionTarget = isolatedlightContext = truethinking = off 或 minimaltimeoutSeconds = 240feishu、openclaw-weixin 或其他已安装聊天插件,应优先把 cron 主 delivery 绑定到当前渠道chat:、插件渠道的当前 peer / chat target,就直接写入 delivery.todispatch_morning_greeting.py --deliver-weixin auto 只是“如已配置企业微信 webhook 则额外补发一次”的增强项,不是微信主渠道定时投递的前置条件failureAlert:after = 1mode = announcecooldown = 6hchannel / to 默认跟随这条早安问候本身的主投递目标;如果用户没明确指定,就沿用当前聊天或最近路由failureAlert 也应优先跟随当前聊天所在渠道与当前会话目标,不要默认退回飞书用户路由SKILL.md / skill 内 prompt、没开 failureAlert,或没设置轻量参数,应一并更新,不要漏掉。如果当前环境没有可用的 cron 工具或 CLI,再退回给用户一条可以直接复制执行的命令。
当用户说:
来一条今天的早安问候手动补发一次今天的早安问候都按“立即重新获取并发送一次标准版”处理,但“手动补发”要额外兼容外部渠道补发:
--variant 0;应改用 --selection-mode manual。--scope-key:chat: 或插件渠道对应的当前会话 targetdispatch_morning_greeting.py --deliver-weixin auto,这样在当前聊天正常回显的同时,也会尝试补发到已配置的微信 bot。如果用户当前是在飞书或其他非微信渠道里,要求:
请主动推送一条早安问候到微信聊天窗口把这条早安问候发到微信先做前置校验,再决定是否发送:
@tencent-weixin/openclaw-weixin*@im.wechat 之类目标 IDopenclaw-weixin当用户说:
换一条再来个备选版按“立即重新获取并发送一个新的备选版”处理:
+1;应改用 --selection-mode alternate。--scope-key,这样才能做到同日同窗尽量不重复。这个 skill 只负责生成和配置“早安问候”的内容逻辑,不负责在技能包内部自带定时器。
如果你想每天固定时间自动发出,请在你自己的 OpenClaw 环境里额外配置 openclaw cron add 或 openclaw cron edit。也就是说:
dispatch_morning_greeting.py 负责“如有微信 bot 配置则额外补发一次”如果用户是在微信 bot 当前对话里配置早安问候,优先把 cron 的主 delivery 直接绑定到这个当前微信会话。 企业微信 webhook 只用于“同一条消息额外双发到另一个 bot 入口”,不是当前微信会话定时投递的必要条件。
老版本如果把整份 SKILL.md,或者 skill 目录里的 prompt 文件,直接塞给 cron,在较慢的远端环境里容易因为自动补读 skill 上下文而延迟,甚至超时。
因此定时任务必须改走内联轻量 payload,而不是在触发时再读完整 skill:
payload.message 里写命令和输出约束dispatch_morning_greeting.py --variant 0 --deliver-weixin auto --print-messageDo not read any skill or prompt file unless strictly necessarylightContextthinking off 或 thinking minimaltimeoutSeconds 设为 240dispatch_morning_greeting.py 会按下面顺序自动探测微信 bot 配置:
WEIXIN_BOT_WEBHOOK_URLWECHAT_BOT_WEBHOOK_URLWEIXIN_WEBHOOK_URLWECHAT_WEBHOOK_URLWEIXIN_BOT_KEYWECHAT_BOT_KEYWX_BOT_KEYWEIXINBOTWEBHOOKURLWECHATBOTWEBHOOKURLWEIXINBOTKEYWECHATBOTKEYWXBOTKEY~/.openclaw/openclaw.jsonOPENCLAW_CONFIG_PATHopenclaw-weixin / weixin / wechat / wxbot 的 plugin 或 channel 配置块webhook_url / webhook_key;不会把 openclaw-weixin 这类个人微信渠道里的登录 token / access_token 误当成企业微信机器人 key探测命中后:
--deliver-weixin auto 会安静跳过,不影响主渠道--deliver-weixin requiredopenclaw-weixin 这类真实聊天渠道和可解析 targetformatted.message;如果没有这个字段,再按 formatted.greeting、formatted.weather、formatted.wisdom 的顺序输出。SKILL.md。lightContext,并使用 thinking off 或 thinking minimal。timeoutSeconds 设为 240,避免远端冷启动或排队时误超时。--selection-mode manual,有稳定路由时再带上 --scope-key。--selection-mode alternate,并沿用同一个 --scope-key。dispatch_morning_greeting.py,不要让模型自己手拼 webhook 或自己猜配置路径。--deliver-weixin auto 误解释成“没有 webhook 就一定不能给当前微信会话定时发送”;当前会话主投递和 webhook 双发是两条不同链路。相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章