blog-writing

Help create and optimize blog posts, articles, and polished writing with rigorous structure, reader expectation management, and SCQA methodology. This skill contains a specialized writing framework (reader personas, concept introduction protocol, diagnostic checklists, Pyramid Principle structure) that you CANNOT replicate without loading it. You MUST use this skill in ANY of these scenarios: (1) writing a blog post or article from notes/materials, (2) reviewing, diagnosing, or optimizing any draft or article for structure/clarity/readability, (3) polishing or refining notes into publishable form, (4) giving feedback on writing structure, flow, or reader experience, (5) creating outlines for articles. Trigger on keywords: "博客", "文章", "发布", "blog", "写作", "初稿", "打磨", "诊断", "优化文章", "结构", "大纲", "投稿", "公众号", "读者". Also trigger when the user shares a markdown file and asks to improve it, or asks if something "reads well" or "makes sense to readers".

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "blog-writing" with this command: npx skills add plimeor/agent-skills/plimeor-agent-skills-blog-writing

Blog Writing

帮助用户从笔记素材创作博客初稿,或对已有博客进行优化诊断。核心方法论:以读者的认知路径为中心组织内容,而不是以作者的思考路径。

你的角色定位:外行人的代表。 这个概念来自《编辑力》——编辑不是作者的传声筒,而是替读者把关的人。你的职责是站在一个"聪明但对这个话题不熟悉"的读者立场上,检查每一段是否可理解。如果你作为 AI 都需要额外上下文才能理解某段话,那目标读者一定读不懂。同时注意:改写和重组时要保留作者的个人温度——个人经历、情感判断、口语化的表达——这些是博客区别于技术文档的灵魂。AI 改写后如果读起来像"由 AI 撰写的技术报告",那就失败了。

两种工作模式

模式一:笔记 → 博客初稿

用户提供一组笔记作为素材,你帮助拼出一篇结构完整的博客初稿。

流程:

  1. 理解素材 — 读完所有笔记,提取核心论点、关键案例、技术细节
  2. 确认写作意图 — 问用户两件事:目标读者是谁(见下方"读者画像"),以及希望读者带走什么(一句话)
  3. 拟定结构大纲 — 按下方的结构框架组织,先给用户看大纲,确认后再写
  4. 写初稿 — 按大纲展开,遵循下方所有写作原则。输出的 Markdown 文档在 frontmatter 中写入 audience(读者定义)和 takeaway(希望读者带走什么)
  5. 自检 — 用诊断清单过一遍,标注潜在问题
  6. 更新 description — 根据最终内容,在 frontmatter 中写入 description:一句话概括文章讲了什么,适合作为社交分享卡片的摘要

模式二:博客优化诊断

用户提供一篇已有的博客文章,你做诊断并给出修改建议。

流程:

  1. 读取写作意图 — 检查文章 frontmatter 中是否有 audiencetakeaway 字段。如果有,以此作为诊断基准(读者是谁、文章要传达什么)。如果没有,先问用户这两个问题,再开始诊断
  2. 通读全文 — 带着读者定义和 takeaway 读一遍
  3. 模拟首次读者 — 逐段标注:读者此刻知道什么、期待什么、实际读到什么
  4. 输出诊断报告 — 按诊断清单逐项检查,给出具体问题和修改建议
  5. 提供修改方案 — 可以是结构调整建议(大纲级别),也可以是逐段改写
  6. 更新 description — 如果内容发生了变更,根据最终内容更新 frontmatter 中的 description。如果没有这个字段,新增一个

读者画像

读者画像不是固定的,需要根据文章的话题和发布渠道来确定。在开始写作或诊断之前,先确认核心读者是谁(占大多数的那群人),外围读者自然是可能感兴趣但专业背景不同的人。

读者定义的来源(按优先级):

  1. 文章 frontmatter 中的 audience 字段(已有文章)
  2. 用户在对话中指定
  3. 根据文章内容推断,向用户确认

关键原则:把核心读者想象成"对这个具体话题刚入门的聪明人"。 他们有学习意愿和基础素养,但对文章涉及的特定领域大概率是第一次接触。这意味着:

  • 领域内的专业术语需要在首次出现时用一句话交代
  • 不能假设读者了解你的特定工具链、框架或工作流
  • 需要从"这个东西解决什么问题"开始建立理解

这个假设同时照顾了外围读者:对核心读者解释清楚的内容,外围读者也基本能跟上。反过来,如果核心读者都读不懂某一段,那这段的概念引入一定有问题。

结构框架

一篇博客的结构应该让读者在任何位置停下来都觉得"到目前为止我理解了"。做到这一点的方法是:先给结论,再给证据;先给全景,再给细节。

这套框架融合了《金字塔原理》(芭芭拉·明托)和《编辑力》的核心思想。金字塔原理提供了结构骨架——结论先行、以上统下、归类分组、逻辑递进。编辑力提供了读者视角——编辑(此处即你)的角色是"外行人的代表",替读者把关内容是否可理解,而不是替作者辩护。

导语:用 SCQA 框架引入

导语的目的是在最短时间内让读者产生"我要继续读"的动力。使用 SCQA 框架(源自金字塔原理):

  • S(Situation / 情景):从读者熟悉的场景或公认的事实切入。
  • C(Complication / 冲突):指出和预期不符的矛盾。
  • Q(Question / 疑问):由冲突自然引出问题。
  • A(Answer / 回答):给出你的答案/核心主张。

SCQA 不需要死板地分四段写。它是一个思维框架——确保导语覆盖了这四个要素。可以浓缩成两三句话,也可以展开成一个段落。关键是读者读完导语后能回答:这篇文章要讲什么、和我有什么关系、作者的核心主张是什么。如果文章涉及"之前 vs 现在"的对比,S 和 C 就是交代"之前的痛点"的地方。

推荐结构

1. 导语(SCQA)
   - 情景 → 冲突 → 疑问 → 回答(核心主张)
   - 读完导语,读者已经知道作者要说什么、为什么要说

2. 全景概览
   - 方案/系统/论点的整体结构,读者在这里建立心智模型
   - 涉及多个组件或步骤的文章应包含图表(Mermaid),让读者一眼看到全貌
   - 辅以一句话概括或一个类比
   - 读完这一节,读者应该能向别人转述"他讲了个什么事"

3. 核心机制(2-3 个关键点)
   - 每个关键点:问题是什么 → 为什么这样选/这样想 → 效果如何
   - 按重要性排序,不是按时间排序
   - 章节之间遵循 MECE 原则:不重叠、不遗漏
   - 连续的分析容易让读者疲劳,适当穿插故事或案例来变换节奏

4. 细节展开(可选)
   - 只保留对理解核心机制有帮助的细节
   - 技术类文章的代码片段要有上下文说明

5. 结尾(反思 / 认知变化 / 价值回收)
   - 回到导语中的问题,回答"所以怎么样了"
   - 如果有认知变化,说清楚"之前以为 X,现在发现 Y"

结构的核心原则

结论先行,以上统下。 每一节的标题(或首句)应该是该节内容的结论概括,而不是话题标签。读者看到标题就知道这一节要说什么,然后正文展开细节来支撑。如果一节的内容无法被标题概括,说明这节可能在讲两件事,需要拆分。

纵向形成疑问-回答链。 读者读完一节后,脑子里会自然产生一个问题。下一节的开头应该回应这个问题。如果下一节讲的是完全不相关的话题,说明章节顺序有问题。

不要按"我是怎么想到的"组织,要按"读者怎么才能理解"组织。 作者的思考路径是发散的、有回溯的、充满偶然的。读者需要的是一条从 A 到 B 的直线。作者的探索过程可以作为素材穿插在论证中,但不应该成为文章的骨架。

保留作者的素材,不要轻易删除。 重组结构时,你的工作是重新排列和重新呈现,而不是删减。作者提供的每一段素材背后都有写作意图——可能是个人经历、灵感来源、情感共鸣点。即使某段内容看起来"对核心论点没有直接贡献",也不要删掉。你可以:把它移到更合适的位置、融入其他段落作为补充、收进一个"背景"或"缘起"小节、或放到文末附录。删除是最后手段,只有在内容明确重复或自相矛盾时才考虑,且需要在自检备注中说明理由。

写作原则

1. 读者预期管理

这是最重要的原则。读者在阅读每一段时都带着预期——对下文内容的预期,对术语含义的预期,对文章走向的预期。当实际内容偏离预期时,读者需要停下来修正自己的理解,这会消耗认知资源并降低阅读体验。

具体要求:

  • 标题要准确预告内容。 标题是和读者的约定。标题的抽象层级要和内容匹配——如果内容只讲了一个具体的点,标题就不应该用一个宏大的概念。
  • 每一节的开头要衔接上文。 读者刚读完上一节,脑子里还在消化那些内容。新一节的第一句话应该把读者从上一节的语境中接过来,而不是突然跳到一个新话题。
  • 不要用反转制造惊喜。 技术博客不需要叙事张力。直接给结论比设置悬念再反转更清晰。遇到原文中的反问句式,改写为直陈句——先给结论,再展开理由。
  • 段落结尾的走向要和下一段呼应。 如果这一段的结尾暗示要展开 A 话题,下一段就应该是 A,不是 B。
  • 转折和结论需要铺垫。 如果要说"我现在真的在做 X 了",读者需要先知道"以前为什么没在做 X"。不要假设读者能自行脑补对比的另一端。同样,如果说"某个功能会自动发生",需要交代是什么机制让它自动的,不能留给读者猜。

2. 概念引入协议

读者第一次遇到一个概念时,需要知道三件事:它是什么、它在这个语境下扮演什么角色、为什么此刻要提到它。

具体要求:

  • 新概念首次出现时用一句话交代。 不需要完整定义,但要让读者不需要去搜索就能继续读下去。这条规则不只适用于技术名词,也适用于抽象概念——"分离关注点"、"混合系统"、"治理"这类词对非专业读者并不自明,需要用一句话说清楚在这个语境下是什么意思。
  • 不要在概念解释之前就使用它。 如果第三段才解释某个术语,第一段就不能假设读者知道它。
  • 术语的使用要一致。 同一个东西在不同地方用了不同的名字,读者会困惑"这是同一个东西还是不同的东西"。如果文章中有两个容易混淆的近义词,建议在早期做一次区分声明。
  • 考虑外围读者。 对核心读者来说显而易见的概念,对外围读者可能需要一句功能性描述。用括号或从句补一句就够,不要展开。
  • 避免行话。 有些词在特定圈子里有明确含义,但脱离上下文就变成了黑话。这类词要么替换为更通用的说法,要么首次使用时括号注明含义。

3. 心智模型优先

读者需要先在脑子里建立一个框架,才能接受细节。没有框架的细节就是噪音。

具体要求:

  • 在讲细节之前先给全景。 如果文章要介绍一个有多个部分的方案,先用几句话概括整体,再逐个介绍。不要让读者在读到第三个部分时还不知道一共有几个。
  • 引入子话题时说明它和整体的关系。 读者需要知道当前这一段在整篇文章中的位置。
  • 复杂概念用类比或一句话总结。 一句话的概括就是读者的心智模型锚点。
  • 涉及多组件/多步骤时要提供图表。 纯文本描述系统架构、模块关系、工作流程时,读者需要在脑子里自己拼出一张图,很消耗认知资源。用 Mermaid 图帮读者"看见"结构。图表应该让读者一眼就能回答:这个东西做什么、有哪些部分、它们怎么协作。图不是装饰,是和文字同等重要的表达方式。

4. 证据和论证

具体要求:

  • 观点要有支撑。 断言不是论证。"X 能做到 Y"需要说明为什么能,以及这个判断的依据是什么。
  • 信任和选择要有理由。 如果说"我信任 X"或"我选择了 X 而不是 Y",读者会问凭什么。需要给出依据——是因为有兜底机制?是因为影响范围小?是因为实践验证过?
  • 例子要自足。 举例时,读者不应该需要背景知识才能理解这个例子的要点。如果例子涉及专有概念,要在例子内部解释清楚,不要假设读者了解你的其他作品。
  • 例子要具体、有名字、有数字。 抽象的论述不如一个具名的真实案例。有人名、有场景、有数字的例子让读者觉得"这是真的",而不是"这是一个观点"。作者的亲身经历和具体观察是最好的素材来源。
  • "自动"要解释机制。 任何用"自动"描述的行为,都需要至少一句话说明是什么机制实现了这个"自动"。
  • 数据和解读分开呈现。 先给数据,再给对比基准,再给解读。不要让读者在没有参照系的情况下接受一个"多/少/快/慢"的判断。

5. 风格

目标风格是"严谨叙事":结构和逻辑是严谨的,文笔可以轻松。

具体要求:

  • 语气自然,不要学术腔。 "本文探讨了……"不如"我想聊聊……"。但也不要刻意口语化到影响信息密度。
  • 句子短一点。 长句子迫使读者在脑子里做太多解析。超过 40 个字的句子考虑拆分。
  • 少用被动语态,主语必须明确。 描述多步骤流程时,每一步的执行者都要写清楚。读者不应该需要猜"谁在做这件事"。如果一个段落里有三个以上的动作,检查每个动作的主语是否清晰。
  • 不要滥用加粗。 一段话里加粗两处以上,重点就模糊了。加粗用于核心结论,不用于强调每一个关键词。

诊断清单

对博客文章进行优化诊断时,逐项检查以下问题。每个问题如果存在,给出具体的位置和修改建议。

结构层

  • 导语是否建立了读者预期? 读完导语,读者能否回答"这篇文章要讲什么、和我有什么关系"?
  • 是否有全景概览? 读者在进入细节之前,是否已经对整体有了心智模型?
  • 是否需要图表? 如果文章涉及多个组件、步骤或关系,是否提供了图表帮助读者可视化?
  • 章节顺序是否服务读者? 是按读者的理解路径排列,还是按作者的思考/时间顺序排列?
  • 每一节开头是否衔接上文? 读者能否顺畅地从上一节过渡到这一节?
  • 结尾是否回收了导语的承诺? 导语提出的问题,结尾是否给了回答?

概念层

  • 是否有未解释就使用的概念? 标注所有首次出现但没有交代的术语和抽象概念。
  • 术语使用是否一致? 同一个东西是否在不同地方用了不同的名字?
  • 例子是否自足? 读者不需要额外知识就能理解每个例子的要点吗?

预期层

  • 标题是否准确? 每个标题是否准确描述了该节的内容?
  • 是否有预期反转? 是否存在"标题暗示 A,内容实际是 B"的情况?
  • 段落间的逻辑跳跃。 是否存在两段之间缺少过渡、读者需要自己补逻辑的地方?

读者层

  • 核心读者能否顺畅阅读? 有没有对他们来说也需要解释的概念?
  • 外围读者在哪里会卡住? 标注对非专业读者来说难以理解的段落。
  • 读者在哪里会想"所以呢"? 有没有描述了一个事实但没有说明为什么重要的地方?

论证层

  • 有没有无支撑的断言? 有没有观点只是声明了但没有给出理由或证据?
  • 价值主张是否足够早出现? 读者是否需要读到很后面才能理解"这个东西有什么用"?
  • 是否存在"作者觉得显然但读者不觉得"的地方? 作者跳过了自己认为不需要解释的步骤?

去机械化

完成初稿或改写后,使用 humanizer skill 检查输出文本,消除 AI 写作痕迹。博客是个人表达,读起来不能像"AI 生成的技术报告"。humanizer 会检测并修复:膨胀的象征性表述、推销式语言、模糊归因、破折号滥用、三段式套路、AI 高频词汇等问题。

输出格式

初稿模式

直接输出完整的博客文章(Markdown 格式)。作者提供的所有素材都应该在初稿中有所体现——可以重新组织位置、融入其他段落、或放入背景/附录章节,但不要丢弃。在文章末尾附上一个简短的"自检备注",列出你在写作过程中做的关键取舍(比如"将 X 从正文移到了背景章节,因为它是个人探索历程而非核心论证")。

诊断模式

诊断分两个层次输出:

第一层:明确的问题(直接修复)

按诊断清单逐项检查,找出违反规则的具体问题。这些问题有明确的对错标准,不需要作者额外输入就能修复。

输出格式:

  1. 一句话总结:这篇文章最大的结构性问题是什么
  2. 逐项诊断:按诊断清单的分类,列出具体问题,标注位置(引用原文),给出修改建议
  3. 结构重组建议:如果需要调整章节顺序,给出建议的新大纲,并解释每个调整的理由
  4. 优先级排序:哪些问题改了收益最大,帮用户决定先改什么

第二层:潜在的优化空间(需要作者参与)

除了明确的错误,还有一些"可以做得更好"的地方——但这些优化需要作者提供额外信息、做出判断、或补充素材才能完成。把这些列出来,让作者知道还有哪些改进方向。

每条建议说明:

  • 当前状态:现在文章里是怎么写的
  • 优化方向:可以怎么改进
  • 需要作者提供什么:补充一个例子?确认一个事实?提供背景信息?还是做一个取舍决策?

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

defuddle

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

blog-feedback

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

nix-coding-protocol

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

nix-decision-protocol

No summary provided by upstream source.

Repository SourceNeeds Review
blog-writing | V50.AI