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/linshidream/skill-hub/wechat-markdown-publishernpx skills add linshidream/skill-hub --skill wechat-markdown-publishergit clone --depth 1 https://github.com/linshidream/skill-hubWrote 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/linshidream/skill-hub/wechat-markdown-publisher)<a href="https://agentmods.dev/skills/linshidream/skill-hub/wechat-markdown-publisher"><img src="https://agentmods.dev/badge/skills/linshidream/skill-hub/wechat-markdown-publisher.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.1 | $0.00107 | $0.04068 |
| Opus 5 | $0.00053 | $0.02034 |
| Sonnet 5 | $0.00021 | $0.00814 |
| Haiku 4.5 | $0.00011 | $0.00407 |
Grade A, and why
wechat-markdown-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 6d 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.
How it starts
The opening of the file, as written. The whole thing — 276 lines — stays where its author put it; the contents beside it link to each section on GitHub.
WeChat Markdown Publisher
目标
当用户提供 Typora 或通用 Markdown 技术文章,并希望发布到微信公众号时,使用本 skill 将 Markdown 转换为固定科技媒体专栏风格的富文本排版,生成:
wechat.html
wechat-fragment.html
preview.html
pdf.html
article.pdf
report.json
report.md
images/
preview.html 必须提供可复制到微信公众号编辑器的富文本内容;wechat.html 必须能直接在浏览器中以 UTF-8 正常预览;report.json 和 report.md 必须记录标题、图片、公式和兼容性提示。
article.pdf 仅在用户要求 PDF 或命令传入 --pdf 时生成。
使用场景
当用户说出类似需求时触发:
- “把这篇 Markdown 转成微信公众号格式”
- “我要从 Typora 写的 md 一键复制到公众号”
- “用固定科技媒体风格排版我的技术文章”
- “这篇生活方式文章用生活类主题”
- “医疗科普文章用医疗类主题”
- “帮我基于这个 skill 设计一个新的公众号主题”
- “检查这篇文章里的图片、表格、代码块能不能贴进公众号”
输入
- Markdown 文件路径,推荐来自 Typora。
- 文章标题,可从一级标题或文件名推断,也可由用户指定。
- 可选:是否生成静态目录。
- 可选:是否将本地图片嵌入为 data URI。
- 可选:主题名或自定义主题 JSON 文件。
- 可选:开头引用文本。若原文开头没有
>引用块,Agent 必须基于正文生成一段约 100 字的精炼开头引用,并通过--lead-quote或--lead-quote-file传入。 - 可选:封面图风格描述,或已经生成好的封面图路径/URL。
- 可选:封面图上传命令。仅当用户或环境明确提供时使用;未提供、命令不可用或上传失败时,必须降级为本地
images/cover*.png路径输出。 - 可选:是否额外生成本地 PDF。
输出规范
wechat.html:可直接打开的 UTF-8 文章页,只展示已排版文章,不包含复制按钮和报告。wechat-fragment.html:仅包含已内联样式的文章片段,供程序化复制或调试使用。preview.html:本地操作台,包含“复制公众号格式”和“复制纯文本”按钮,并附带检查报告。pdf.html:可选,PDF 的本地 HTML 渲染源,复用预览文章容器和内联样式。preview.html的“复制公众号格式”按钮不得复制文章首个 H1 标题,避免和微信公众号标题栏重复;预览页面本身仍可展示 H1。report.json:机器可读检查报告。report.md:人类可读检查报告。article.pdf:可选,本地 Python 编排 HTML 渲染生成的 PDF,不调用外部 API。images/:从 Markdown 引用复制出来的本地图片资源,以及当前 Agent 生成并传入的封面图。
默认视觉风格
默认主题为 x-tech-black,目标是科技黑 X 风格,而不是广告蓝或极简干枯文档感:
- 主体使用白底、黑字、细线和低饱和强调,参考 X.com 信息流与黑色纸面气质。
- H2 居中显示,并自动加入
01、02、03这类序号;原 Markdown 不需要手写编号。 - H2 序号直接置于标题文字前,使用轻微镂空数字形成克制、冷酷的科技标题节奏。
- H3 保持左对齐,使用细左线建立层级,不进入目录。
- 正文保持高行距、稳定字号和清晰字重。
- 引用块使用纸面浅底与黑色细线。
- 文章开头如已有 Markdown 引用块,保持原引用;如没有,Agent 应生成一段约 100 字的开头引用,概括主体内容,并保留悬念或可解决的实际问题,促使读者继续阅读。
- 代码块使用深色技术编辑器风格,行内代码使用浅纸色底。
- 表格使用细线、浅色表头和紧凑行距。
- 图片居中显示,保留 alt 文本作为图注。
- 静态目录默认只包含 H2,并按正文 H2 顺序自动生成
1、、2、、3、这类目录编号,避免 H3 小节让目录过碎。 - 如当前 Agent 有可用生图 skill,默认尝试生成一张封面图并插入目录下方;封面图不生成图注。
主题层
主题是独立的 visual theme layer,类似 adapter 但只负责视觉,不改变转换流程。默认主题文件:
What ships with it
17 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.
- adapters/claude-code.md 556 B
- adapters/codex.md 546 B
- adapters/generic-browser.md 366 B
- assets/themes/education-notes.json 3.1 KB
- assets/themes/food-warm.json 3.1 KB
- assets/themes/life-style.json 3.1 KB
- assets/themes/marketing-bold.json 3.1 KB
- assets/themes/media-flat.css 689 B
- assets/themes/media-flat.json 4.1 KB
- assets/themes/medical-clean.json 3.1 KB
- assets/themes/theme-template.json 940 B
- assets/themes/x-tech-black.json 5.7 KB
- examples/sample.md 1.1 KB
- README.md 17 KB
- references/theme-spec.md 3.6 KB
- scripts/convert_markdown_to_wechat.py 65 KB runs code
- skill.json 1019 B
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.
- 6d ago First seen · 276 lines · 107 tokens per session scan A 2724a20cdd37
wechat-markdown-publisher is a skill published in the GitHub repository linshidream/skill-hub (19 stars, last pushed 26d ago), licensed MIT. It adds 107 tokens to every session and 4,068 once invoked, about $0.0005 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
azure-ai-translation-text-py
Azure AI Text Translation SDK for real-time text translation, transliteration, language detection, and dictionary lookup. Use for translating text content in applications. Triggers: "text translation", "translator", "translate text", "transliterate", "TextTranslationClient".
i18n-localization
Internationalization and localization patterns. Detecting hardcoded strings, managing translations, locale files, RTL support.
harden
Improve interface resilience through better error handling, i18n support, text overflow handling, and edge case management. Makes interfaces robust and production-ready. Use when the user asks to harden, make production-ready, handle edge cases, add error states, or fix overflow and i18n issues.
seedance-vocab-ja
This skill should be used when the user asks for Japanese Seedance 2.0 prompt wording, Japanese cinematic vocabulary, or translation of camera, lighting, action, VFX, audio, and production terms into Japanese.
intlayer-preact
Integrates Intlayer internationalization with Preact applications. Use when the user asks to "setup Preact i18n", create a new translated component, use the "useIntlayer" hook in Preact, or configure providers.
asc-subscription-localization
Bulk-localize subscription, subscription-group, and in-app purchase display names across App Store locales using asc, including API 4.4.1 version-scoped v2 resources. Use when filling or updating subscription/IAP names and descriptions without App Store Connect UI work.