返回技能列表
writing/send-message
发消息给任意 IM 的统一入口(macOS)。 iMessage 直发;微信/QQ/钉钉/企业微信/飞书/Slack/Discord 通过 剪贴板 + 激活应用 + 弹搜索框半自动。 例如说"发 iMessage 给小明:到家了"或"发飞书给晓华:会议改到三点"。
0 次下载 macOS / Windows
描述
一个技能覆盖 macOS 上主流 IM 的发送场景。LLM 根据用户意图填 `target_im` 参数选择执行路径。 ## 参数 target_im 取值表(LLM 必读) | target_im | 目标 IM | bundle | 行为 | |---|---|---|---| | imessage | iMessage | Messages | **直发**(用 to 指定收件人) | | wechat | 微信 | WeChat | 剪贴板 + 激活 + Cmd+F | | qq | QQ | QQ | 剪贴板 + 激活 + Cmd+F | | dingtalk | 钉钉 | DingTalk | 剪贴板 + 激活 + Cmd+F | | wecom | 企业微信 | WeCom | 剪贴板 + 激活 + Cmd+F | | feishu | 飞书/Lark | Lark | 剪贴板 + 激活 + Cmd+K | | slack | Slack | Slack | 剪贴板 + 激活 + Cmd+K | | discord | Discord | Discord | 剪贴板 + 激活 + Cmd+K | ## 两种路径 **target_im = imessage(全自动直发)** - 通过 Messages.app 的 iMessage 服务直发,对方必须是 iMessage 用户。 - `to` 必填,按"精确 handle → buddy.name 子串模糊匹配"两步查找。 - 失败错误码:`NO_IMESSAGE_SERVICE` / `NO_BUDDY_MATCH: <handle>` / `AMBIGUOUS_BUDDY_MATCH: <handle> 匹配多人: <names>`。 调用方拿到错误后据情况反问用户。 **target_im = 其它(半自动)** - 把 body 写入剪贴板 → 激活目标 App → 模拟搜索快捷键弹出搜索框。 - **用户随后输对方名字 → 选中 → Cmd+V → Enter** 完成发送。 - `to` 在这条路径上不使用(搜索由用户在 IM 内手动完成)。 - 目标 App 未安装时返回 `APP_NOT_FOUND: <bundle>` 错误。 ## body 写作要求 - body 必须是组织好的完整正文,不是口语指令。 "告诉他我会迟到" → 改写为 "我会迟到,请见谅"。 - 群组消息默认更口语;工作 IM(飞书工作区、Slack)偏正式,除非 上下文表明可以随意。 - 用户指明语言/风格(粤语 / 英文 / 表情)按要求生成;缺省与对方 上下文语种一致。 ## 路由建议(LLM 选 target_im 时参考) - 用户明确说"发 iMessage / 发短信" → imessage - 用户明确说"发微信 / 发飞书 / 发 Slack ..." → 对应 IM - 用户没指定 IM、对方手机号是 iMessage 用户 → imessage - 其它情况按上下文判断或反问用户"发到哪?"