WeCom Team Notice Skill
Purpose
This SkillRun capsule turns a team notice request into a preview or a WeCom
group robot message. It is safe for an agent to call when the agent needs a
policy-bound team notification, not when it should freely send arbitrary text.
SOP
- Prefer
dry_run=true before sending any real WeCom message.
- Confirm the notice has a non-empty
title, summary, supported audience,
supported urgency, and explicit dry_run value.
- Reject high-risk content before sending, including obvious secret-like
strings such as API keys, private keys, passwords, tokens, and webhook URLs.
- Require
approval_id for urgency=high, urgency=critical, or
audience=all_hands.
- When
dry_run=false, require the declared WECOM_WEBHOOK_URL environment
variable.
- Produce a markdown notice artifact for preview, sent, and blocked outcomes.
- Never treat stdout as the business result.
Approval Boundary
dry_run=true is allowed without approval_id unless the content violates
prohibited-content rules.
urgency=normal for team, project, or incident can be sent when the
webhook is configured.
urgency=high, urgency=critical, and audience=all_hands require
approval_id before a real send or preview approval can continue.
- The capsule only sends to the configured WeCom group robot webhook. It does
not manage WeCom users, contacts, departments, apps, approvals, or chats.
Required Context
title: short notice title.
summary: notice body.
audience: one of team, project, incident, or all_hands.
urgency: one of normal, high, or critical.
dry_run: whether to preview only.
approval_id: required for high-risk sends.
mentioned_mobile_list: optional WeCom mobile mentions.
Recovery Guidance
If the action returns PolicyViolation, remove prohibited content or provide
the required approval before retrying. If it returns DependencyError, configure
WECOM_WEBHOOK_URL for real sends, check outbound access to
qyapi.weixin.qq.com, or retry with dry_run=true. On Windows, the action uses
direct Python HTTPS first and falls back to local curl.exe when Python's
network transport cannot initialize.
Prohibited Behavior
- Do not send secrets, tokens, private keys, passwords, or webhook URLs.
- Do not bypass approval for high, critical, or all-hands notices.
- Do not use this capsule as a general WeCom API client.
- Do not ask the agent to manually run
skillrun run; configure this capsule as
an MCP server and call the Manifest-derived tool.
1---2name: wecom-team-notice3description: WeCom Team Notice Skill4---5# WeCom Team Notice Skill67## Purpose89This SkillRun capsule turns a team notice request into a preview or a WeCom10group robot message. It is safe for an agent to call when the agent needs a11policy-bound team notification, not when it should freely send arbitrary text.1213## SOP14151. Prefer `dry_run=true` before sending any real WeCom message.162. Confirm the notice has a non-empty `title`, `summary`, supported `audience`,17 supported `urgency`, and explicit `dry_run` value.183. Reject high-risk content before sending, including obvious secret-like19 strings such as API keys, private keys, passwords, tokens, and webhook URLs.204. Require `approval_id` for `urgency=high`, `urgency=critical`, or21 `audience=all_hands`.225. When `dry_run=false`, require the declared `WECOM_WEBHOOK_URL` environment23 variable.246. Produce a markdown notice artifact for preview, sent, and blocked outcomes.257. Never treat stdout as the business result.2627## Approval Boundary2829- `dry_run=true` is allowed without `approval_id` unless the content violates30 prohibited-content rules.31- `urgency=normal` for `team`, `project`, or `incident` can be sent when the32 webhook is configured.33- `urgency=high`, `urgency=critical`, and `audience=all_hands` require34 `approval_id` before a real send or preview approval can continue.35- The capsule only sends to the configured WeCom group robot webhook. It does36 not manage WeCom users, contacts, departments, apps, approvals, or chats.3738## Required Context3940- `title`: short notice title.41- `summary`: notice body.42- `audience`: one of `team`, `project`, `incident`, or `all_hands`.43- `urgency`: one of `normal`, `high`, or `critical`.44- `dry_run`: whether to preview only.45- `approval_id`: required for high-risk sends.46- `mentioned_mobile_list`: optional WeCom mobile mentions.4748## Recovery Guidance4950If the action returns `PolicyViolation`, remove prohibited content or provide51the required approval before retrying. If it returns `DependencyError`, configure52`WECOM_WEBHOOK_URL` for real sends, check outbound access to53`qyapi.weixin.qq.com`, or retry with `dry_run=true`. On Windows, the action uses54direct Python HTTPS first and falls back to local `curl.exe` when Python's55network transport cannot initialize.5657## Prohibited Behavior5859- Do not send secrets, tokens, private keys, passwords, or webhook URLs.60- Do not bypass approval for high, critical, or all-hands notices.61- Do not use this capsule as a general WeCom API client.62- Do not ask the agent to manually run `skillrun run`; configure this capsule as63 an MCP server and call the Manifest-derived tool.