| name | article-writer |
| description | 技术自媒体文章写作工作流。支持自定义选题;无明确素材时优先委派 subagent 调用 news-skill 获取热点并筛选选题,否则 inline 执行同等流程。经提纲审批后按写作指南完成写作,输出含配图占位符的 Markdown 文章,支持审查修改与写作经验复盘。使用场景:用户需要写技术博客、自媒体文章、AI/编程/产品类科普文;支持平台参数(xiaohongshu、wechat)加载对应平台写作规范。触发词:写文章、写一篇、帮我写、创作文章、生成文章。 |
Article Writer
技术自媒体文章写作工作流。输出物:output/{slug}/article.md,其中包含配图占位符,供 article-illustrator skill 使用。
强制门禁
以下规则具有最高优先级,任何时候都不得跳过:
- 每次只能推进一个阶段,不得在未完成当前阶段审批前自动进入下一阶段。
- 没有用户明确确认,就不得把候选选题、提纲、初稿视为已批准。
- 每个阶段只输出该阶段产物,不要顺手生成下一阶段内容。
- 如果缺少用户确认,必须停止并明确提示下一步需要什么确认。
工作目录约定
所有文章输出到 output/{slug}/ 目录(slug 由文章标题自动生成,如 bmad-framework-analysis):
output/{slug}/
├── article.md ← 本 skill 输出
└── images/ ← 由 article-illustrator 填充
配图占位符格式
写作时在合适的位置插入:
<!-- img: cover | 封面图描述,体现文章主题 -->
<!-- img: img-01 | 配图描述,说明此处配图的内容和作用 -->
cover:封面图,放在文章头部(frontmatter 之后,正文第一句之前)
img-01、img-02...:正文配图,按出现顺序编号,放在需要视觉辅助的段落之前
工作流
Step 1:确定选题
分支 A — 用户已提供选题:直接进入 Step 2。
分支 B — 用户无明确选题:
执行策略:Subagent 优先
若宿主环境支持调用 subagent(如 Cursor 的 Task 工具),优先派生子 agent 完成素材获取与选题筛选;主 agent 只负责汇总结果、呈现候选并等待用户确认。
Subagent 任务范围(一次性委派,不得拆成多轮反复打扰用户):
- 读取选题指南:
guidance/topic-selection/general.md;若用户指定平台,额外读取 guidance/topic-selection/platform/{platform}.md
- 按
news-skill/SKILL.md 执行完整流程(抓取 → 分析筛选 → 生成日报 → 去重落盘)
- 结合选题指南,从日报或
news-skill/data/ 落盘数据中筛选 3-5 个候选选题
- 返回结构化结果:每个候选含「标题 + 一句话写作角度 + 素材来源(URL 或日报条目)」
Subagent 返回后,主 agent 必须:
- 将候选列表呈现给用户,不做额外改写或擅自选定
- 若用户要求「更多选题」,可再次委派 subagent(读取已落盘日报二次筛选),或在不支持 subagent 时由主 agent 直接读取落盘数据
Fallback — 不支持 subagent 时:由主 agent 按下列步骤 inline 执行(与原流程等价):
- 加载选题指南(如有):读取
guidance/topic-selection/general.md(通用选题指南);若用户指定平台(--platform xiaohongshu / --platform wechat 等),额外读取 guidance/topic-selection/platform/{platform}.md。作为选题偏好、风格、受众定位的核心依据。
- 获取热点并落盘:调用
news-skill 获取近期热点。要求执行完整流程,包含日报 Markdown 文件的生成与去重记录(以确保数据持久化,防止多轮对话后丢失原始信息)。
- 筛选并推荐:结合「选题指南」,从
news-skill 生成的日报或原始数据中筛选 3-5 个适合写作的候选选题(列出选题标题 + 一句话说明写作角度)。
交互确认(两种策略共用):让用户选择。若用户不满意或要求「更多选题」,可重新读取落盘的日报数据进行二次推荐。
硬性要求:在用户明确选定最终选题之前,不得进入提纲阶段,更不得开始写作。
Step 2:列提纲并审批
- 判断文章类型:概念讲解 / 工程案例 / 个人经历分享(影响导入方式和结构逻辑,详见写作指南)
- 输出提纲:含完整章节结构 + 各节要点 + 预计总字数
- 等待用户审批,按反馈迭代修改,直至用户确认
硬性要求:提纲输出完成后必须停住,不能自动开始正文写作。只有当用户明确表示“确认提纲”或同义明确确认后,才允许进入 Step 3。
Step 3:写作
加载顺序(每次写作前执行):
- 读取
guidance/writing/general.md(通用写作指南)
- 若用户指定平台(
--platform xiaohongshu / --platform wechat):额外读取 guidance/writing/platform/{platform}.md
- 若文章属于特定场景/题材(如访谈稿、某类分享 SOP),且
guidance/writing/ 下存在对应的场景指南文件:额外读取该文件
- 若用户在本次调用中提出了具体写作要求:优先级最高,覆盖指南中的冲突规则
写作要点:
- 按提纲展开,遵循写作指南的行文规范
- 在合适位置插入配图占位符(每篇至少 1 个封面 + 1-3 个正文配图,视文章长度和内容类型决定)
- 输出完整文章到
output/{slug}/article.md
硬性要求:正文初稿完成后,必须停止并请求用户审稿。不得在未收到用户反馈前,擅自修改成终稿或进入发布流程。
Slug 生成规则:取文章标题的关键词,转为小写英文加连字符,例如 BMAD 框架深度解析 → bmad-framework-analysis
Step 4:审查与修改
- 呈现文章给用户(或告知文件路径)
- 按用户反馈修改,可多轮迭代
- 用户明确表示满意后进入 Step 5
硬性要求:没有用户明确满意,不得进入 Step 5 的复盘与指南更新。
Step 5:复盘与更新写作指南
- 复盘本次修改过程,提炼 1-3 条有实际价值的写作经验或注意点
- 向用户展示提炼结果,询问是否更新到对应指南:
- 通用选题经验 →
guidance/topic-selection/general.md
- 平台专属选题经验 →
guidance/topic-selection/platform/{platform}.md(不存在则创建)
- 通用写作经验 →
guidance/writing/general.md
- 平台专属写作经验 →
guidance/writing/platform/{platform}.md(不存在则创建)
- 特定场景/题材的详细指南 → 在
guidance/writing/ 下新建独立文件;可选在 general.md 中添加引用
- 用户同意后更新对应文件;用户拒绝则跳过
References
- 通用选题指南:
guidance/topic-selection/general.md — 在 Step 1 加载
- 平台选题指南:
guidance/topic-selection/platform/{platform}.md — 在用户指定平台时额外加载
- 通用写作指南:
guidance/writing/general.md — 在 Step 3 写作前加载,适用于所有文章
- 平台写作指南:
guidance/writing/platform/xiaohongshu.md、guidance/writing/platform/wechat.md — 在用户指定平台时额外加载
- 场景写作指南:
guidance/writing/ 下的独立文件(如 优质分享题材-sop.md)— 在匹配场景时额外加载