公众号写手 · WeChat Writer
SkillMediaUnified creation, rewriting, branding, or faithful reposting of WeChat Official Account article packages: body writing invokes the single writing style and authorial voice capability, and structure, branding, cover, 4:3 hero image, sources, and quality acceptance are completed offline. Use when aske
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the 公众号写手 · WeChat Writer skill
What this skill tells your AI
The instructions your AI receives, as published by lovstudio/skills in skills/article-creator/SKILL.md and read by ahel’s review.
把零散事实、研究材料或现有草稿变成一套可交付的公众号文章包,而不只是写出一段 Markdown。
每次完整交付同时包含:经过事实约束的正文、题材适配的编辑模板、品牌化横版封面、独立的 4:3 横向正文首图、来源与发布元数据,以及一份可回读的验收报告。
Triggers
Activate when
- “按我的文风写一篇公众号文章,并配好封面和正文首图。”
- “把这些研究材料做成统一品牌的公众号长文。”
- “Create a branded WeChat article package from these notes.”
- “Turn this draft into a publish-ready WeChat article with a wide cover and a 4:3 body hero.”
- “把这篇现有 Markdown 做成完整的品牌化公众号版本。”
- “忠实转载这篇合作方文章,保留原文并加入我们的开场和收尾。”
Do not activate when
- 只要求改写一段文字或匹配个人语气,不需要公众号模板与视觉包;使用写作风格能力。
- 只要求读取、修改或核验公众号后台已有草稿;使用
lov-publish-wechat-article的 existing-draft 管线。 - 只要求把现成文件写入草稿箱或正式发布;使用公众号发布能力。
- 只要求生成一张孤立图片,且不需要文章级命题、品牌与双比例验收。
Product contract
- One article, one package. 正文、来源、封面、首图和验收记录位于同一文章目录。
- Facts before voice. 先建立事实账本,再套用文风;不得用第一人称补造经历、数字或判断变化。
- Objective before outline. 先明确创作条件、动机、传播目标与
desired_reader_change,再决定结构。用户给出的命题、开头、章节或草稿是重要约束和证据,不自动等于已经充分、正确的传播策略。 - One writing owner. 新写与改写必须调用
lov-writing-style;其内部调用唯一的反 AI / 作者性规则源lov-human-writing。本 Skill 只拥有公众号题材、结构、品牌和制品规则,不复制通用文风规则。 - Template is semantic. 固定的是信息顺序、证据门槛与品牌组件,不强迫所有题材使用同一组空洞标题。
- Heading roles stay separate. 文件名、平台标题、正文 H1、章节 H2/H3 与 TOC 标签是不同制品。章节标题负责划分读者的认知阶段并逐步引人进入,不负责压缩段落;TOC 只镜像最终章节结构,不反向决定正文。
- Brand comes from Profile. 发布主体、Logo、官网、色彩和禁用信息从共享 Profile 解析,不把用户私有路径写入公开文章或 Skill 源码。
- Two image roles are mandatory. 完整管线必须输出
2.35:1分享封面和独立的4:3横向正文首图;不得把分享封面成品直接当正文首图。 - Benchmark claims require benchmark evidence. 文章一旦给出排名、雷达图或量化优劣,就必须在结果之前公开测试对象、输入、完整 Prompt、执行环境、评价指标、评分规则、至少一个逐项算分示例和复现方法;分数不得先于方法出现。
- Publication identity wins. 公众号发布主体与母品牌分开;封面只使用发布主体官方白色横向 lockup,方形图标、母品牌 Logo 和橙色变体都不能替代。
- Generated is not accepted. 文件存在不等于完成;必须通过尺寸、引用、事实、品牌和移动阅读质量门。
- Publishing is separate. 默认止于本地可发布文章包;写入草稿箱或正式发布需要明确授权,并交给下游发布能力。
- Platform title is not body content. canonical Markdown 保留唯一 H1 作为标题真源;写入微信公众号时,标题进入平台标题字段,正文默认隐藏该 H1,避免首图前重复出现同名标题。
- References stay quiet. 正文中穿插的资料来源、补充链接和引申阅读默认使用低对比度的小字斜体资料注,不与章节标题、正文论点或主要行动入口争夺视觉层级。
- Repost source is frozen. 转载时来源正文是逐字冻结区;作者性优化只作用于发布方新增区块,且
copyrightMode固定为reprint。
User Profile
每次运行先读取 skill.yaml 声明的 user-profile/v1 上下文,按当前请求、项目事实、本 Skill records、共享 preferences、品牌和用户 Profile、安全默认值的顺序解析。
用户直接声明并希望长期沿用的模板、文风、品牌与封面比例,通过 scripts/profile_store.py record --confirm 写入 skills.lov-article-creator.records。公开品牌事实使用 brand.*;推断值、凭据和内部素材不得持久化。
Skill Kit Modules
完整执行前读取 kit.yaml 与所选模块:
$SKILL_DIR/skills/article-writing/SKILL.md— 事实账本、题材结构,以及对lov-writing-style的正文写作交接。$SKILL_DIR/skills/editorial-template/SKILL.md— 固定公众号模板、品牌组件和文章包元数据。$SKILL_DIR/skills/cover-package/SKILL.md— 艺术方向、横版封面、4:3 正文首图和确定性 Logo 合成。$SKILL_DIR/skills/quality-gate/SKILL.md— 内容、文风、品牌、图片和包结构验收。
模块是本 Kit 的硬依赖并随源代码分发。外部相邻 Skill 只通过明确文件交接,不是隐藏依赖。
Pipelines
| 管线 | 适用结果 | 模块 |
|---|---|---|
full | 从材料生成完整文章包 | writing → template → cover → quality |
rewrite | 把已有草稿重做为统一公众号版本 | writing → template → quality |
visual | 正文已定,只补双比例视觉包 | cover → quality |
brand | 给现有本地文章补齐结构、品牌、封面说明与双比例视觉 | template → cover → quality |
repost | 冻结来源正文,只新增发布方开场、来源标注、收尾与品牌区 | template → cover → repost audit → quality |
audit | 只检查现有文章包 | quality |
用户说“写公众号文章”且没有显式缩小范围时,默认使用 full。
Workflow (MANDATORY)
Step 0: Resolve the Kit and durable defaults
- 定位 Skill 根目录,检查
kit.yaml、所需模块、references、scripts 和 assets。 - 读取共享 Profile 与
skills.lov-article-creator.records。 - 分别解析母品牌和公众号发布主体,并读取发布主体官方白色横向 Logo、品牌网站、文风、横竖比例和输出目录;不得回退到母品牌、方形或橙色 Logo。
- 缺失的信息会改变用户可见成品时,只问一个聚焦问题;其余使用安全默认值继续。
Step 1: Build the truth ledger
完整读取输入文件、当前项目材料、图片和用户明确判断,内部区分:
- 可直接写入的事实、版本、数字、引用和链接;
- 可以使用第一人称的真实经历;
- 需要来源支撑的外部主张;
- 只帮助判断、不得公开的内部上下文;
- 会阻止可靠成稿的证据缺口。
把文章真正要纠正的旧说法或推动的判断压成一句命题。输入不足以支撑关键结论时,保留边界或请求最少事实,不编造完整故事。
完整读取 创作战略与标题系统,建立内部
strategy brief:当前可用条件、作者为何此刻要写、传播目标、目标读者起点、
desired_reader_change、期望读者动作、现有证据和证据缺口。公众号传播指标可以是
打开、读完、点赞、转发、留言或体验,但不得为了指标伪造冲突、关系或结果。
再判断本次交互属于哪一种工作形态:
- 只有命题或项目材料:自顶向下提出命题、读者变化与结构;
- 已给开头、章节或明确写法:把它们视为已接受约束,补足缺口,不静默改写;
- 语音转写、思绪或素材堆:自下而上提炼事实、动机与结构;
- 已有完整稿件:以最小改动迭代,先保留用户已校对部分,再修真正阻碍目标的段落;
- 混合输入:固定用户已经决定的层级,只对未决定部分使用相应方法。
用户提供的方案若与真实目标冲突,不得盲从,也不得擅自覆盖。先指出具体冲突、缺失 证据及其对传播目标的影响,再给一个可执行替代;只有这项选择会实质改变成品时才请 用户决定。
同时建立 reader contract:发布渠道、目标读者、读者打开文章时已知内容和成品边界。
公众号最终稿默认面对没有参加作者与 Agent 对话的公开读者。旧稿轮次、用户批评、
修改说明和任务过程属于内部上下文;除非它们本身是研究对象并在正文内完整建立,
不得进入文章命题或导语。
Step 2: Write for meaning
读取文章写作模块,并把 truth ledger、reader contract、题材和发布渠道交给 lov-writing-style。lov-writing-style 负责个人文风,并在内部调用 lov-human-writing 做作者性审计;不得绕过这条链路另写一套“去 AI 味”规则。
公众号专属结构继续执行:
- 开头 300 字内出现真实冲突、现场、结果或核心判断。
- 把标题与开头 300 字单独交给
zero-session-context冷读者;所有版本、人物、事件和 指代都必须在可见成品中有先行词。出现悬空的“前一版 / 上一稿 / 这次重写 / 按你 的要求”时直接重写,不能进入下一阶段。 - 正文按
desired_reader_change选择认知路径;定义、区分、证据、代价与行动只是 可用模块,不是固定顺序。 - 每个主要章节至少有一项事实、案例、数字、亲历或来源。
- 长句承担解释,短句负责落锤;保持移动端一句段与长段交替。
- 先完成事实与论证,再做个人文风适配;不复制口头禅,不制造虚假情绪。
- 先判断题材。研究、调研、对比测试、benchmark 或带排名/雷达图的文章使用论文式方法结构:
调研对象、测试方法、Prompt、评价指标、评分方法、评分示例、复现方法、测试结果、局限性、结论。这些标题以检索和复现为先,保持朴素,不强行改成悬念句或判断句。 - 研究评测类文章在
测试结果前必须让读者看见:被测版本或散列、统一输入、实际执行 Prompt、模型与关键参数、隔离条件、样本数与重复次数、盲评或随机化方式、指标定义和权重、逐项评分示例、可运行命令与原始产物索引。缺一项就只能写“探索性观察”,不能给确定排名。 - 先确定章节的认知阶段,再给 H2/H3 命名。并列问题使用正交概念,不把人物性别、 “案例一 / 案例二”或偶然先后当作本质;没有真实顺序时禁止用“先……再……”制造 流程。用户已明确给定章节名时默认保留,除非它与正文或传播目标明显冲突。
repost 管线不改写来源正文。完整读取 来源保真、转载增量 与 作者性边界,把来源放入唯一 data-repost-source="true" 冻结区;只把新增开场、来源标注、收尾和品牌微文案交给写作链路。
Step 3: Apply the editorial template
读取 $SKILL_DIR/references/article-template.md 与编辑模板模块,将正文装入固定语义结构:
- 标题与发布元数据;
4:3横向正文首图;- 导语;
- 正文与稳定的 H2/H3 层级;Lovpen 微信 HTML 可据此生成 TOC,canonical Markdown 默认不写死呈现型目录;
- 结论或“写在最后”;
- 有真实去向时加入代码、原文、博客或延伸阅读;
- 稳定品牌尾注;
- 结论之后、品牌尾注之前的封面说明:真实艺术作品写“本期封面”,生成式封面写可复制的“封面 Prompt”;
read_original_url、来源和发布字段。
用 scripts/build_article_package.py 建立目录和 manifest。不得为了填满模板创造不存在的链接、产品或作者经历。
现有文章使用 brand 管线时,额外读取 品牌化版本。publication、brand 与 products 必须分开;品牌尾注默认不枚举产品,只有与正文直接相关或用户明确要求时才加入。
Step 4: Produce the cover package
读取 $SKILL_DIR/references/cover-system.md、$SKILL_DIR/prompts/cover-art.md 与封面模块:
- 从文章命题提取一个主视觉隐喻,不使用机器人、代码 UI、霓虹、科技粒子或伪文字凑“AI 感”。
- 生成不含 Logo、标题、字母、数字和水印的艺术底图,分别为分享封面和正文首图保留安全区。
- 使用同一视觉语言分别构图分享封面和
4:3正文首图;不要复用已叠 Logo 的分享封面成品,也不要机械拉伸。 - 运行
scripts/compose_covers.py,使用发布主体官方白色横向 raster Logo 确定性合成并输出 PNG、JPG 与 manifest;脚本必须拒绝方形和非白色 Logo。 - 分享封面用于公众号消息列表;
4:3正文首图位于正文第一块、导语之前。
Step 5: Run the quality gate
读取 $SKILL_DIR/references/quality-gate.md,运行:
python3 "$SKILL_DIR/scripts/validate_article_package.py" \
--package ARTICLE_PACKAGE \
--json
同时做人工语义检查:事实与引语、作者位置、文风节奏、标题与摘要、延伸阅读、品牌主体、封面焦点、Logo 完整性和正文首图移动阅读效果。研究评测类文章还必须逐项核对实验输入、Prompt、环境、评分规则、原始结果与复现入口。audit 只报告;其他管线发现问题后直接修复并重跑。
转载包还必须运行:
python3 "$SKILL_DIR/scripts/audit_repost.py" \
--source-text SOURCE_TEXT \
--edition-html EDITION_HTML \
--source-account SOURCE_ACCOUNT \
--source-url SOURCE_URL \
--copyright-mode reprint
Step 6: Deliver the package
默认输出到当前工作区 output/articles/<slug>/:
article.md
article-manifest.json
sources.md
cover/
art-master.png
wechat-cover-wide.png
wechat-cover-wide.jpg
article-opening-4x3.png
article-opening-4x3.jpg
cover-manifest.json
quality-report.json
repost 管线另外输出来源快照、source-assets/、edition-manifest.json 和保真审计收据;远端 Lovpen HTML 与发布收据由 Publisher 生成。
报告事实支持范围、实际文件、使用的 Profile 来源和验证结果。未获授权时,不创建公众号草稿、不正式发布、不发送外部消息。
Dependencies
- Python 3.9+、PyYAML、Pillow。
- 完整封面需要宿主提供图像生成或合法素材输入;确定性合成本身不需要网络。
lov-writing-style是正文文风的唯一外部 owner;其作者性审计由lov-human-writing内置完成。- 发布和公众号后台编辑属于下游
lov-publish-wechat-article,不属于本 Skill 的默认交付。
References
Signals
- GitHub stars
- 66
- Forks
- 17
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
lov-article-creator- Source
- github.com/lovstudio/skills