Counterparty Channel Discipline
affaan-m/ECC
Per-channel strict prompts, mention gating, silent observation, and a communication autonomy policy for agents that sit in shared channels with external counterparties.
Promote an open-source project across CN & EN channels — reads the repo, generates per-channel tailored copy, auto-submits issue/PR-type channels via gh, assists the rest.
$ npx skills add ccplugins/awesome-claude-code-plugins --skill promote -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ccplugins/awesome-claude-code-plugins promote --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/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/yaohe/skills/promote .claude/skills/promote && 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 "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .claude/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promoteType 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 ccplugins/awesome-claude-code-plugins --skill promote -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ccplugins/awesome-claude-code-plugins promote --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/yaohe/skills/promote .agents/skills/promote && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .agents/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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 ccplugins/awesome-claude-code-plugins --skill promote -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ccplugins/awesome-claude-code-plugins promote --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/yaohe/skills/promote .cursor/skills/promote && 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 "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .cursor/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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/ccplugins/awesome-claude-code-plugins.git --path plugins/yaohe/skills/promote--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 ccplugins/awesome-claude-code-plugins --skill promote -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ccplugins/awesome-claude-code-plugins promote --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/yaohe/skills/promote .gemini/skills/promote && 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 "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .gemini/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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 ccplugins/awesome-claude-code-plugins promoteInstalls 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 ccplugins/awesome-claude-code-plugins --skill promote -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/yaohe/skills/promote .github/skills/promote && 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 "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .github/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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 ccplugins/awesome-claude-code-plugins --skill promote -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ccplugins/awesome-claude-code-plugins promote --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ccplugins/awesome-claude-code-plugins.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/yaohe/skills/promote .opencode/skills/promote && 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 "promote" agent skill from https://github.com/ccplugins/awesome-claude-code-plugins/tree/main/plugins/yaohe/skills/promote into .opencode/skills/promote/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "promote", 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.
promotePromote an open-source project across CN & EN channels — reads the repo, generates per-channel tailored copy, auto-submits issue/PR-type channels via gh, assists the rest.
Promote is an agent skill from ccplugins/awesome-claude-code-plugins. Promote an open-source project across CN & EN channels — reads the repo, generates per-channel tailored copy, auto-submits issue/PR-type channels via gh, assists the rest. Use when the user wants to 宣传/推广/publicize/launch/submit their open-source project, or asks "帮我把这个项目投到阮一峰周刊/HelloGitHub/Show HN".
Its SKILL.md is about 670 tokens, which your agent loads only when the skill is triggered. The skill folder holds 22 other files (for example `channels/_template.md`, `channels/appinn.md` and `channels/awesome-claude-code.md`).
The repository describes itself as: Awesome Claude Code plugins — a curated list of slash commands, subagents, MCP servers, and hooks for Claude Code. The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 5bd4f16. 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.
Shell commands in SKILL.md call:
ghgitFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom 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.
Promote loads about 665 tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 181 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 ccplugins/awesome-claude-code-plugins at commit 5bd4f16, republished under its Apache-2.0 licence (© ccplugins). 181 words, ~665 tokens.
.claude/skills/promote/SKILL.md (or your agent's skills folder). This skill also uses 21 other files; get the full folder from GitHub.核心原则:一键 ≠ 一键全发。渠道分三级自动化,越权发帖 = spam = 毁项目声誉。
硬性前置闸门,任一不过就停下问用户,不进入后续步骤:
gh repo view <owner>/<repo> 必须成功(仓库公开可达)。本地路径则检查 git remote -v 有 GitHub remote 且已 push——稿件里的每个链接都必须真实可达,绝不写入死链然后读 README 全文、描述、topics、star 数、最近活跃度,提炼:一句话定位(它是什么+替代/优于什么)、目标人群、3 个差异化亮点、演示素材(截图/GIF/demo URL)。
README 薄的判定(缺任一项即问用户补齐,不要编):① 一句话说清它是什么 ② 安装/使用方法 ③ 至少一个具体使用场景或示例。
读 channels/ 下所有渠道文件的 frontmatter,按项目画像过滤:
PROMO-LOG.md(项目根目录):同一渠道 30 天内有任何记录(含 rejected)即跳过,冷却期从最新一条记录的日期起算用 AskUserQuestion 列出推荐渠道(含自动化等级标注)让用户勾选;用户明确说"全投"则投所有合规匹配渠道。
对每个选中渠道,读其 channels/<id>.md 全文,严格按其 format_spec 生成:
docs/assets/)用 raw.githubusercontent.com URL 引用,别用外部图床。渠道规格标注图片必备的(如 ruanyf-weekly),无图不投promo-drafts/<channel-id>.md 落盘;文件首行固定为 Title: <标题>(即使该渠道标题走 gh --title 参数不进 body),复盘时才对得上号按渠道 frontmatter 的 automatable 字段:
gh auth status 确认已登录(未登录 → 让用户 gh auth login,停在这里)→ 展示最终稿 → 用户确认一次 → gh CLI 提交 → 记录返回 URL。失败就报错停,不换渠道兜底。把本次投递写入目标项目根目录 PROMO-LOG.md,固定表格 schema(机器可读,下次运行先读它):
| channel | date | draft | url | status |
|---|---|---|---|---|
| ruanyf-weekly | 2026-07-02 | promo-drafts/ruanyf-weekly.md | https://github.com/ruanyf/weekly/issues/NNN | submitted |date 用 ISO(YYYY-MM-DD);status ∈ draft / submitted / published / rejected© ccplugins, Apache-2.0. 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 21 other files in plugins/yaohe/skills/promote of ccplugins/awesome-claude-code-plugins.
Open the folder on GitHubat commit 5bd4f16
Promote 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 |
|---|---|---|---|---|---|---|
| Promote this skillccplugins/awesome-claude-code-plugins | 967 | — | ~665 | Automated safety check: Pass | Apache-2.0 | |
| Counterparty Channel Disciplineaffaan-m/ECC | 274k | — | ~2.3k | Automated safety check: Pass | MIT | |
| Promotealirezarezvani/claude-skills | 28k | 2 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Trellis Channelmindfold-ai/Trellis | 15k | 4 repos | ~1.2k | Automated safety check: Pass | AGPL-3.0 | |
| Checkpoint Promotionwshobson/agents | 40k | — | ~2k | Automated safety check: Pass | MIT | |
| NanoClaw Channel Wiringnanocoai/nanoclaw | 31k | — | ~2.6k | Automated safety check: Notes | MIT |
affaan-m/ECC
Per-channel strict prompts, mention gating, silent observation, and a communication autonomy policy for agents that sit in shared channels with external counterparties.
alirezarezvani/claude-skills
Graduate a proven pattern from auto-memory (MEMORY.md) to CLAUDE.md or .claude/rules/ for permanent enforcement.
mindfold-ai/Trellis
Use Trellis channel for live multi-agent collaboration, spawned workers, cross-agent review, progress inspection, forum channels, and channel log debugging.
wshobson/agents
Gate fine-tuned checkpoints with drift budgets, paired comparison, and forgetting checks before promotion.
nanocoai/nanoclaw
Connects messaging channels to NanoClaw agent groups, sets isolation and engagement defaults, and reports which channels are wired, unwired or not configured.
sickn33/agentic-awesome-skills
Technical reference on Lightning Network channel factories, multi-party channels, LSP architectures, and Bitcoin Layer 2 scaling without soft forks.
ccplugins/awesome-claude-code-plugins
Run structured AI meetings for plans, product ideas, technical designs, business decisions, feature proposals, and strategy choices.
ccplugins/awesome-claude-code-plugins
Bootstrap a new FastAPI backend with async SQLAlchemy 2.0, asyncpg, Alembic, Pydantic v2, and no deprecated APIs.
ccplugins/awesome-claude-code-plugins
Bootstrap a new Flutter mobile app with clean architecture, Riverpod, FVM-pinned SDK, current packages, and no deprecated APIs.
ccplugins/awesome-claude-code-plugins
Bootstrap a new Next.js (App Router, TypeScript) web app with current packages and no deprecated APIs.
ccplugins/awesome-claude-code-plugins
Write up a coding session for a non-technical stakeholder — the context, what was built, and the engineering reasoning behind it — the way a senior engineer briefs a product manager who does not…
ccplugins/awesome-claude-code-plugins
Aggiunge a un sito/app un agente di difesa che rileva e blocca richieste malevole (SQL injection, XSS, path traversal, brute force, bot) con rate limiting, blocklist IP e modalità lockdown che…
Promote an open-source project across CN & EN channels — reads the repo, generates per-channel tailored copy, auto-submits issue/PR-type channels via gh, assists the rest. Promote is an agent skill from ccplugins/awesome-claude-code-plugins. Promote an open-source project across CN & EN channels — reads the repo, generates per-channel tailored copy, auto-submits issue/PR-type channels via gh, assists the rest.
Promote fits situations like: the user wants to 宣传/推广/publicize/launch/submit their open-source project; asks 帮我把这个项目投到阮一峰周刊/HelloGitHub/Show HN.
Run `npx skills add ccplugins/awesome-claude-code-plugins --skill promote -a claude-code`. Or copy the skill folder (plugins/yaohe/skills/promote in ccplugins/awesome-claude-code-plugins) into .claude/skills/promote in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ccplugins/awesome-claude-code-plugins --skill promote -a codex`. Or copy the skill folder (plugins/yaohe/skills/promote in ccplugins/awesome-claude-code-plugins) into .agents/skills/promote 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 ccplugins/awesome-claude-code-plugins --skill promote -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/promote, .gemini/skills/promote, .github/skills/promote and .opencode/skills/promote in your project.
Going by SKILL.md and its folder, Promote needs the command-line tools its instructions call (gh and git).
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. 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.
Promote is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 665 tokens (SKILL.md is roughly 2.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Promote: Counterparty Channel Discipline (affaan-m/ECC, 274k stars), Promote (alirezarezvani/claude-skills, 28k stars), Trellis Channel (mindfold-ai/Trellis, 15k stars) and Checkpoint Promotion (wshobson/agents, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ccplugins (a GitHub organization) maintains it in ccplugins/awesome-claude-code-plugins, which has 967 GitHub stars. The repository holds 68 skills in this directory. The repository was last updated on August 12, 2026.
Source: ccplugins/awesome-claude-code-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.