Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/mateaix/mateclaw/channel_messagenpx skills add mateaix/mateclaw --skill channel_messagegit clone --depth 1 https://github.com/mateaix/mateclawWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mateaix/mateclaw/channel_message)<a href="https://agentmods.dev/skills/mateaix/mateclaw/channel_message"><img src="https://agentmods.dev/badge/skills/mateaix/mateclaw/channel_message.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00078 | $0.00837 |
| Opus 5 | $0.00039 | $0.00418 |
| Sonnet 5 | $0.00016 | $0.00167 |
| Haiku 4.5 | $0.00008 | $0.00084 |
Grade A, and why
channel_message scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
渠道消息推送
何时使用
仅在以下情况使用,这是单向推送,不会收到回复:
应该使用
- 用户明确要求"向某个渠道 / 会话发送消息"
- 异步任务完成后主动通知用户
- 定时提醒、告警、状态更新
- 将后台任务结果推送回指定会话
不应使用
- 当前对话中的正常回复(直接回复即可,不要重复推送)
- 需要等待用户回复的双向交互
- 目标渠道或会话不明确时(先询问用户)
支持渠道
wecom(企业微信)、dingtalk、feishu、telegram、discord、qq、slack、weixin
注意:只有机器人收到过消息的会话才能主动推送——平台的推送句柄是在收到入站消息时记录的。如果目标会话不在列表里,需要先让对方在该会话中给机器人发一条消息。
工作流程
第一步:查询目标会话
list_channel_sessions(channelType="wecom")
channelType可选,不传则列出当前工作区所有可推送会话- 返回每个会话的
conversation_id、渠道名称、用户名、最后活跃时间 - 有多个候选会话时,优先选最后活跃时间最近的
第二步:发送消息
send_channel_message(
conversationId="wecom:xxxx",
message="✅ 数据分析已完成,结果已保存到 report.xlsx"
)
conversationId必须来自list_channel_sessions的返回结果,不要凭空猜测message为消息正文(纯文本 / Markdown,取决于渠道能力),超过 4096 字符会被截断
常见场景示例
温度告警推送到企业微信
list_channel_sessions(channelType="wecom")
# 从结果中选目标会话,例如 conversation_id 为 wecom:DeBaDe 的会话,然后:
send_channel_message(
conversationId="wecom:DeBaDe",
message="【温度告警】中控测试会议室 当前温度 29.3℃,已超过 28℃,请及时处理"
)
任务完成通知到钉钉
list_channel_sessions(channelType="dingtalk")
send_channel_message(
conversationId="dingtalk:sw:xxxx",
message="✅ 周报生成完成,已写入知识库"
)
常见错误
- 没有先查会话就发送:
conversationId必须先通过list_channel_sessions获取 - 把正常对话回复当成推送:当前会话直接回复不需要用本技能
- 期望收到回复:
send_channel_message是单向推送,不返回用户回复 - 目标会话不存在:说明机器人从未在该会话收到过消息,请先让用户在目标会话里给机器人发一条消息
- 渠道未启用 / 不支持主动推送:按报错提示先在渠道管理中启用对应渠道
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 88 lines · 78 tokens per session scan A a0dd092ead5f
channel_message is a skill published in the GitHub repository mateaix/mateclaw (1,061 stars, last pushed 3d ago), licensed Apache-2.0. It adds 78 tokens to every session and 837 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
make-skill
Use this skill when sedimenting a session into a reusable workspace skill. Triggers when the user wants to turn the current conversation, workflow, or troubleshooting path into a SKILL.md. Phrases like 'turn this into a skill', 'remember how I did X', 'save this workflow', 'make a skill from this', and any /make-skill…
make-skill
用于把当前会话沉淀为可复用的 workspace skill。当用户希望把当前对话、工作流或排错路径写成 SKILL.md 时触发。触发表达包括「把这个变成 skill」「记住我是怎么做 X 的」「保存这个工作流」「make a skill from this」以及任何 /make-skill 调用。.
terraform-skill
Use when working with Terraform or OpenTofu - creating modules, writing tests (native test framework, Terratest), setting up CI/CD pipelines, reviewing configurations, choosing between testing approaches, debugging state issues, implementing security scanning (trivy, checkov), or making infrastructure-as-code…
docx
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of "Word doc", "word document", ".docx", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when…
docx
当用户需要创建、读取、编辑或处理 Word 文档(.docx)时,使用此技能。触发场景包括提到“Word 文档”、“.docx”,或要求生成带目录、标题、页码、信头等格式的专业文档;也包括提取或重组 .docx 内容、插入或替换图片、在 Word 文件中查找替换、处理修订或批注,以及将内容整理为正式 Word 文档。如果用户要求生成“报告”“备忘录”“信函”“模板”等 Word / .docx 交付物,也应使用此技能。不要用于 PDF、电子表格、Google Docs,或与文档生成无关的一般编程任务。.
multi_agent_collaboration
Use this skill when another agent's expertise or context is needed, or when the user explicitly asks to involve another agent. First list agents, then use qwenpaw agents chat for two-way communication with replies.