# AI 辅助公众号内容生产 · 开源方案调研（数昌科技）

调研日期：2026-09-17｜方法：本地 README + `gh api` 读取仓库文件｜星数与更新时间取自 `gh api repos/OWNER/REPO`（stargazers_count / pushed_at）

> 写作过程日志：以下「逐仓库记录」为边查边追加，最终整理进一～五节。

## 逐仓库记录（过程稿）

### R1 imraywang/wewrite
- 星数 3314｜最近推送 2026-09-14｜MIT｜描述：公众号内容全流程 Skill，从热点抓取到微信草稿箱
- 结构：主入口 wewrite + 9 个子 skill（topic/write/review/visual/publish/learn/stats/rewrite/style）；「prompt 负责判断，Python 负责确定性」三层解耦（skills/ · wewrite CLI · ~/.wewrite/ 状态）（README.md）
- 每篇任务目录留存 brief.yaml、claims.yaml、draft.md、article.md、review-report.json（README.md「内容质量」）
- 微信兼容自动修复：外链→脚注、CJK-Latin 加空格、加粗标点移出 strong、ul/ol→section、暗黑模式 data-darkmode-*、CSS 全内联（README.md）
- 价值：高（全流程、方法论最完整）

### R2 aiworkskills/wechat-article-skills
- 星数 616｜最近推送 2026-09-17｜Apache-2.0
- 9 个 skill：main/topics/writing/review/formatting/images/publish/sticker/assets；每一步停下等确认（README.md）
- 业务资料库 `.aws-article/products/{产品名}/`，写自家业务文章前自动查（README.md）
- 审稿：敏感词 / 错别字 / 规范比对，三级结果；2026-06-01 引入「AI 味自检」（README.md 更新日志）
- 发布：封面 2.35:1 与 1:1 裁剪框 pic_crop_235_1 / pic_crop_1_1（README.md）
- 价值：高（企业业务资料库 + 审稿三级 + 敏感词）

### R3 JimLiu/baoyu-skills
- 星数 25966｜最近推送 2026-09-10｜MIT
- 相关 skill：baoyu-post-to-wechat（接口/浏览器/远程 接口 三种发布；多账号 EXTEND.md）、baoyu-markdown-to-html（--cite 外链转文末引用）、baoyu-format-markdown、baoyu-cover-image、baoyu-article-illustrator、baoyu-image-gen、baoyu-translate、baoyu-compress-image（README.md）
- 定制机制：`.baoyu-skills/<skill>/EXTEND.md` 项目级优先于用户级（README.md Customization）
- 价值：高（发布与多账号最成熟；数昌两个号正好用多账号）

### R4 geekjourneyx/md2wechat-skill
- 星数 3651｜最近推送 2026-09-12｜许可：Source Available（商用需授权，gh 显示 NOASSERTION）
- Go CLI：inspect（readiness/blockers）→ preview → convert --draft；humanize、title suggest、generate_cover；专业 接口 ¥199 永久（README.md）
- 价值：中（inspect 发布前体检思路好；商用授权受限）

### R5 caol64/wenyan-mcp
- 星数 1314｜最近推送 2026-04-29｜Apache-2.0
- MCP 工具：list_themes / publish_article / 注册删除主题；frontmatter title 必填，cover 缺省取正文首图；Server 模式绕 IP 白名单、支持多公众号（README.md）
- 价值：中（发布通道轻量；方法论无）

### R6 liangjfblue/writer-dna
- 星数 100｜最近推送 2026-04-13｜无许可声明
- 从素材蒸馏写作风格→生成个人写作 skill；人格轨 + 技法轨；五层自检 L1–L5；[CONFIRMED]/[LEARNED] 证据标签（README.md）
- 价值：中（风格学习方法可借鉴）

### R7 YuppyChen/ai-wechat
- 星数 65｜最近推送 2026-03-19｜无许可声明
- 工作流：记灵感→展开观点→创建草稿→删改→配图→格式化→去AI味→转HTML→发布→归档；组合 baoyu-skills + humanizer-zh（README.md）
- 价值：中（「你是导演 AI 是编剧」的人机分工清晰）

### R8 Mor-Li/ccblog
- 星数 136｜最近推送 2026-07-20｜MIT
- 多 Agent：PDF 解析→抓取→写作→Gemini 评审→内容优化→引导重写→图表生成；发布走 wenyan-mcp（README.md）
- 价值：中（「另一模型对照原文批判审查」适合研报/政策解读）

### R1 深挖：imraywang/wewrite（已读文件）
读过：skills/wewrite/SKILL.md、skills/wewrite-topic/SKILL.md、skills/wewrite-topic/references/topic-selection.md、skills/wewrite-write/SKILL.md、references/article-brief.md、content-enhance.md、editorial-quality.md、frameworks-quick.md、personas/industry-observer.yaml、skills/wewrite-review/SKILL.md、references/seo-rules.md、skills/wewrite-publish/SKILL.md、references/wechat-constraints.md、skills/wewrite-learn/SKILL.md、references/learn-edits.md、skills/wewrite-stats/SKILL.md、references/effect-review.md、skills/wewrite-style/references/style-template.md、docs/content-quality-rubric.md、src/wewrite/commands/humanness_score.py、validate_html.py、src/wewrite/toolkit/publisher.py、wechat_api.py、src/wewrite/commands/fetch_stats.py
要点：
- 运行原则：默认连续跑完正文；「写一篇」只交付本地审过稿，不生图不发布；只有用户本轮明确说「推到草稿箱」才 `run permission publish allow`（skills/wewrite/SKILL.md）
- 选题：10 个 = 5–6 热点 + 2–3 高频需求 + 2–3 常青；总分 = 热度×0.3 + 相关度×0.4 + 切入价值×0.3；blacklist 命中直接 0 分淘汰；7 天内同关键词扣 3 分、7–30 天扣 1 分；stats 不足 5 篇跳过效果加权（topic-selection.md）
- 高频需求：搜狗无阅读量，只能用「同题密度」（≥5 个账号 8–10 分）；必须附「需求本质 / 形式逻辑 / 供给缺口」三段逻辑拆解；窗口过后给不出差异化的照抄式选题切入价值封顶 4 分（topic-selection.md）
- 任务书 brief.yaml 字段：audience(who/context/question)、goal(takeaway/action)、thesis(statement/novelty/boundary/counterpoint)、personal_materials、framework、sections(purpose/claim_ids)、constraints（article-brief.md）
- 主张清单 claims.yaml：type = fact/inference/opinion/user_experience；status = supported/bounded/unsupported；unsupported 不得进初稿；无法对应主张的段落默认删除（article-brief.md）
- 来源账本：`wewrite sources add --url --publisher --published-at --claim --status verified`；不得把搜索摘要、模型记忆、范文标为 verified（wewrite-write/SKILL.md）
- 七框架：痛点/故事/清单/对比/热点解读/观点/复盘，各有推进链（frameworks-quick.md）
- 编辑五项：准确、观点、有用、合声、好读，各 1–5 分；平均≥4、单项≥3、无阻断才 pass；revise 必须真改后复审，最多两轮（editorial-quality.md）
- 阻断四条：编造亲历/采访/对话；核心事实无来源；推断写成确定事实；没给读者结论或行动（editorial-quality.md）
- 标题：主标题 + 2 备选；摘要 40 字内不重复标题；3–5 标签；不为打开率虚构数字（seo-rules.md）
- 去 AI 味（机械风险提示，不参与是否可发布判定）：BANNED_WORDS 列表（首先/其次/综上所述/值得注意的是/众所周知/具有重要意义/发挥着重要作用/引发了广泛关注…）+ 句长标准差、句长极差、段长方差、词汇丰富度、情绪平衡、副词密度、句子完整性、来源信号、语域一致性、插入语控制，共 11 项（humanness_score.py）
- 风格飞轮：lesson pattern 含 type/key/rule/scope/scope_value/confirmed；同范围重复≥2 次且 confidence≥5 或用户确认才成硬规则；按时间衰减，低于 2 失效（learn-edits.md）
- 范文库：只校准结构与节奏，allowed_uses 仅 style/structure，personal_materials_reusable=false（learn-edits.md）
- 数据回填：`wewrite stats --days 7` 调 /datacube/getarticlesummary 与 getarticletotal，回填 history.yaml 阅读/分享/点赞/阅读率，刚发布需等 24h（effect-review.md、fetch_stats.py）
- 发布预检：摘要≤120 字节；正文 200–20000 字；图片≤10 张；表格≤4 列；草稿必须有封面（wewrite-publish/SKILL.md）
- 接口 链：cgi-bin/token → media/uploadimg（正文图，返回 url）→ material/add_material（封面，返回 thumb_media_id）→ draft/add（wechat_api.py、publisher.py）
- HTML 校验 ERROR 规则：style/script/link 标签、div、class、id、position fixed/absolute/sticky、float、@media、@keyframes/animation、@import、display:grid、var(--x)、外部字体；WARN：iframe、非 mp.weixin.qq.com 外链、图片>10（validate_html.py）
- 注意：wechat-constraints.md 头部标注「DEV-REFERENCE ONLY」，其中「用 CSS 伪元素实现装饰」一句与 aiworkskills README「微信正文没有伪元素」相矛盾，以后者+validate 规则为准（待实测）

### R2 深挖：aiworkskills/wechat-article-skills（已读文件）
读过：skills/aws-wechat-article-main/SKILL.md、references/articlescreening-schema.md、references/presets/review-rules.example.yaml、references/writing-spec.example.md；skills/aws-wechat-article-topics/SKILL.md、references/research-strategy.md、output-format.md、title-presets.md；skills/aws-wechat-article-writing/SKILL.md、references/structure-template.md；skills/aws-wechat-article-review/SKILL.md、references/checklist.md、ai-flavor-check.md；skills/aws-wechat-article-formatting/references/wechat-html-constraints.md；skills/aws-wechat-article-publish/references/api-reference.md、pre-publish-checklist.md、submit-guide.md；skills/aws-wechat-article-assets/SKILL.md；skills/aws-wechat-article-images/references/image-method.md
要点：
- 流水线：选题 → 写稿 → 内容审 → 排版 → 配图 → 终审 → 发布；各步产物 topic-card.md/research.md → draft.md → review.md+article.md → article.html → imgs/+cover.* → review.md（main/SKILL.md）
- 全局三键 article_category / target_reader / default_author 必须非空，缺就逐项问、写回 config.yaml，禁止擅自反推（main/SKILL.md）
- 写作意图 BLOCKING：用户没说写什么之前禁止 web_search 和批量出选题（main/SKILL.md）
- 中间产物门禁表：排版必须由「当前」article.md 重生成；正文仍含 placeholder 时只能说「草稿已提交，正文配图未完成」（main/SKILL.md）
- 连续几篇不要选同一套模版/配色/封面形态，开工前 grep 最近 3 篇 article.yaml（main/SKILL.md）
- 所有脚本输出落盘为 `<环节>.log`（main/SKILL.md）
- 选题四模式 A 明确/B 有方向/C 无方向/D 系列；每模式 web_search 4–6 次、web_fetch 2–3 篇；A 模式产出「竞品角度/关键数据/读者痛点/差异化机会」（research-strategy.md）
- 选题卡：标题候选 3–5（混合 悬念/干货/数字/反问/故事）、切入角度、大纲预览（分节字数）、工作量星级、是否需额外素材、摘要候选 80–128 字；摘要不得与正文首个 `>` 导语同句（output-format.md、title-presets.md）
- 禁用标题套路：浅谈、万字长文、建议收藏、震惊等，以 forbidden_title_phrases 为准（title-presets.md）
- 写作「产出配额」：`>` 导语 80–128 字；加粗约每 100 字一处、连续 200 字不得无加粗、每节至少一处、一段最多两处，「把加粗抽出来连读应是一篇缩写版」；三项以上并列用 `- **标签**：说明`；金句恰好一处且带出处；`write.py check` 自动量（writing/SKILL.md）
- 配图密度：每节一图 / 按需 / 少图 1–2 / 多图每 2–3 段；配图类型仅 封面/实证/信息图/氛围；「实证」必须真实素材不许生成（writing/SKILL.md、structure-template.md）
- 配图判据：「删掉它读者是看不懂还是读不下去」→ 信息位（文字须逐字取自文章）/ 节奏位；判定要删 2 张以上时不自行删，交用户决定（image-method.md）
- 写作溯源：写稿时正文注入「（资料路径：…）」，定稿前必须用 `write.py strip-citations` 剥离，禁止手工 sed（review/SKILL.md）
- 审稿两模式：内容审（writing 后）/ 终审（publish 前，查 html、cover.*、placeholder、发布要素）；结果三级 🔴必须 🟡建议 🟢通过；有 🔴 必须进修改循环（review/SKILL.md）
- 自定义审稿规则 review-rules.yaml：name / check / level(必须/建议)，示例「品牌名称必须用全称」「数据必须标来源和日期」「文末必须有行动号召」（review-rules.example.yaml）
- 敏感词：config 的 custom_sensitive_words、forbidden_words 逐条过（review/references/checklist.md）；未找到内置敏感词库文件
- AI 味指纹库 15 条（三段式排比、不是X而是Y、面面俱到、反复让步、命名仪式感、情绪太平滑、你值得/愿你收尾、翻译腔、万能套话开头、强行拔高、模板化假故事、总分总八股、标点节奏过整、程度词通胀、概念名词扎堆），强/中/弱三档；防误判阈值：「不是X是Y」800 字内≥3 次才算；只诊断、默认 🟡 不阻断（ai-flavor-check.md）
- 写作规范示例：「」代替 ""、中英文间加空格、单句≤40 字、每段≤5 行、标题≤25 字、小标题≤15 字、禁「在当今社会」「随着科技的发展」「99% 的人不知道」（writing-spec.example.md）
- 业务资料库 products/{产品名}/：写自家业务前必读、新产出的业务介绍引导入库（assets/SKILL.md）
- 微信 HTML 实测（2026-09-05～07 探针稿，接口 draft/add→draft/get 回读）：接口 路径下 flex+gap、inline-block、linear-gradient、table、内联 SVG、box-shadow、transform:rotate 均保留；position、id、calc()、text-decoration-thickness、text-underline-offset、img 的 width 属性被删；手机微信中文 font-family 完全无效、font-weight 有效；filter、float 在 HTML 里保留但手机不渲染；正文约 335px 列宽无法满版出血；没有伪元素/伪类/@media（wechat-html-constraints.md）
- 行内元素加底色不要用 padding（撑高行盒），改用 linear-gradient 半高高亮或 box-shadow（wechat-html-constraints.md）
- SVG：不能有 id（渐变/pattern/clipPath/mask/filter/use 全不可用）；`<image>` 必须是微信素材库地址；SVG 不会随文字长高（wechat-html-constraints.md）
- 接口：token（2h 缓存）→ material/add_material（封面≤10MB）→ media/uploadimg（正文图≤1MB，jpg/png，返回 mmbiz URL）→ draft/add（title≤32 字、author≤16 字、digest≤128 字、content≤2 万字符）→ freepublish/submit（异步）→ freepublish/get（publish_status 0–6）；常见错误码 40001/40004/40009/45009/45028/48001（api-reference.md）
- 发布侧检查：publish_method 合法、账号槽位由用户选定、AppID/Secret 已填、IP 白名单、封面在文章目录、正文不挂未群发文章链接、pic_crop 需要 Pillow（pre-publish-checklist.md）
- api-reference.md 写「需要已认证的服务号或订阅号」——该前提未独立核实，数昌两个号是否认证需自查

### R3 深挖：JimLiu/baoyu-skills（已读文件）
读过：skills/baoyu-post-to-wechat/SKILL.md、references/article-posting.md、api-setup.md、multi-account.md；skills/baoyu-markdown-to-html/SKILL.md；skills/baoyu-format-markdown/SKILL.md、references/title-formulas.md；skills/baoyu-article-illustrator/references/workflow.md
要点：
- 发布工作流：Step0 读 EXTEND.md → Step0.5 多账号选择 → Step1 判输入类型（html/md/纯文本）→ Step2 选方式（api/browser/remote-api）→ Step3 主题配色与元数据校验 → Step4 发布 → Step5 完成报告（含 media_id 与草稿箱入口）（post-to-wechat/SKILL.md）
- 元数据回退：摘要 = frontmatter description→summary→首段截 120 字；封面 = --cover→frontmatter→imgs/cover.png→正文首图→仍无则停下要图；作者 = CLI→frontmatter→EXTEND.md default_author（post-to-wechat/SKILL.md）
- 「不要预先把 markdown 转成 HTML」：接口 路径渲染 `<img>` 上传，浏览器路径用 WECHATIMGPH_N 占位再逐张粘贴，混用会坏（post-to-wechat/SKILL.md、article-posting.md）
- draft/add 规则：article_type news/newspic；news 必须 thumb_media_id；始终带 need_open_comment（默认1）/only_fans_can_comment（默认0）；content_source_url ≤1KB 显示为「阅读原文」（post-to-wechat/SKILL.md）
- remote-api：本机 IP 不在白名单时，经 SSH SOCKS5（ssh -N -D）把 api.weixin.qq.com 请求从白名单服务器出口，远端不落文件、AppSecret 不出本机；IP 不对报 errcode 40164（post-to-wechat/SKILL.md）
- 多账号：EXTEND.md `accounts:` 列表，每号 name/alias/default/default_publish_method/default_author/评论开关/app_id；也可 .env 用别名前缀 WECHAT_<ALIAS>_APP_ID（README.md、multi-account.md）
- 外链：post-to-wechat 的 markdown 路径默认把普通外链转文末「引用链接」，mp.weixin.qq.com 链接保留直链，--no-cite 关闭；markdown-to-html 默认关闭需 --cite（两个 SKILL.md）
- 标题公式 8 种（颠覆/解法/悬念/具体数字/反差/结果前置/反问/共鸣）+ 直述型；原则：前 5 个字给钩子、具体胜抽象、≤约 30 字、准确不标题党；禁「浅谈XX」「震惊」「万字长文」「建议收藏」、无方向的提问（format-markdown/references/title-formulas.md）
- format-markdown：先「读者视角分析」产出 Highlights / Structure / Reader-Important Info / Formatting Issues / Typos，再格式化，最后脚本做全角引号、CJK 空格、autocorrect（format-markdown/SKILL.md）
- 价值：高（发布、多账号、远程出口最成熟）；不含选题/审稿方法论

### R9 op7418/Humanizer-zh（补充）
- 星数 17422｜最近推送 2026-01-19｜MIT｜Humanizer 汉化版 Claude Code Skill，去 AI 痕迹
- 读过：SKILL.md
- 依据维基百科 WikiProject AI Cleanup「AI 写作特征」；24 种模式分五组：内容模式（过度强调意义、强调知名度、肤浅分析、广告语、模糊归因、「挑战与未来展望」段）、语言语法（AI 词汇「此外/至关重要/深入探讨/格局/宝贵的…」、系动词回避、否定式排比、三段式、同义词循环、虚假范围）、风格（破折号、粗体过度、内联标题列表、标题大写、表情符号、弯引号）、交流痕迹（协作语、知识截止声明、谄媚）、填充与回避（填充短语、过度限定、通用积极结论）（SKILL.md）
- 核心 5 条：删填充短语、打破公式结构、变化节奏（两项优于三项）、信任读者、删金句（SKILL.md）
- 快速检查：连续三句等长就打断；揭示前的破折号删掉；三段式改两项或四项（SKILL.md）
- 质量评分 5 维各 10 分：直接性、节奏、信任度、真实性、精炼度；45–50 优秀、<35 重修（SKILL.md）
- 注意：它鼓励「适当用我」「允许跑题和混乱」「有观点有情绪」，面向个人写作；对企业官方号需裁剪，不宜照搬
- 价值：中高（规则清单可直接改造成数昌的去 AI 味检查项）

### R4 深挖：geekjourneyx/md2wechat-skill（已读文件）
读过：docs/HUMANIZE.md、docs/BRAND-PROFILE.md、docs/DISCOVERY.md、skills/md2wechat/SKILL.md、internal/assets/builtin/prompts/humanizer/base.yaml、authentic.yaml
要点：
- humanize 四档强度：gentle（只清填充短语）/ medium（默认）/ aggressive（大改需人工复核）/ authentic（不按 24 模式做减法，改用六维规则重写）；`--show-changes` 输出改动与五维评分（HUMANIZE.md）
- authentic 六维规则：用词（少用「深刻/本质上/值得注意的是/具有重要意义」；能说「是」就说「是」；少堆「路径/机制/维度/格局/生态/范式/赋能/协同/闭环」）、句式（禁「不是……而是……」「问题不在于……而在于……」「答案很简单」；不连续同一句式开头；句尾不硬加「凸显了其重要性」）、语气（不故作深刻/犀利；不用「关键来了」「但事情没那么简单」；不居高临下「让我们拆开来看」；不假装坦率「说实话」）、内容（具体对象/动作/原因/结果；禁模糊归因「业内普遍认为」「专家指出」；不生造概念；不拔高成「底层重构」「重新定义一切」）、结构（不反复小结、不重复观点、不堆类比、不用「综上所述」收尾）、整体（宁可朴素，信息量、真实感、具体性优先）（authentic.yaml）
- Brand Profile：`~/.config/md2wechat/brand.md` 自由格式 Markdown，建议章节 基本信息 / 语气与风格（最重要，写正例和反例，「反例约束力比正例强」）/ 开头偏好（verdict_first、story_first、question_first、data_first）/ 排版偏好 / 默认 CTA / 作者卡片 / 风格参考；Agent 当软约束读（BRAND-PROFILE.md）
- 发布前 readiness：`inspect --draft --cover --json` 输出 data.readiness.targets / blockers，Agent 执行 convert/upload/draft 前必须用同一目标跑 inspect；`doctor` 只查本地配置可尝试性，不连远端；fail closed（DISCOVERY.md）
- 价值：中（humanize authentic 规则与 brand.md 结构最值得借；核心排版走付费 接口，商用需授权）

### R6 深挖：liangjfblue/writer-dna（已读文件，默认分支 master）
读过：CLAUDE.md、templates/khazix-writer/SKILL.md、templates/khazix-writer/references/content_methodology.md
要点：
- 三阶段：①引导收集 profile.md + 素材入 raw/（articles/chats/references/interviews）②双轨分析生成 wiki/（persona：core-values、tone-voice；craft：vocabulary、techniques、self-check）③生成 skill 包 outputs/<名>-writer/（CLAUDE.md）
- 素材充分度四档：仅 profile＝不足；1–5 篇＝基础；6–10 篇或>3 万字＝充分；10+ 篇多类型或>5 万字＝丰富（CLAUDE.md）
- 素材权重：有自己作品时 chats 3x、articles 2x、references 1x、interviews 1x；冲突时以作品为准、默认反映最近 6 个月风格，矛盾全部交用户决定（CLAUDE.md）
- 证据标签四档：[CONFIRMED] 自己素材有证据 / [LEARNED] 从参考作者学来 / [SUGGESTED] 推断未见 / [UNIQUE] 独有写法（CLAUDE.md）
- tone-voice 八维：句子节奏、段落习惯、人称、情绪表达、标点偏好、叙述视角、正式度、类型特有语气（CLAUDE.md）
- vocabulary 含「质感光谱」：用一句比喻定整体质地，并明确「不存在」的质感方向——解决「同样技法不同质感味道不同」（CLAUDE.md）
- techniques 三步：结构发现（作品原型/整体结构/开头/结尾/衔接）→ 技法发现（每条附 1–3 个真实例句）→ 节奏密度量化（CLAUDE.md）
- 五层自检：L1 硬规则零容忍（禁用词全文搜索必替换）/ L2 风格一致性 / L3 内容质量 / L4 作者声音 / L5 运行时纠错（格式「当[场景]时，不应[X]，应[Y]」，最多 50 条，优先级 L5>L1>L2>L3>L4）；L1、L5 不过则阻断（CLAUDE.md）
- 「出生体检」：生成 500–1000 字仿写测试稿，与素材逐段比节奏/质感/用词/情感/余韵，差异转为 L5（CLAUDE.md）
- 风格确认：一次只问一个维度（「这是你的口癖吗」「这些词我标为禁用词要调整吗」）（CLAUDE.md）
- 公众号公文等类型都适用，明确举例「公文需要权威感」（CLAUDE.md）
- 价值：中高（数昌可用它把已发文章+官方口径蒸馏成「数昌写作 skill」）；仓库无许可声明，复用代码/文本需注意

### R8 深挖：Mor-Li/ccblog（已读文件）
读过：CLAUDE.md、.claude/agents/gemini-blog-critic.md、.claude/agents/blog-content-refiner.md、.claude/agents/wechat-blog-writer.md
要点：
- 评审 agent 不自己写评语，把「原始材料 + 初稿」一起交给另一个模型（Gemini），按四块输出：内容完整性（原文关键发现漏了什么）、准确性与逻辑一致性、清晰度与可读性、改进建议（按对读者理解的影响排序），存为 gemini-critique.md（gemini-blog-critic.md）
- 优化 agent 原则：不整篇重写，只在指定行号「插入」解释/过渡/纠错；优先级 事实准确 > 逻辑清晰 > 可读性 > 吸引力；核对原文关键图是否漏插；图片 alt 里不要用中文引号（会破坏微信渲染）（blog-content-refiner.md）
- 发布踩坑（经 wenyan-mcp 走 接口）：Markdown 锚点链接 `[x](#anchor)` → 错误码 45166；失效的 mp.weixin.qq.com 链接 → 45166；WebP 图（含改了扩展名的）→ 40113；接口 上传图片 >1MB → system error（后台手动 10MB）；附发布前检查脚本（查>1MB、查 WebP、查锚点）（CLAUDE.md）
- 价值：中（「对照原文的交叉评审」适合政策/研报解读；踩坑清单直接可用）

### R7 深挖：YuppyChen/ai-wechat
- 仓库只有 README 与 .agents/skills 下的 baoyu-skills 副本；工作流已在 README 记录，未找到额外的风格文件（02-资源/写作风格.md 未入库）

### R5 深挖：caol64/wenyan-mcp
- README 已覆盖：MCP 工具 list_themes / register / remove / publish_article；frontmatter title 必填、cover 缺省取正文首图、支持 need_open_comment / only_fans_can_comment；type:image 或 image_list（≤20 张）发小绿书；Server 模式绕 IP 白名单并支持多公众号；图片支持本地绝对/相对路径与网络 URL，自动上传素材库（README.md）

### R10 blader/humanizer（补充）
- 星数 49345｜最近推送 2026-09-06｜MIT｜英文原版「去除 AI 写作痕迹」Agent skill；Humanizer-zh 为其汉化版（Humanizer-zh README 自述）
- 未单独读文件（中文场景以 R9 汉化版为准）｜价值：低（英文）

### R11 MrGeDiao/shuorenhua（说人话）
- 星数 1771｜最近推送 2026-09-17｜MIT｜中文优先去 AI 味改写 skill：保事实、分场景
- 读过：SKILL.md、README.md；另有 references/editing-guide.md、examples.md 与 automation/eval（盲评、硬指标）未细读
- 要点：不判断「是不是 AI 写的」、不输出 AI 含量；默认最小必要修改，中文长文约 1000 字以上默认保留句段结构（SKILL.md）
- 「保住什么」：事实、判断、谁做什么、数字、条件、范围、否定、情态、比较关系；数字/版本/命令/引语原样保留；报道别人的宣传说法≠作者在宣传（SKILL.md）
- 允许的改动只有：删纯招呼/致谢/空预告/口头填充；删只提示行文顺序的成分；删完整重复；简化名词化与累赘功能词；删无依据的读者身份认证语（SKILL.md）
- 三档范围：structural（可删并重排）/ bounded（只句内清理，空句列「建议删除（待确认）」）/ in-place（不删不并不拆）（SKILL.md）
- 来源不明：「研究表明」「专家认为」默认保留归属并在正文外提示缺来源，不能去掉归属让它变成裸事实；绝不编出处（SKILL.md）
- annotation mode：只标问题不改写，每条理由须有原文支持，没问题就直说（SKILL.md）
- 价值：高（对企业号「保口径、保事实」最契合）

### R12 larashero3-dotcom/lieflat-less-ai-tone（去AI味，语料实测版）
- 星数 1700｜最近推送 2026-08-24｜MIT
- 读过：SKILL.md、RESEARCH.md；scripts/check-structure.py、check-translationese.py、compare-human-ai.py 未细读
- 语料：AI 300 篇（5 个模型各 60 篇，117.9 万字）对照人类 329 篇（164.8 万字）；按每千字/每百段/占同类比例三种分母（RESEARCH.md）
- 硬边界：白名单式改写，只改 11 条规则命中处；信息守恒——不许新增姓名/数字/日期/引语/来源/因果/细节，也不许删限定词和让步（「可能提升」改「提升」算篡改）；判断法「改写后每个实词都要能在原文指出出处」（SKILL.md）
- 11 条规则：翻案腔（不是…而是/并非…而是/看似…实则/你以为…其实/说到底）、顿号罗列过密、相邻句同构、破折号滥用、冒号滥用、序数词当小标题、拟人化喻体、把已有具体数据写回概括、禁用起手式（说白了/说穿了/先说结论）、翻译腔五种、段首零主语评论（SKILL.md）
- 「不作为改写理由」（实测站不住）：句长段长不够参差、单字虚词少、反复写全称、被动句、名词化长句、正文「首先……其次」、句内同构排比、问句、比喻（SKILL.md）
- 体裁：学术、新闻、公文不必强加「我/你」、不必拆短段（SKILL.md）
- 重要冲突：wewrite 的 humanness_score.py 把句长标准差、段长方差、「首先/其次」列为风险项；本仓库 RESEARCH.md 称早期「AI 句长均匀 51 倍」结论是切分错误，修正后 0.87 倍无差异。两者口径不一，数昌若做机械检查应以可定位句式为主，不以句长离散度为准
- 价值：高

### R13 KKKKhazix/khazix-skills（khazix-writer）
- 星数 20749｜最近推送 2026-09-16｜MIT｜卡兹克开源 Skills 合集，含 khazix-writer（writer-dna 的参考实现）
- 读过：khazix-writer/SKILL.md
- 选题 HKR 质检：H 有趣/悬念、K 信息量、R 情绪共鸣；三项兼备为 S 级，及格至少两项；只占一项要主动沟通调整（SKILL.md 第一步）
- AI 角色边界：AI 适合找证据与反证、找类比、按已定角度扩写、补学科背景、梳理结构；必须人来：第一手观察和经历、核心创意角度、真实情绪表达、数据到人物的同理心（SKILL.md 第二步）
- 协作流程：人给素材+观点+经历+情绪节点 → AI 补背景/证据/结构/扩写 → 人二次改写 → AI 四层自检出修改建议 → 人终审（SKILL.md）
- 四层自检：L1 硬规则（禁用词「说白了/这意味着/本质上/换句话说/不可否认/综上所述/首先其次最后/值得注意的是」；禁冒号、破折号、双引号；禁「让我们来看看」「在当今…的时代」；bullet 超过 3 个改散文；工具名必须具体）→ L2 风格一致性 → L3 内容质量（观点有具体支撑、知识「聊着聊着掏出来」、对立面与同理心、按原型专项）→ L4 活人感终审（SKILL.md）
- 注意：其标点禁令与「无小标题」是个人号风格，不适合直接套到数昌企业号
- 价值：中（HKR 选题质检、AI/人分工表可借；风格规则不可照搬）

### R14 iniwap/AIWriteX
- 星数 1984｜最近推送 2026-09-17｜Apache-2.0｜公众号全自动 AI 工具（CrewAI 多智能体：研究员→作家→审核员→设计师），热搜聚合、选题、采集、排版、配图、发布，多平台（README.md）
- 读过：README.md（前 140 行）
- 功能含「AI 融合洗稿」「对抗朱雀 AI 检测」「情感微扰随机注入主观表达」；README 自述「AI 生成完整长文通过检测会越来越难，建议 AI 辅助而非 AI 生成」（README.md）
- 价值：低（全自动+洗稿+对抗检测路线与企业号合规、口径锁定要求相冲突；仅「专家赛道=垂类参数+质量门槛+合规要求统一注入」的思路可参考）

### R15 doocs/md
- 星数 13337｜最近推送 2026-09-16｜WTFPL｜微信 Markdown 编辑器（在线 md.doocs.org），KaTeX、Mermaid、PlantUML、GFM 警告块，自定义主题色与 CSS，多图床（含公众号图床：appID/appsecret/代理域名），集成 DeepSeek/通义等 AI 助手（README.md）
- 价值：中（团队手工排版的免费备选；可作人工粘贴路径）

### R16 lyricat/wechat-format
- 星数 4550｜最近推送 2025-09-13｜无许可声明｜Markdown 转微信特制 HTML 的排版编辑器（仓库描述）
- 未读文件｜价值：低（一年未更新，doocs/md 可替代）

### R17 mdnice/markdown-nice
- 星数 4679｜最近推送 2023-10-06｜GPL-3.0｜支持主题设计的 Markdown 编辑器（仓库描述）
- 未读文件｜价值：低（近三年未更新）

### R18 wechat-article/wechat-article-exporter
- 星数 12908｜最近推送 2026-08-07｜MIT
- README 明确：2026-07-30 已停止维护，依赖的微信上游接口被官方关闭，在线站 2026-10-30 到期；曾支持导出 html/json/excel/txt/md/docx、阅读量与评论（需抓包凭据）（README.md）
- 价值：低（已不可用；对标号采集需另找途径）

### R19 cooderl/wewe-rss
- 星数 9667｜最近推送 2026-03-20｜MIT｜archived=true（gh api 显示已归档）
- 基于微信读书订阅公众号、生成 RSS/Atom/JSON、全文输出、标题过滤（README.md）
- 价值：低（已归档，稳定性无保障；若仍可部署，可用于行业资讯号的信息源监控）

### R20 huacnlee/autocorrect
- 星数 1630｜最近推送 2026-08-26｜MIT｜Rust 写的中文文案 linter/formatter：中英文间加空格、CJK 旁标点转全角、英文内标点转半角、实验性拼写检查；支持 Markdown/HTML 等 28 种文件、CI、LSP、Node/Python SDK（README.md）
- 价值：高（发布前机械校对的现成工具；baoyu-format-markdown 也调用 autocorrect）

### R21 sparanoid/chinese-copywriting-guidelines（中文文案排版指北）
- 星数 15693｜最近推送 2026-07-07｜MIT
- 章节：中英文之间加空格、中文与数字之间加空格、数字与单位之间加空格、全角标点与其他字符之间不加空格、不重复使用标点、使用全角中文标点、数字用半角、专有名词正确大小写、不用不地道缩写；争议项：简体中文使用直角引号（README.zh-Hans.md 标题）
- 价值：中（可作数昌排版规范的引用来源）

### R22 konsheng/Sensitive-lexicon
- 星数 4132｜最近推送 2026-08-17｜MIT｜中文敏感词库，覆盖政治、色情、暴力等，数万条纯文本（Vocabulary/、Organized/、ThirdPartyCompatibleFormats/），建议配 DFA/Trie 匹配（README.md）
- 价值：中（底层词库；需结合数昌自有禁用词与广告法词表）

### R23 toolgood/ToolGood.Words
- 星数 5188｜最近推送 2025-12-04｜Apache-2.0｜高性能敏感词检测组件，繁简互换、全半角互换、拼音、模糊搜索（仓库描述）
- 未读文件｜价值：中（若工具页要做规避写法识别，可参考其繁简/拼音/全半角归一化思路）

### R24 houbb/sensitive-word
- 星数 6053｜最近推送 2026-03-23｜Apache-2.0｜Java DFA 敏感词过滤框架，支持标签分类分级（仓库描述）
- 未读文件｜价值：低（Java 栈；分级思路可参考）

### R25 fighting41love/funNLP
- 星数 83166｜最近推送 2024-05-10｜NLP 资源合集，含中英文敏感词（仓库描述）
- 未读文件｜价值：低（资源导航，非工具）

### R26 其他检索到但星数极低（≤3）的「公众号 skill / 内容合规」仓库
- shinelp100/mp-content-checker（1 星，检测敏感词、广告法违禁词、诱导分享）、sdhack/ecommerce-content-review（3 星，广告法违禁词三级审核）、zackzhangkai/wechat-mp-skill（2 星）等——成熟度不足，仅记录，未深读
- 未找到星数较高、专门面向「公众号内容合规/广告法」的开源规则库

