Wechat Article Formatter
BND-1/wechat_article_skills
将Markdown文章转换为美化的HTML格式,适配微信公众号发布。应用专业CSS样式、代码高亮、优化排版。当用户说"美化这篇文章"、"转换为HTML"、"优化公众号格式"、"生成公众号HTML"时使用。
Structured messaging protocols for agent team communication including message type selection, plan approval, shutdown procedures, and anti-patterns to avoid.
$ npx skills add wshobson/agents --skill team-communication-protocols -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install wshobson/agents team-communication-protocols --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .claude/skills/team-communication-protocols && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .claude/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocolsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add wshobson/agents --skill team-communication-protocols -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install wshobson/agents team-communication-protocols --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .agents/skills/team-communication-protocols && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .agents/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wshobson/agents --skill team-communication-protocols -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install wshobson/agents team-communication-protocols --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .cursor/skills/team-communication-protocols && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .cursor/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/wshobson/agents.git --path plugins/agent-teams/skills/team-communication-protocols--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add wshobson/agents --skill team-communication-protocols -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install wshobson/agents team-communication-protocols --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .gemini/skills/team-communication-protocols && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .gemini/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install wshobson/agents team-communication-protocolsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add wshobson/agents --skill team-communication-protocols -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .github/skills/team-communication-protocols && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .github/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wshobson/agents --skill team-communication-protocols -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install wshobson/agents team-communication-protocols --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wshobson/agents.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/agent-teams/skills/team-communication-protocols .opencode/skills/team-communication-protocols && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "team-communication-protocols" agent skill from https://github.com/wshobson/agents/tree/main/plugins/agent-teams/skills/team-communication-protocols into .opencode/skills/team-communication-protocols/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "team-communication-protocols", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
team-communication-protocolsStructured messaging protocols for agent team communication including message type selection, plan approval, shutdown procedures, and anti-patterns to avoid.
Team Communication Protocols is an agent skill from wshobson/agents. Structured messaging protocols for agent team communication including message type selection, plan approval, shutdown procedures, and anti-patterns to avoid. Use this skill when establishing communication norms for a newly spawned team, when deciding whether to send a direct message or a broadcast, when a team-lead needs to review and approve an implementer's plan before work begins, when orchestrating a graceful team shutdown after all tasks are complete, or when debugging why teammates are not coordinating…
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/messaging-patterns.md`).
It sits in Productivity & Automation, covering Messaging and chat bots. The repository describes itself as: Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, Google Antigravity, and Pi. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 46891e7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Team Communication Protocols loads about 1.8k tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 144 tokens; SKILL.md has 679 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from wshobson/agents at commit 46891e7, republished under its MIT licence (© wshobson). 679 words, ~1,835 tokens.
.claude/skills/team-communication-protocols/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Protocols for effective communication between agent teammates, including message type selection, plan approval workflows, shutdown procedures, and common anti-patterns to avoid.
message (Direct Message) — Default ChoiceSend to a single specific teammate:
{
"type": "message",
"recipient": "implementer-1",
"content": "Your API endpoint is ready. You can now build the frontend form.",
"summary": "API endpoint ready for frontend"
}Use for: Task updates, coordination, questions, integration notifications.
broadcast — Use SparinglySend to ALL teammates simultaneously:
{
"type": "broadcast",
"content": "Critical: shared types file has been updated. Pull latest before continuing.",
"summary": "Shared types updated"
}Use ONLY for: Critical blockers affecting everyone, major changes to shared resources.
Why sparingly?: Each broadcast sends N separate messages (one per teammate), consuming API resources proportional to team size.
shutdown_request — Graceful TerminationRequest a teammate to shut down:
{
"type": "shutdown_request",
"recipient": "reviewer-1",
"content": "Review complete, shutting down team."
}The teammate responds with shutdown_response (approve or reject with reason).
| Anti-Pattern | Problem | Better Approach |
|---|---|---|
| Broadcasting routine updates | Wastes resources, noise | Direct message to affected teammate |
| Sending JSON status messages | Not designed for structured data | Use TaskUpdate to update task status |
| Not communicating at integration points | Teammates build against stale interfaces | Message when your interface is ready |
| Micromanaging via messages | Overwhelms teammates, slows work | Check in at milestones, not every step |
| Using UUIDs instead of names | Hard to read, error-prone | Always use teammate names |
| Ignoring idle teammates | Wasted capacity | Assign new work or shut down |
When a teammate is spawned with plan_mode_required:
ExitPlanMode which sends a plan_approval_request to the leadplan_approval_response:Approve:
{
"type": "plan_approval_response",
"request_id": "abc-123",
"recipient": "implementer-1",
"approve": true
}Reject with feedback:
{
"type": "plan_approval_response",
"request_id": "abc-123",
"recipient": "implementer-1",
"approve": false,
"content": "Please add error handling for the API calls"
}type: "shutdown_request"shutdown_response:approve: true — Teammate saves state and exitsapprove: false + reason — Teammate continues workingTeamDelete to remove team resourcesIf a teammate rejects shutdown:
Find team members by reading the config file:
Location: ~/.claude/teams/{team-name}/config.json
Structure:
{
"members": [
{
"name": "security-reviewer",
"agentId": "uuid-here",
"agentType": "team-reviewer"
},
{
"name": "perf-reviewer",
"agentId": "uuid-here",
"agentType": "team-reviewer"
}
]
}Always use name for messaging and task assignment. Never use agentId, role names, or unsuffixed aliases directly. If a teammate was spawned as team-lead-2, send to team-lead-2, not team-lead.
A teammate is not responding to messages. Check the teammate's task status. If it is idle, it may have completed its task and is waiting to be assigned new work or shut down. If it is still active, it may be mid-execution and will process messages once the current operation finishes.
A teammate says it cannot see SendMessage.
Check the teammate agent's tools: frontmatter. Agent Teams communication tools such as SendMessage, TaskList, TaskGet, and TaskUpdate must be listed explicitly when an agent uses a restricted tool allowlist.
The lead is sending broadcasts for every status update.
This is a common anti-pattern. Broadcasts are expensive — each one sends N messages. Use direct messages (type: "message") for point-to-point updates. Reserve broadcasts for critical shared-resource changes like an updated interface contract.
A teammate rejected a shutdown request unexpectedly.
The teammate is still working. Check the rejection reason in the shutdown_response content field, wait for the work to finish, then retry. Never force-terminate a teammate that has unsaved work.
A plan_approval_request arrived but the request_id is missing.
The teammate called ExitPlanMode without the required request context. Have the teammate re-enter plan mode, complete exploration, and call ExitPlanMode again. The request_id is generated automatically by the plan mode system.
Two teammates are waiting on each other and neither is making progress. This is a deadlock: both are blocked waiting for the other to finish first. The lead should send a direct message to one teammate with a stub or partial result so it can unblock and proceed.
© wshobson, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in plugins/agent-teams/skills/team-communication-protocols of wshobson/agents.
Open the folder on GitHubat commit 46891e7
Team Communication Protocols next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Team Communication Protocols this skillwshobson/agents | 40k | — | ~1.8k | Automated safety check: Pass | MIT | |
| Wechat Article FormatterBND-1/wechat_article_skills | 317 | — | ~1.5k | Automated safety check: Notes | None | |
| Agent Deep Linkscomposio-community/awesome-codex-skills | 17k | — | ~513 | Automated safety check: Pass | None | |
| Wechat Style Profilergainubi/wechat-skills | 170 | 1 repos | ~458 | Automated safety check: Pass | None | |
| Wechat FormatterJianing1117/jianing-skills | 329 | — | ~4.5k | Automated safety check: Pass | None | |
| Relay Stack Playbookkxn/codex-remote-feishu | 329 | — | ~1.3k | Automated safety check: Pass | None |
BND-1/wechat_article_skills
将Markdown文章转换为美化的HTML格式,适配微信公众号发布。应用专业CSS样式、代码高亮、优化排版。当用户说"美化这篇文章"、"转换为HTML"、"优化公众号格式"、"生成公众号HTML"时使用。
composio-community/awesome-codex-skills
Builds and checks clickable deep links that open a thread, file, folder or settings panel in tools like Codex, Cursor and VS Code, usually for sharing in Slack.
gainubi/wechat-skills
面向公众号作者的文风 DNA 梳理技能。用于从 3-10 篇参考文章中建立可复用的风格画像,输出 14 维分析、标点符号偏好、分块习惯、段落配方、叙述方法体系、内容推进方式和默认 DNA 文件,并通过用户校准确保画像可直接给写稿技能调用。
Jianing1117/jianing-skills
把一篇 Markdown 格式的文章转成可直接粘贴到微信公众号编辑器的 HTML 推文 + 900x383px 封面图片,严格遵循「加宁慢慢来」品牌视觉规范 v7.0。当用户说"排版公众号""帮我生成推文""把这篇文章转成公众号格式""做微信封面""WeChat Article Formatter""WeChat…
kxn/codex-remote-feishu
A skill your agent uses when working on this repository's relay stack: Codex app-server protocol translation, relayd, relay-wrapper, Feishu bot integration, VS Code remote integration, or real-stack…
nanocoai/nanoclaw
Lets a NanoClaw agent join GitHub pull request and issue comment threads as conversations, using a dedicated bot account and the Chat SDK bridge.
wshobson/agents
Cuts cloud spend across AWS, Azure, GCP and OCI with cost tagging, rightsizing, commitment and spot pricing models, and architecture changes.
wshobson/agents
Covers building subscription billing: billing cycles, subscription states, invoice generation, proration, tax handling and dunning for failed payments.
wshobson/agents
Profiles slow Python code with cProfile and memory profilers, then applies targeted fixes for CPU, memory, I/O and query bottlenecks.
wshobson/agents
Writes unit tests for shell scripts with Bats: error-condition tests, fixtures and mocks, cross-shell checks, parallel runs, helper files and CI integration.
wshobson/agents
Implement distributed tracing with Jaeger and Tempo to track requests across microservices and identify performance bottlenecks.
wshobson/agents
Reference for designing and tuning production LLM prompts: few-shot examples, chain-of-thought, structured outputs, templates and system prompts.
Categories
Structured messaging protocols for agent team communication including message type selection, plan approval, shutdown procedures, and anti-patterns to avoid. Team Communication Protocols is an agent skill from wshobson/agents. Structured messaging protocols for agent team communication including message type selection, plan approval, shutdown procedures, and anti-patterns to avoid.
Team Communication Protocols fits situations like: establishing communication norms for a newly spawned team; deciding whether to send a direct message; A team-lead needs to review and approve an implementers plan before work begins; orchestrating a graceful team shutdown after all tasks are complete.
Run `npx skills add wshobson/agents --skill team-communication-protocols -a claude-code`. Or copy the skill folder (plugins/agent-teams/skills/team-communication-protocols in wshobson/agents) into .claude/skills/team-communication-protocols in your project. Claude Code loads it when a task matches its description.
Run `npx skills add wshobson/agents --skill team-communication-protocols -a codex`. Or copy the skill folder (plugins/agent-teams/skills/team-communication-protocols in wshobson/agents) into .agents/skills/team-communication-protocols in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wshobson/agents --skill team-communication-protocols -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/team-communication-protocols, .gemini/skills/team-communication-protocols, .github/skills/team-communication-protocols and .opencode/skills/team-communication-protocols in your project.
SKILL.md names no scripts, command-line tools or credentials: Team Communication Protocols is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Team Communication Protocols is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 538 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Team Communication Protocols: Wechat Article Formatter (BND-1/wechat_article_skills, 317 stars), Agent Deep Links (composio-community/awesome-codex-skills, 17k stars), Wechat Style Profiler (gainubi/wechat-skills, 170 stars) and Wechat Formatter (Jianing1117/jianing-skills, 329 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
wshobson (a GitHub user) maintains it in wshobson/agents, which has 40,305 GitHub stars. The repository holds 142 skills in this directory. The repository was last updated on October 5, 2026.
Source: wshobson/agents on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.