SuperAPI AI 工具集

notify

办公与效率

查看项目

更新于 11-05 02:15

技能介绍

用途:notify 用于把一段消息以 plate-bot 身份发送到 Discord,目标可以是 .agents/pstack.json 中 team 列表内的某个 GitHub 登录名,也可以是 dev(用于提醒全体队友)。如果粘贴的是某条 Discord 消息,消息会回到该消息作者处。如果目标人员不在 team 中,则应停止并说明,因为发送操作会拒绝此类收件人。

写作方式:文本需按 .agents/pstack/rules/writing.md 规定的团队文风起草,写成面向队友的单篇帖子,不含摘要块和链接列表。内容先给结果,再写读者需要做的一件事。提及 issue 或 PR 时使用带编号与标题的 Markdown 链接,标题可通过 gh issue view <N> --repo <owner/repo> --json title -q .title 读取;若某条评论要求读者行动(如重测请求),则链接该评论的 URL。应省略读者已知的信息。需要读者行动时,点名可完成该操作的技能命令,如 /triage retest plate-private#132;只有在没有对应技能时才说明应向 Claude 请求什么。正文中不得出现 shell 命令,发送端会拒绝反引号包裹的命令。

发送流程:将文本写入运行目录或暂存文件,运行 node .agents/pstack/writing-check.mjs <file> 并修正其逐行输出的问题。随后执行 node tooling/scripts/notify.mjs send --to <login 或 dev> "$(cat <file>)" 发送。即使文本看似普通也必须使用 $(cat <file>) 形式,因为 issue 标题可能含有反引号或 $。不要使用 pnpm notify send,因为 pnpm 会在双引号内把参数交给 sh,导致反引号内容或 $ 被当作命令执行。发送时会自动把文本中的每个提交哈希链接到该提交在 GitHub 上的页面,但若该哈希未被当前检出或其伴随仓库推送,则会拒绝,此时需自行链接其他仓库的提交。单条帖子受 Discord 2000 字符上限限制,超长文本应拆成多个文件分别发送。

结果反馈:发送后应告知所有者消息由谁收到以及确切的文本内容;若命令输出 skipped:,则说明相同文本在过去 24 小时内已发给该人。

适用场景:面向使用 Claude 工作的队友进行告知、提醒、重测通知或问题跟进。

限制:收件人必须属于团队;正文不能包含 shell 命令;单帖长度受限;未推送的提交哈希无法自动链接;依赖项目内的 pstack 配置、写作规则与工具脚本。