公众号审稿|公众号校对|敏感词检测|内容合规 — 公众号发布前合规审查:敏感词扫描、错别字检测、政治合规、平台规范校验,一次性输出修改清单。面向公众号编辑、自媒体作者、合规岗。触发词:「审稿」「审核」「校对」「合规」「敏感词」「错别字」「稿子检查一下」「稿子帮我看看」「稿子写完了」「文章检查一下」「检查下有没有问题」「能不能发」「发布前检查」。需要多环节串联(写+审+排+配图+发)请走 aws-wechat-article-main。
npx skills add https://github.com/aiworkskills/wechat-article-skills --skill aws-wechat-article-review
公众号发布前合规守门员 —— 敏感词、错别字、平台规范一次性筛查,输出可执行修改清单。
> 套件说明 · 本 skill 属 aws-wechat-article-* 一条龙套件(共 9 个 slug,入口 aws-wechat-article-main)。跨 skill 的相对引用依赖同一 skills/ 目录,建议一并 clawhub install 全套。源码:<https://github.com/aiworkskills/wechat-article-skills>
本 skill 为纯本地规则/清单审稿,零网络、零凭证、不调用任何外部脚本。
.aws-article/config.yaml、.aws-article/writing-spec.md(如有)、.aws-article/presets/review-rules.yaml(如有)、本篇 draft.md / article.html / article.yamlarticle.md 定稿、审稿记录> 往期推荐链接的自动补齐由 publish skill 处理(那里才有微信 API 凭证与 getdraft.py);本 skill 只做「若 embeds.related_articles.manual 非空则按其排占位符」与「若为空则在审稿输出中提示需 publish 补齐或手填」,不直接调任何网络脚本。
本 skill 是 aws-wechat-article-* 一条龙公众号套件的审稿环节(入口 aws-wechat-article-main)。工作流中的若干步骤会读取同级 ../aws-wechat-article-main/references/*.md 等共享文档(首次引导、writing-spec、articlescreening schema 等)。
skills/ 根目录时,跨 skill 引用都能读到。file not found;本 skill 内的纯本地规则/清单审稿仍可用。完整 9 slug 清单见 源码仓库。
「能不能发」若含代为发布或从稿到发出整条收尾 → aws-wechat-article-main。
对文章做系统性检查,发现问题并引导修改。
| 模式 | 时机 | 检查重点 |
|------|------|---------|
| 内容审 | writing 之后、formatting 之前 | 内容质量、写作规范、敏感词、配图标记 |
| 终审 | publish 之前 | 排版完整性、图片就位、发布要素齐全 |
自动识别:有 article.html → 终审模式,否则 → 内容审模式。
审稿进度:
- [ ] 第1步:环境检查 + 本篇约束与规范
- [ ] 第2步:逐项检查
- [ ] 第3步:输出审稿结果
- [ ] 第4步:修改循环 🔄
- [ ] 第5步:确认通过 → **文末 embed(⛔ BLOCKING)** → 保存 `article.md` 定稿
article.md、或进入 排版(format.py)。article.md 必须已含文末 embed(按合并规则或合法省略),再进入排版。任何操作执行前,必须按 首次引导 执行其中的 「检测顺序」。检测通过后才能进行以下操作(或用户明确书面确认「本次不检查」):
从选题到发布的阻断规则见 main SKILL;单独启用本 skill 时亦须先满足同一套环境检查(或用户按 main 约定声明「本次例外」)。
然后读取:
.aws-article/writing-spec.md(如有).aws-article/presets/review-rules.yaml(如有)format.py 一致):先 .aws-article/config.yaml 顶层(不含 writing_model / image_model),再叠 本篇目录 article.yaml(同键本篇优先;仅 embeds.related_articles 与全局深度合并,其余 embeds 仍以全局为准)。审稿与内容向检查以合并结果为准(如 review_output_format、custom_sensitive_words、forbidden_words、target_reader、tone、image_density 等)。字段说明:articlescreening-schema.md。fallback:合并后仍缺关键约束时向用户说明「部分维度无法按本篇约束对齐」,并建议补全 config.yaml / article.yaml;无写作规范时跳过规范检查项;无自定义审稿规则时仅执行内置检查清单 references/checklist.md。
按模式执行不同检查项,详见:references/checklist.md
内容审 检查以下维度:
| 维度 | 检查内容 |
|------|---------|
| 标题 | 长度、禁用套路、与正文一致性 |
| 摘要 | 长度、信息量、与正文一致性 |
| 正文 | 敏感词、禁用词、错别字、事实出处 |
| 写作规范 | 对照 writing-spec.md 检查用词、句式、段落;深度与调性是否与 本篇合并配置 的 target_reader、tone 一致 |
| AI 味自检 | 对照 references/ai-flavor-check.md 的指纹库诊断文风,逐处标注信号强度(强/中/弱)。默认只诊断:命中折算为 🟡 建议修改,不 blocking、不影响定稿,由作者决定改不改 |
| 配图标记 | 封面标记存在、数量与 本篇合并配置 的 image_density 匹配、描述清晰 |
| 文末 embed | 定稿前须完成 第5步 ⛔ BLOCKING(与 format.py 的 {embed:…} 一致);未写入 article.md 不得定稿 |
| 原创标注 | 按 original_attribution 处理 |
终审 额外检查:
| 维度 | 检查内容 |
|------|---------|
| 排版 | article.html 存在且完整 |
| 图片 | imgs/ 下图片齐全、placeholder 已替换 |
| 发布要素 | 标题/摘要/作者/封面 全部就绪 |
按 review_output_format 输出:
输出模板:references/output-format.md
结果分三级:
有 🔴 项时必须进入修改循环:
发现问题 → 展示审稿结果 → 等用户/agent 修改 → 重新检查 → 直到无 🔴
修改方式:
draft.md每轮修改后自动重审被标记为 🔴 的项,不需要全量重审。
> ⚠️ Step 4 完成不代表可以保存 article.md。必须先完成 Step 5(文末 embed ⛔⛔ BLOCKING)才能写入 article.md 或进入排版。
全部 🔴 项消除后:
python {baseDir}/../aws-wechat-article-writing/scripts/write.py strip-citations <本篇 draft.md> -o <本篇 draft-stripped.md>
纯本地正则剥离正文中所有 (资料路径:...) 引用标注(writing 阶段为事实溯源强制注入,发布版必须去除以免泄露内部产品目录路径)。禁止用 sed / agent 肉眼撕替代该脚本 —— 历史多次出现"撕一遍漏一条"的事故。
embeds:在写入 article.md 之前完成本节下方「规则与表格」——先读取 .aws-article/config.yaml 并与本篇 article.yaml 合并(与第 1 步一致:除 embeds.related_articles 外,embeds 仅以全局为准;related_articles 与全局深度合并),再在 draft-stripped.md 的正文末尾(原有正文之后)按规则追加或合法省略占位符。占位符必须与合并后可解析的配置一致,否则排版阶段会失败。未完成本节不得保存定稿、不得调用 format.py。article.md(定稿);中间产物 draft-stripped.md 可保留备查或删除。定稿文末 embeds(规则与表格)
| 占位符 | 何时写入文末 | 配置对齐 |
|--------|----------------|----------|
| {embed:profile:…} | 全局 embeds.profiles 存在至少一条有效项(非空 nickname) | 每条有效 profile 一行,占位中 … = 该项 nickname |
| {embed:miniprogram:…} | 全局 embeds.miniprograms 存在至少一条有效项(非空 title) | 每条有效项一行,… = title |
| {embed:miniprogram_card:…} | 全局 embeds.miniprogram_cards 存在至少一条有效项(非空 title) | 每条有效项一行,… = title |
| {embed:link:…} | 往期链接:合并后 embeds.related_articles.manual 有有效项时;或见下方「无 manual」 | … = 该项 name;文末相关链接至多 3 条 |
{embed:link:…}:manual 已有 name + url:在文末追加对应占位符,最多 3 条(超过则只保留 3 条,优先与本文主题最相关的条目或按列表顺序取前 3)。manual 缺失或为空:本 skill 不自动补齐(以保持 review 纯本地、无网络、无凭证)。处理方式:name + url 写入本篇 article.yaml 的 embeds.related_articles.manual(每项至多 3 条);getdraft.py published-fields 自动补齐(publish 才有微信 API 凭证与网络能力);manual,在审稿说明中注明「本篇跳过往期推荐」,{embed:link:…} 占位省略即可。字段含义与示例见 {baseDir}/../aws-wechat-article-main/references/config.example.yaml 的 embeds 注释及 topics SKILL 文末「推荐链接」说明;排版脚本据此生成 article.html。
全空时的处理:当所有 embed 配置(profiles / miniprograms / miniprogram_cards / related_articles)均为空或未配置时,仍须在审稿输出中显式标注「文末 embed:无配置,已跳过」,不得静默跳过。这确保流程可追溯,避免遗漏。
用户可在 .aws-article/presets/review-rules.yaml 添加自定义检查项:
# .aws-article/presets/review-rules.yaml
custom_rules:
- name: 品牌名称规范
check: 正文中「XX公司」必须使用全称,不能简写
level: 必须 # 必须 / 建议
- name: 数据来源
check: 所有引用的数据必须标注来源和日期
level: 必须
- name: CTA 检查
check: 文末必须包含明确的行动号召
level: 建议
自定义规则会追加到标准检查项之后执行。
| 模式 | 读取 | 产出 |
|------|------|------|
| 内容审 | draft.md、.aws-article/config.yaml + 本篇 article.yaml、writing-spec.md | review.md、article.md(定稿) |
| 终审 | article.html、imgs/、同上合并配置、article.yaml(发布元数据等) | review.md(终审结果) |
Assess Kubernetes workloads and cluster configuration for AKS Automatic compatibility. Identifies incompatibilities, generates fixes, and guides migration from AKS Standard to AKS Automatic. WHEN: migrate to AKS Automatic, check AKS Automatic readiness, validate manifests for Automatic, assess cluster for Automatic compatibility, fix deployment for Automatic compatibility, identify AKS Automatic migration blockers, is my cluster ready for AKS Automatic.
Discovers available Azure OpenAI model capacity across regions and projects. Analyzes quota limits, compares availability, and recommends optimal deployment locations based on capacity requirements. USE FOR: find capacity, check quota, where can I deploy, capacity discovery, best region for capacity, multi-project capacity search, quota analysis, model availability, region comparison, check TPM availability. DO NOT USE FOR: actual deployment (hand off to preset or customize after discovery), quota increase requests (direct user to Azure Portal), listing existing deployments.
Interactive guided deployment flow for Azure OpenAI models with full customization control. Step-by-step selection of model version, SKU (GlobalStandard/Standard/ProvisionedManaged), capacity, RAI policy (content filter), and advanced options (dynamic quota, priority processing, spillover). USE FOR: custom deployment, customize model deployment, choose version, select SKU, set capacity, configure content filter, RAI policy, deployment options, detailed deployment, advanced deployment, PTU deployment, provisioned throughput. DO NOT USE FOR: quick deployment to optimal region (use preset).
Unified Azure OpenAI model deployment skill with intelligent intent-based routing. Handles quick preset deployments, fully customized deployments (version/SKU/capacity/RAI policy), and capacity discovery across regions and projects. USE FOR: deploy model, deploy gpt, create deployment, model deployment, deploy openai model, set up model, provision model, find capacity, check model availability, where can I deploy, best region for model, capacity analysis. DO NOT USE FOR: listing existing deployments (use foundry_models_deployments_list MCP tool), deleting deployments, agent creation (use agent/create), project creation (use project/create).
Intelligently deploys Azure OpenAI models to optimal regions by analyzing capacity across all available regions. Automatically checks current region first and shows alternatives if needed. USE FOR: quick deployment, optimal region, best region, automatic region selection, fast setup, multi-region capacity check, high availability deployment, deploy to best location. DO NOT USE FOR: custom SKU selection (use customize), specific version selection (use customize), custom capacity configuration (use customize), PTU deployments (use customize).
This skill should be used when working with LaminDB, an open-source data framework for biology that makes data queryable, traceable, reproducible, and FAIR. Use when managing biological datasets (scRNA-seq, spatial, flow cytometry, etc.), tracking computational workflows, curating and validating data with biological ontologies, building data lakehouses, or ensuring data lineage and reproducibility in biological research. Covers data management, annotation, ontologies (genes, cell types, diseases, tissues), schema validation, integrations with workflow managers (Nextflow, Snakemake) and MLOps platforms (W&B, MLflow), and deployment strategies.
Latch platform for bioinformatics workflows. Build pipelines with Latch SDK, @workflow/@task decorators, deploy serverless workflows, LatchFile/LatchDir, Nextflow/Snakemake integration.
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.
Take aiworkskills/aws-wechat-article-review from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.