Agent Skills: 技术文章全流程创作

|

UncategorizedID: deletexiumu/agentskills-hub/tech-article-creator

Install this agent skill to your local

pnpm dlx add-skill https://github.com/deletexiumu/AgentSkills-Hub/tree/HEAD/skills/public/tech-article-creator

Skill Files

Browse the full folder contents for tech-article-creator.

Download Skill

Loading file tree…

skills/public/tech-article-creator/SKILL.md

Skill Metadata

Name
tech-article-creator
Description
|

技术文章全流程创作

从选题到发布的生产管线。每个阶段有明确输入、产出和质量门禁。支持从任意阶段切入。

配置

本 skill 通过 config.yaml 管理所有可配置项。配置文件位置:

  • 模板文件{skill_dir}/config.yaml(本 skill 目录下,包含完整注释和默认值)
  • 运行时配置{root_dir}/.tech-article-creator.yaml(文章根目录下的实际配置)

配置加载流程

每次启动时:

  1. 检查 {root_dir}/.tech-article-creator.yaml 是否存在
  2. 存在 → 直接读取,进入对应阶段
  3. 不存在 → 进入首次配置引导

首次配置引导

从模板文件复制一份到运行时路径,然后通过交互引导用户填写核心配置。每个配置项提供默认选项,用户可直接接受默认值。

[交互] AskUserQuestion:依次确认以下核心配置(一次只问一个):

  1. 文章根目录:从工作目录推断候选路径,让用户确认或指定
    • 默认:当前工作目录
  2. 版本策略:单版本 / 双版本 / 自定义
    • 默认:双版本(技术深度版 + 通俗故事版)
  3. 外部评审:是否启用外部模型评审,如启用则确认可用模型
    • 默认:不启用(仅用 Agent Team 内部评审)
  4. 发布平台:仅本地 / 博客 / 微信公众号 / 社交媒体(可多选)
    • 默认:仅本地(只生成 markdown 文件)

用户确认后将选择写入 {root_dir}/.tech-article-creator.yaml。后续使用直接读取,不再重复询问。用户可随时手动编辑该文件调整配置。

目录结构

根据 config.yaml 中的模板生成:

{root_dir}/
├── {topics_dir}/                     # 选题文件
├── {compliance.rules_file}           # 平台合规规范(如配置)
├── {article_dir}/                    # 单篇文章目录(按模板生成)
│   ├── 大纲.md                       # 含版本标注
│   ├── 原始素材/                      # 素材 + 评审意见
│   ├── {image.output_dir}/           # 配图(如启用)
│   ├── {variant.file_prefix}{标题}.md # 每个版本一个文件
│   └── *.html                        # 排版产物(如需要)

阶段总览

| # | 阶段 | 产出 | 门禁 | 条件 | 推进方式 | |---|------|------|------|------|---------| | 1 | 选题 | 选题推荐(含优先级) | 用户选择 | 始终 | 等用户选择 | | 2 | 大纲 | 大纲.md + 文章目录 | 版本标注完整 | 始终 | 自动推进→3 | | 3 | 素材收集 | 原始素材/*.md | 覆盖大纲所有章节 | 始终 | 自动推进→4 | | 4 | 大纲评审 | 评审意见 → 更新大纲 | 采纳后大纲定稿 | review.models 非空 | 自动推进→5 | | 5 | 写作+内部评审 | 各版本文章(评审通过) | Agent Team 迭代通过 | 始终 | 自动推进→5.5 | | 5.5 | 标题定稿 | 各版本最终标题 | 用户选定 | 始终 | 等用户选择 | | 6 | 外部终稿评审 | 外部评审通过 | 多轮迭代通过 | review.models 非空 | 自动推进→7 | | 7 | 人工终审 | 用户确认终稿 | 用户 approve | 始终 | 等用户确认 | | 8 | 配图 | 封面图 + 示意图 | 图片齐全 | image.enabled | 自动推进→9 | | 9 | 排版/发布 | 各平台产物 | 发布完成 | publish.platforms 非空 | 完成 |

推进规则

  • 自动推进:阶段完成后直接进入下一阶段,不等用户说"继续"
  • 等用户选择/确认:仅在阶段 1(选题)、5.5(标题)、7(人工终审)停下来等用户
  • 所有交互一律用 AskUserQuestion 的 options:给选项让用户选,不要让用户打字描述。如果确实需要自由输入,在 options 中加一个"自定义"选项

阶段 1:选题

  1. 扫描已有文章:读取根目录下已有文章目录,提取系列脉络
  2. 采集热点源:WebSearch 查询近期技术热点
  3. 交叉分析:已有文章 × 热点 → 系列缺口 / 热点卡位 / 长尾价值
  4. 输出 3-5 个选题:每个含标题、热点依据、衔接关系、核心内容
  5. 保存{topics_dir}/week{N}-{日期}.md

[交互] AskUserQuestion(options):将 3-5 个选题作为选项展示,用户选择一个。选项中包含标题和一句话核心内容。用户可选"自定义选题"输入自己的想法。确认后确定文章序号(如启用)和标题。


阶段 2:大纲

  1. config.yaml 中的 article_dir_template 创建文章目录(含 原始素材/
  2. 撰写大纲.md:元信息 + 各章节结构 + 每节标注版本归属 + 素材清单 + 配图清单

多版本核心差异——大纲阶段就要规划。根据 config.yamlvariants 的定义,为每个版本规划差异化内容。

详细写作规范见 references/dual-version-writing-guide.md


阶段 3:素材收集(自动推进)

本阶段自动执行,不等用户确认。 大纲完成后直接启动素材收集。

启动并行 subagent 按主题分工收集(如运行时不支持 subagent 则串行执行),典型分组:

  • 个人实战素材(真实案例、配置、工作流)
  • 工具/技术素材(功能、对比、配置方式)
  • 行业趋势素材(热点新闻、定价、论文)

每个 subagent 产出 原始素材/{分类}素材.md,含原始内容和来源标注。收集完检查:每个大纲章节是否都有素材支撑。

素材收集完成后,输出覆盖情况表(章节 × 素材来源),然后自动进入阶段 4

详细指南见 references/material-collection-guide.md


阶段 4:大纲评审(自动推进)

仅在 config.yamlreview.models 配置了评审模型时执行。未配置则跳过此阶段,直接进入阶段 5。 本阶段自动执行。 素材收集完成后直接发起评审。

大纲 + 全部素材文件路径发送给配置的评审模型。不发摘要——让评审模型读完整文件。

每个评审模型按其配置的 role 侧重不同维度。评审结果保存到 原始素材/评审意见-{模型名}.md

评审意见处理规则(自动采纳 + 展示):

  • 高严重度:自动采纳并更新大纲,向用户展示修改内容
  • 中严重度:自动采纳并更新大纲,向用户展示修改内容
  • 低严重度:展示给用户但不自动采纳(可忽略)
  • 汇总评审发现(表格 + 严重度 + 采纳状态),向用户展示后自动进入阶段 5
  • 如有争议性问题(评审模型之间意见冲突),用 AskUserQuestion(options) 让用户选择采纳哪方

限流处理:限流时用 AskUserQuestion(options) 让用户选择"等待重试 / 降级模型 / 跳过评审"。

详细模板见 references/review-prompt-templates.md


阶段 5:写作 + 内部评审(Agent Team,自动推进)

本阶段自动执行。 大纲评审完成后直接启动写作团队,内部评审迭代通过后自动进入阶段 5.5。

这是核心阶段,使用 Agent Team 实现并行写作和多轮迭代评审。

writing_team.parallel 为 false 或运行时不支持 subagent,改为串行模式:依次完成每个版本的写作和评审。

Team 编制

根据 config.yaml 中的 variantswriting_team.reviewers 动态组建:

  • 每个 variant 分配一个 writer
  • writing_team.reviewers 配置分配 reviewer

执行流程

  1. 创建 Team,设置任务依赖:评审任务 blocked by 写作任务
  2. Writer 并行写作:各 writer 读取大纲(注意版本标注)和素材
  3. 补充规范:如配置了 compliance.rules_file,发给相关 writer 和 reviewer
  4. 初稿完成 → reviewer 开始评审
  5. 迭代循环
    • reviewer 读取文章,输出评审意见(问题列表 + 严重度),发给对应 writer
    • writer 修改后通知 reviewer 再审
    • 迭代直到所有 reviewer 都认为通过(无高/中严重度问题)
  6. Team 解散:所有任务 completed 后,shutdown 所有 teammate

Writer Prompt 要点

  • 必须读完大纲和所有素材再动笔
  • config.yaml 中该 variant 的 styleword_counttarget_audience 写作
  • 不要 AI 味("值得注意的是"、过度排比、空洞连接词)
  • 案例脱敏:遵循 compliance.redaction_strategy

Reviewer Prompt 要点

writing_team.reviewers 中配置的 focus 评审。通用评审维度包括:

  • 事实准确性、数据口径一致性
  • 代码可执行性(技术版)
  • AI 痕迹检测
  • 版本间差异化是否到位(不是简单删减)
  • 可读性、段落长度适配目标读者
  • 合规检查(如有 compliance 配置)

详细写作模板见 references/dual-version-writing-guide.md


阶段 5.5:标题定稿

Agent Team 内部评审通过后、外部终稿评审之前,确定各版本的最终标题。

流程

  1. 基于各版本终稿内容,为每个版本生成 4-5 个标题备选
  2. [交互] AskUserQuestion(options):每个版本单独一个问题,标题备选作为选项展示(含 preview 预览标题效果)。用户可选"自定义标题"输入自己的
  3. 用户选定后更新文件标题和文件名

标题规则

根据版本特性生成标题。参考公式见 references/dual-version-writing-guide.md


阶段 6:外部终稿评审(自动推进)

仅在 config.yamlreview.models 配置了评审模型时执行。未配置则跳过此阶段。 本阶段自动执行。 标题定稿后直接发起外部评审,评审通过后自动进入阶段 7。

流程

  1. 将各版本终稿文件路径发给配置的评审模型(尽量并行)
  2. 评审维度与阶段 4 类似,但针对完整正文而非大纲
  3. 收到评审意见后修改文章
  4. 多轮迭代:修改后附"已修改项"清单再发评审,方便 reviewer 聚焦变更点
  5. 迭代直到所有模型都输出"终稿审查通过"
  6. 通知用户进入人工终审

常见问题类型(按历史经验排序)

  1. 数据口径不一致:不同版本引用同一数据但表述不同
  2. 配置步骤错误:描述与实际操作不符
  3. 产品命名不精确:缩写或版本号不准确
  4. 来源标注缺失:引用数据但没给出处
  5. 截图占位符未处理(截图:...)应替换为实际图片或改为 HTML 注释

限流处理

与阶段 4 相同:限流时由用户决定,不自动降级。


阶段 7:人工终审

外部评审通过后(或跳过外部评审时内部评审通过后),通知用户进行最终人工审核。

[交互] AskUserQuestion(options):通知用户终稿已就绪,提供选项:

  • "通过,进入下一步"(继续配图/发布)
  • "有修改意见"(用户在 Other 中输入具体意见)
  • "需要再看看,稍后回复"(暂停流程)

同时在问题描述中列出常见关注点供参考:标题、干货密度、工具推荐平衡、引流内容。

用户选择"通过"后自动进入配图/排版/发布。


阶段 8:配图

仅在 config.yamlimage.enabled 为 true 时执行。未启用则跳过。

[交互] AskUserQuestion(options, multiSelect):根据大纲中的配图清单,列出建议配图作为多选选项,用户勾选需要生成的。选项示例:"封面图(自动生成)"、"架构/流程图(自动生成)"、"工具截图(需手动提供)"。

配图分类

根据 config.yamlimage.types 配置生成。使用 image.skill 指定的图片生成工具。

配图规范

  • 示意图文字建议使用文章语言(如中文文章用中文标注),专有名词保留英文
  • 封面图带精简标题(2-4 字关键词)
  • 图片统一存放到 {image.output_dir}/ 目录
  • 截图类素材需用户手动提供,不可 AI 生成

阶段 9:排版 / 发布

仅在 config.yamlpublish.platforms 非空时执行。未配置则文章以本地 markdown 形式完成。

[交互] AskUserQuestion(options, multiSelect):根据 publish.platforms 配置列出可发布平台作为多选选项,用户勾选本次要发布的。默认全选。

根据 publish.platforms 配置,调用对应的发布 skill:

| 平台 | 配置字段 | 产出 | |------|---------|------| | 博客 | publish.blog.skill | 发布到 publish.blog.url | | 微信公众号 | publish.wechat.converter_skill + publisher_skill | 先转 HTML 再发布到草稿箱 | | 社交媒体 | publish.x.skill | 推文(可选) |

每个平台发布前确认,发布后验证。


安全与合规

敏感数据三原则

跨模型评审时:最小披露、先脱敏再送出、可审计可回滚。

文章涉及真实项目时:按 compliance.redaction_strategy 脱敏,用户确认脱敏程度后才发布。

平台合规

如配置了 compliance.rules_file,以下阶段会自动加载该规范:

  • 阶段 5 写作:writer 和 content-reviewer 遵守合规规范
  • 阶段 6 外部评审:评审 prompt 中附带合规要求
  • 阶段 8 配图:检查图片是否符合合规(如品牌 Logo 限制)
  • 阶段 9 发布:发布前对照合规规范自查

未配置 compliance.rules_file 时,上述阶段跳过合规检查。

合规规范通用红线(供参考)

  • 不用第三方品牌 Logo(文字提及品牌名可以)
  • 不出现诱导性营销文案
  • 引用他人内容标注来源
  • 发布前对照合规规范自查