skill-publisher

skill-publisher is a skill for Claude Code from skillmds/skillmd. It costs 103 tokens per session (3,514 once invoked), scanned A, a copy of skill-publisher, MIT.

A publishing workflow for putting an agent skill in a GitHub repository. It checks the skill's SKILL.md metadata, creates or checks supporting files, pushes the repository, and can verify that the skill can be installed.

In plain words
What is it for?
Use it to publish a skill from a local directory to GitHub, create or update its README and license, and test discovery and installation with the skills command.
Why use it?
It removes the manual steps and common mistakes involved in packaging, naming, publishing, and checking a skill. It also supports a dry run or a private repository.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: mentions Codex; built for cline; mentions Gemini CLI.

Not installable: its command points at a path on the author’s own machine, so it runs nowhere else. The line is /Users/joe/.agents/skills/<name>.

Part of the create-agent-skills plugin — 10 skills shipped together

Good fit Use it to publish a skill from a local directory to GitHub, create or update its README and license, and test discovery and installation with the skills command.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add skillmds/skillmd
Claude Code
/plugin install create-agent-skills

Made for: Claude Code.

Or install create-agent-skills, the plugin that ships this one along with the rest of its 10 skills.

Wrote 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.

agentmods badge for skill-publisher

README.md
[![agentmods](https://agentmods.dev/badge/skills/skillmds/skillmd/skill-publisher/github.svg)](https://agentmods.dev/skills/skillmds/skillmd/skill-publisher)
Your own site
<a href="https://agentmods.dev/skills/skillmds/skillmd/skill-publisher"><img src="https://agentmods.dev/badge/skills/skillmds/skillmd/skill-publisher/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for skill-publisher

Your own site · 80×15
<a href="https://agentmods.dev/skills/skillmds/skillmd/skill-publisher"><img src="https://agentmods.dev/badge/skills/skillmds/skillmd/skill-publisher.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 103 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,514 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00103 $0.03514
Opus 5.5 $0.00041 $0.01406
Sonnet 5 $0.00021 $0.00703
Haiku 4.5 $0.00010 $0.00351

Measured 4d ago against content hash a82afcb04dc7, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-23, from the pricing page.

Security

Grade A, and why

skill-publisher 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 4d 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.

Origin

This is a copy

100% identical to skill-publisher — 1 line differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

plugins/create-agent-skills/skills/skill-publisher/SKILL.md · 277 lines

How it starts

The opening of the file, as written. The whole thing — 277 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Skill Publisher

一键将 agent skill 发布到 GitHub,自动完成验证、README 质量检查、补全、推送和真实安装验证。

前置条件

  • gh CLI 已安装且已登录(gh auth status
  • Skill 目录包含有效的 SKILL.md(含 YAML frontmatter name + description
  • 优先使用 /Users/joe/.agents/skills/<name> 作为正式源目录;.codex / .claude 可作为兼容入口。

发布流程

当用户要求发布 skill 时,运行发布脚本:

python3 ~/.agents/skills/qiaomu-skill-publisher/scripts/publish_skill.py <skill_dir>

确定 skill 目录

  • 如果用户说"发布这个 skill"且当前在某个 skill 目录 → 用当前目录
  • 如果用户指定了 skill 名称 → 优先在 ~/.agents/skills/ 下查找
  • 如果不确定 → 问用户要发布哪个 skill

脚本自动完成的步骤

  1. 验证 SKILL.md 的 YAML frontmatter(name + description)
  2. 检查 gh CLI 就绪状态
  3. 创建 LICENSE(MIT,如果缺少)
  4. 生成或检查 README.md:生成时不再写 TODO 模板;已存在时拦截明显占位符
  5. 识别仓库名:优先使用当前 origin 仓库名,避免把 skill-publisher 误发到错误 repo
  6. 初始化 git(如果需要)
  7. 创建或更新 GitHub 公开仓库并推送
  8. 验证 npx skills add --list 可发现,并在临时目录真实安装

参数选项

参数 说明
--private 创建私有仓库(默认公开)
--dry-run 仅检查,不实际发布
--skip-verify 跳过 npx skills 验证
--github-user USER 指定 GitHub 用户名(默认自动获取)
--repo-name NAME 指定 GitHub 仓库名;默认优先使用当前 origin 仓库名,否则使用 skill name
--no-symlink 跳过同步 ~/.agents/skills/ 实体目录

自动同步 ~/.agents/skills/ 实体目录

发布成功后,脚本可自动把 skill 同步到 ~/.agents/skills/<name> 作为实体目录。

这个目录是通用 Agent Skills 标准目录,以下工具会自动读取: OpenCode、Codex CLI、Cursor、Gemini CLI、GitHub Copilot、Amp、Cline、Warp 等。

一次发布,多工具共享,无需重复配置。

如果当前发布源已经是 ~/.agents/skills/<name>,脚本会跳过同步,避免误删自己的源目录。若 skill name 与 repo name 不一致,或者你不想产生本地副本,发布时加 --no-symlink

⚠️ SKILL.md YAML 安全规则(发布前必查)

npx skills 使用严格 YAML 解析器,以下写法会导致安装失败(报 "No valid skills found"):

❌ 错误写法 ✅ 正确写法
description: 含有 "引号" 的文字 改用 | 块标量(见下方)
description: 含单引号'的文字 改用 | 块标量
description: 含冒号: 的文字 改用 | 块标量

最安全的 description 写法

description: |
  描述放这里,可以随意包含 "双引号"、'单引号'、冒号: 等特殊字符
  触发词: 用户说...时触发

脚本已内置 YAML 严格校验(pyyaml),会在发布前捕获这类错误并给出修复提示。

更新已发布的 skill

对已有 GitHub 仓库的 skill 再次运行同一命令,脚本会检测到仓库已存在,自动 commit + push 更新。

Read the full file on GitHub · 277 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 4d ago First seen · 277 lines · 103 tokens per session scan A a82afcb04dc7

Subscribe to this mod's changes

skill-publisher is a skill published in the GitHub repository skillmds/skillmd (1 stars, last pushed yesterday), licensed MIT. It adds 103 tokens to every session and 3,514 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 100% identical to skill-publisher, differing in 1 line, and is treated as a copy.