# Aws Wechat Article Topics

> 公众号选题｜爆款标题｜热点追踪｜系列策划 — 公众号 AI 选题与标题生成，覆盖热点调研、选题策划、起标题、写摘要、系列排期。面向自媒体编辑、内容运营。触发词（**单独触发仅限对已有标题/摘要的修改**）：「改标题」「换个标题」「重起标题」「优化标题」「标题再想想」「换个标题试试」「改摘要」「重写摘要」「优化摘要」「摘要再优化下」。新做选题、起新标题、策划系列/内容日历、追热点都请走 aws-wechat-article-main；需要多环节串联（写+审+排+配图+发）也走 main。

- **Type:** Skill
- **Install:** `agentstack add skill-aiworkskills-wechat-article-skills-aws-wechat-article-topics`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [aiworkskills](https://agentstack.voostack.com/s/aiworkskills)
- **Installs:** 0
- **Category:** [Cloud & Infrastructure](https://agentstack.voostack.com/c/cloud-infrastructure)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [aiworkskills](https://github.com/aiworkskills)
- **Source:** https://github.com/aiworkskills/wechat-article-skills/tree/main/skills/aws-wechat-article-topics
- **Website:** https://aiworkskills.cn

## Install

```sh
agentstack add skill-aiworkskills-wechat-article-skills-aws-wechat-article-topics
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# 选题与标题

**公众号选题 & 爆款标题 AI 助手** —— 热点追踪、选题调研、起标题、写摘要、系列排期一次搞定。

> **套件说明** · 本 skill 属 `aws-wechat-article-*` 一条龙套件（共 9 个 slug，入口 `aws-wechat-article-main`）。跨 skill 的相对引用依赖同一 `skills/` 目录，建议一并 `clawhub install` 全套。源码：

## 能力披露（Capabilities）

本 skill 主要由 Agent 驱动（对话式选题调研、标题生成），脚本层仅用于更新本篇元数据。

- **凭证**：无
- **网络**：Agent 可能使用 `web_search` / `web_fetch`（Claude Code 内置能力，非本 skill 脚本层发起）
- **文件读**：仓库内 `.aws-article/config.yaml`、本篇 `article.yaml`、`.aws-article/products/{产品名}/*.md`（业务介绍 .md，直接挂在产品根；选题涉及用户业务时必读）
- **文件写**：本篇目录下 `topic-card.md`、`research.md`；更新本篇 `article.yaml`
- **shell**：可能调用同仓库的 `python3 {baseDir}/../aws-wechat-article-publish/scripts/article_init.py`

## 配套 skill（informational）

本 skill 是 `aws-wechat-article-*` 一条龙公众号套件的**选题环节**（入口 `aws-wechat-article-main`）。工作流中的若干步骤会读取同级 `../aws-wechat-article-main/references/*.md` 等共享文档（首次引导、env/config 示例等）。

- **套件完整装齐到同一 `skills/` 根目录**时，跨 skill 引用都能读到。
- **单独安装本 skill** 时，跨 skill 引用的步骤会在读取阶段遇到 `file not found`；本 skill 内的纯本地步骤仍可用。

完整 9 slug 清单见 [源码仓库](https://github.com/aiworkskills/wechat-article-skills)。

## 路由

要成文并发到公众号、或「今天发什么」需整条编排时 → [aws-wechat-article-main](../aws-wechat-article-main/SKILL.md)。

通过调研生成高质量选题，支持单篇和系列。

## 配置检查 ⛔

任何操作执行前，**必须**按 **[首次引导](../aws-wechat-article-main/references/first-time-setup.md)** 执行其中的 **「检测顺序」**。检测通过后才能进行以下操作（或用户明确书面确认「本次不检查」）：

## 四种输入模式

根据用户输入自动识别模式：

| 模式 | 触发条件 | 示例 |
|------|---------|------|
| **A. 明确选题** | 用户给了具体话题 | 「写一篇 AI Agent 的文章」 |
| **B. 有方向** | 给了领域但没具体题目 | 「AI 最近有什么好写的」 |
| **C. 无方向** | 只说要选题 | 「这周写什么」「帮我找几个选题」 |
| **D. 系列策划** | 提到系列/专栏/连载 | 「做个 AI 入门系列」「写 10 篇专栏」 |

## 工作流

```
选题进度：
- [ ] 第1步：配置检查（见本节「配置检查」）
- [ ] 第2步：全局账号三键（`.aws-article/config.yaml` 的 `article_category` / `target_reader` / `default_author`）⛔ 与 [main](../aws-wechat-article-main/SKILL.md)「2) 全局账号约束」一致；缺则**问用户确认后**再写入，**禁止**从 `article.yaml` 擅自填充，**先于**方向确认与调研
- [ ] 第3步：确认是否已有选题或写作方向 ⛔
- [ ] 第4步：调研
- [ ] 第5步：生成选题
- [ ] 第6步：生成标题与大纲
- [ ] 第7步：展示并等待用户选择 ⛔
- [ ] 第8步：输出选题卡片（新建本篇目录时须具备或更新本篇 article.yaml）
```

## 配置与本篇文件（`config.yaml` + `article.yaml`）

- **全局**：**`.aws-article/config.yaml`** 含账号定位、`topic_direction`、`update_frequency`、`title_style`、文风等（模板 **`{baseDir}/../aws-wechat-article-main/references/config.example.yaml`**，字段见 [articlescreening-schema.md](../aws-wechat-article-main/references/articlescreening-schema.md)）。**本 skill 做选题前须能读到该文件**（或用户当次已等价说明）。
- **本篇**：**`{drafts_root}/YYYYMMDD-标题slug/article.yaml`** 含标题、作者、摘要、**`publish_completed`** 等（见 schema；可用 **`{baseDir}/../aws-wechat-article-publish/scripts/article_init.py`** 初始化/更新）。
- **总览一条龙**：[main](../aws-wechat-article-main/SKILL.md) 在「3) 本篇准备」中建目录并优先落 **`article.yaml`**，再进入选题；若目录已存在且含 **`article.yaml`**，**须先读**（与 **`config.yaml`** 一起）再产出 `topic-card.md` / `research.md`。
- **单独使用本 skill**：第 8 步若**新建**本篇目录，须在**同目录**创建或更新 **`article.yaml`**（至少 **`publish_completed: false`**，并尽量写入已定标题/摘要等），**不得**仅有 `topic-card.md` 就引导调用 **`write.py`** 却无任何本篇 YAML——**`write.py`** 依赖仓库 **`config.yaml`** 与本篇目录；本篇 **`article.yaml`** 可缺但推荐补齐以便元数据一致（见 [writing SKILL](../aws-wechat-article-writing/SKILL.md)）。

### 第1步：环境检查 ⛔

同本节 **「配置检查」**。

### 第2步：全局账号约束（`.aws-article/config.yaml`）⛔

**在调用 `web_search`、调研或与用户确认选题方向之前**（环境校验已通过的前提下），打开 **`.aws-article/config.yaml`**，检查 **`article_category`**、**`target_reader`**、**`default_author`** 是否 **trim 后均非空**。任一项缺失：**逐项询问用户**，用户确认后再**写回该文件**；**禁止**从 **`article.yaml`** 等擅自抄录填充。与 [main](../aws-wechat-article-main/SKILL.md)「2) 全局账号约束」一致；**一条龙**下若 main 已在本轮完成本步，可**不再重复**。

### 第3步：确认是否已有选题或写作方向 ⛔

**在调用 `web_search` / 调研之前**，先与用户对齐当前处于哪种情况（对应上文 **A/B/C/D**）：

- **先问清**（可一句话）：是否**已经有**想写的具体主题、还是**只有**大致领域、**完全没想法**要帮找选题、或要做**系列/专栏**。
- 若用户**本条消息里已经说清楚**（例如直接给出话题或明确「这周帮我找几个选题」），可做**简短确认**，不必重复盘问。
- **总览一条龙** 且 main 已在「3) 本篇准备」中问清写作意图：本步**口头确认一句**即可，再进入第 4 步。

**禁止**：在用户仍处于「只说找选题、没说领域/偏好」等模糊状态时，**直接开始联网调研**。

确认后 → 归入 **A/B/C/D**，再进入 **第 4 步：调研**。

### 第4步：调研

**须先读** **`.aws-article/config.yaml`**：选题边界、`topic_direction`、`update_frequency`、账号定位等以其为准。若本篇目录已存在 **`article.yaml`**（例如已定题），可一并读取已有 **`title` / `digest`** 等，避免与后序冲突。尚无本篇文件时，以用户当次说明与 skill 默认为准。

- 业务资料库：**若选题涉及用户自身业务（产品/软件/服务）**，先 `ls .aws-article/products/`，进入相关产品目录**必读**根下 `*.md`（业务介绍）寻找契合自家业务的选题角度；与业务无关的选题方向则不强求查阅

使用 `web_search` 搜索 + `web_fetch` 深入阅读，为选题提供数据支撑。

| 模式 | 调研目标 |
|------|----------|
| A | 竞品文章怎么写、数据支撑、独特角度 |
| B | 该方向近期热点、读者关注什么 |
| C | **`config.yaml`** 中的账号定位、`topic_direction` 与近期热点 |
| D | 知识体系拆解、竞品系列分析、读者学习路径 |

各模式的搜索策略和搜索词模板：[references/research-strategy.md](references/research-strategy.md)

### 第5步：生成选题

基于调研结果。用 **`config.yaml` 的 `update_frequency`** 控制本批数量：周更约 3–5 个，日更可略多，月更可略少；无配置时按对话约定或 skill 默认。

| 模式 | 生成规则 |
|------|----------|
| A | 围绕用户主题，提供 3-4 个不同切入角度 |
| B/C | 筛选 3-5 个选题，标注类型（🔥热点 / 🌲常青 / 📚系列） |
| D | 规划系列总线 + 拆出每篇选题 |

### 第6步：生成标题与大纲

为每个选题生成完整的「选题卡片」：标题候选（3-5 个，混合风格）、切入角度、大纲预览、工作量评估、摘要候选。

**标题风格**：按优先级加载：
1. 用户指定（「用反问型」）
2. **`config.yaml`** 的 **`title_style`** / **`custom_title_style`** > **`default_title_style`**（若有；**须为 YAML 列表**；多候选时须按选题择一并写回本篇 **`article.yaml`** 同键为**单元素列表**；`custom_*` 非空时优先于 `default_*`）
3. `.aws-article/presets/title-styles/` 下的自定义风格
4. **fallback**：内置 5 种风格（悬念/干货/数字/反问/故事）混合生成，详见 [references/title-presets.md](references/title-presets.md)

输出模板：[references/output-format.md](references/output-format.md)

### 第7步：展示并等待用户选择 ⛔

**⚠️ 必须停下来等用户操作，不要自作主张继续。**

展示所有选题卡片后，提示用户：

```
请选择：
- 输入编号（如 1）→ 选定该选题
- 「调整 + 意见」→ 按意见修改后重新展示
- 「重新选」→ 换一批选题
- 「组合 1+3」→ 融合多个选题
- 系列模式：「先写第 N 篇」→ 按该篇进入写稿
```

**禁止的行为**：
- ❌ 不等用户选择就继续写稿
- ❌ 假设用户会选某个选题
- ❌ 跳过展示直接进入下一步

### 第8步：输出选题卡片

用户确认后：

1. **文章目录**：若 **main** 已创建本篇目录且内含 **`article.yaml`**，**不要改目录名**，直接在该目录写入；否则创建 `{drafts_root}/{YYYYMMDD}-{标题slug}/`（**`drafts_root`** / **`series_root`** 以 **`config.yaml`** 为准，无则与 [main SKILL](../aws-wechat-article-main/SKILL.md) 及仓库惯例一致）。
2. 将选题卡片保存为 **`topic-card.md`**
3. 将调研摘要保存为 **`research.md`**
4. 系列模式：将系列规划保存到 `{series_root}/{系列slug}/plan.md`
5. **`article.yaml`**：同目录**若无**或需更新已定题信息，**须在本步创建或补全**（**`publish_completed: false`**；标题、摘要等与用户选定一致时可写入）。推荐：`python {baseDir}/../aws-wechat-article-publish/scripts/article_init.py  --title "…" --digest "…"` 等。**总览一条龙**下 main 若已初始化，则**合并更新**缺失键即可。

→ 交给 **aws-wechat-article-writing**。须已具备 **`.aws-article/config.yaml`**（仓库根相对路径）；本篇目录建议已有 **`article.yaml`**（见 [writing SKILL](../aws-wechat-article-writing/SKILL.md)）。

## 过程文件

| 文件 | 说明 |
|------|------|
| **`.aws-article/config.yaml`** | 全局账号与选题/文风约束；选题全程以之为准 |
| **`article.yaml`** | 本篇元数据与 **`publish_completed`**；新建本篇须 **`false`**；单独 topics 须在目录内创建或更新 |
| **`topic-card.md`** | 选题卡片（标题、摘要、角度、大纲） |
| **`research.md`** | 调研摘要（搜索发现、竞品分析、数据点） |

## `article.yaml` 与文末推荐链接（智能体）

全局 **`.aws-article/config.yaml` 一般不修改**；`embeds.related_articles` 若在全局已配置 `manual`，各篇可用同一套 `{embed:link:名称}`。若全局未配或希望**每篇不同推荐**：

1. **本篇** `article.yaml` 中只增加 **`embeds.related_articles.manual`**（`name` + `url` 列表）；**不要**在本篇写名片/小程序（仍以全局为准）。
2. 排版时 **`format.py` 仅将本篇的 `embeds.related_articles` 与全局同名块深度合并**。
3. **智能体自动获取推荐**（全局 `manual` 为空或本篇需要单独列表时）：运行  
   `python {baseDir}/../aws-wechat-article-publish/scripts/getdraft.py published-fields`
   得到已发布正式文章的 `title` / `digest` / `url`，结合当前篇主题**挑选最多 3 条**，写入**本篇** `article.yaml` 的 `embeds.related_articles.manual`，并在 **`article.md`** 文末使用 `{embed:link:名称}`，`name` 与 `manual` 中一致。
4. 定稿前确认文末 `{embed:link:…}` 与合并后的 **`related_articles`** 一致（参见 [review SKILL](../aws-wechat-article-review/SKILL.md) 定稿说明）。

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [aiworkskills](https://github.com/aiworkskills)
- **Source:** [aiworkskills/wechat-article-skills](https://github.com/aiworkskills/wechat-article-skills)
- **License:** Apache-2.0
- **Homepage:** https://aiworkskills.cn

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-aiworkskills-wechat-article-skills-aws-wechat-article-topics
- Seller: https://agentstack.voostack.com/s/aiworkskills
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
