content-planner
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseTopic Planning + Content Calendar
选题规划 + 内容日历
Use Cases
使用场景
- User says "帮我规划下周公众号内容"
- User says "最近有什么热门选题可以写"
- User says "帮我做一份内容日历"
- User wants to know what competitor accounts are writing about
- Need to make topic decisions based on data
- 用户说“帮我规划下周公众号内容”
- 用户说“最近有什么热门选题可以写”
- 用户说“帮我做一份内容日历”
- 用户想了解竞品账号正在撰写的内容
- 需要基于数据做出选题决策
Dependencies
依赖环境
Node.js + cheerio (install once):
bash
npm install -g cheerioNode.js + cheerio(仅需安装一次):
bash
npm install -g cheerioScript Directory
脚本目录
| Script | Purpose | Usage |
|---|---|---|
| Sogou WeChat article search | |
| 脚本 | 用途 | 使用方法 |
|---|---|---|
| 搜狗微信文章搜索 | |
Search Script Parameters
搜索脚本参数
IMPORTANT: Always use the environment variable to locate scripts.
$SKILLS_ROOTbash
undefined重要提示: 请始终使用环境变量定位脚本。
$SKILLS_ROOTbash
undefinedBasic search
基础搜索
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword"
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword"
Limit result count
限制结果数量
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 15
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 15
Save to file
保存到文件
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 20 -o result.json
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 20 -o result.json
Parse real URLs (extra network requests, may be blocked by anti-scraping)
解析真实URL(需额外网络请求,可能触发反爬机制)
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 5 -r
**Output Fields:** Article title, article URL, article summary, publish time, source account namenode "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "keyword" -n 5 -r
**输出字段:** 文章标题、文章URL、文章摘要、发布时间、来源账号名称Workflow
工作流程
Step 1: Clarify Planning Scope
步骤1:明确规划范围
Confirm the following information with the user (ask all at once):
帮你规划内容,先确认几件事:
1. 规划周期?(本周 / 下周 / 自定义时间范围)
2. 有没有特定想写的方向或关键词?
3. 每周几篇?(默认3篇)一次性向用户确认以下信息:
帮你规划内容,先确认几件事:
1. 规划周期?(本周 / 下周 / 自定义时间范围)
2. 有没有特定想写的方向或关键词?
3. 每周几篇?(默认3篇)Step 2: Trending Scan
步骤2:热点扫描
Execute multiple rounds of searches covering different dimensions:
Search Strategy:
- Core domain keyword search — Search with 2-3 core keywords related to the account's field
- User-specified keyword search — If user has specific directions
- General trending search — Search with combinations of "热点", "热门", "最新" with domain keywords
bash
undefined执行多轮覆盖不同维度的搜索:
搜索策略:
- 核心领域关键词搜索 — 使用与账号领域相关的2-3个核心关键词进行搜索
- 用户指定关键词搜索 — 如果用户有特定方向
- 通用热点搜索 — 将「热点」「热门」「最新」与领域关键词组合搜索
bash
undefinedExample: Tech domain
示例:科技领域
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "AI 最新趋势" -n 10
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "大模型应用" -n 10
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "科技热点 2026" -n 10
Wait 3-5 seconds between each search to avoid triggering anti-scraping mechanisms.node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "AI 最新趋势" -n 10
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "大模型应用" -n 10
node "$SKILLS_ROOT/content-planner/scripts/wechat_search.js" "科技热点 2026" -n 10
每两次搜索间隔3-5秒,避免触发反爬机制。Step 3: Competitor Analysis
步骤3:竞品分析
Extract from search results:
| Analysis Dimension | Extracted Content |
|---|---|
| Title Strategy | Which title patterns get high engagement |
| Topic Direction | Which directions are recent hot topics |
| Content Angle | What angles do existing articles take, how to differentiate |
| Publish Time | Competitors' publishing frequency and timing |
从搜索结果中提取以下信息:
| 分析维度 | 提取内容 |
|---|---|
| 标题策略 | 哪些标题模式获得高关注度 |
| 选题方向 | 近期哪些方向是热门选题 |
| 内容角度 | 现有文章采用哪些角度,如何实现差异化 |
| 发布时间 | 竞品的发布频率与时间节点 |
Step 4: Generate Topic Recommendations
步骤4:生成选题推荐
Based on trending data and competitor analysis, generate 5-10 topic suggestions. Each topic must include:
- Alternative Titles (2 styles)
- Target Audience
- Content Angle (differentiation point)
- Recommended Style: deep-analysis / practical-guide / story-driven / opinion / news-brief
- Urgency: 🔥 Urgent / 📅 This week / 📦 Reserve
- Reference Articles (from search results)
Topic Quality Requirements:
- Each topic must be based on real search data, not fabricated
- Each topic must have a clear differentiation angle
- Must include at least 1 high-urgency topic (🔥) and 2 reserve topics (📦)
基于热点数据和竞品分析,生成5-10个选题建议。每个选题必须包含:
- 备选标题(2种风格)
- 目标受众
- 内容角度(差异化切入点)
- 推荐风格:深度分析 / 实操指南 / 故事驱动 / 观点评论 / 新闻简讯
- 紧急程度:🔥 紧急 / 📅 本周 / 📦 储备
- 参考文章(来自搜索结果)
选题质量要求:
- 每个选题必须基于真实搜索数据,不可虚构
- 每个选题必须有明确的差异化角度
- 必须包含至少1个高紧急度选题(🔥)和2个储备选题(📦)
Step 5: User Approval
步骤5:用户确认
This is a mandatory approval gate and cannot be skipped.
Present the topic list and ask user to select, adjust, and schedule.
此为强制确认环节,不可跳过。
展示选题列表,请求用户进行选择、调整并安排时间。
Step 6: Generate Content Calendar
步骤6:生成内容日历
Output :
content_calendar.jsonjson
{
"week": "2026-W13",
"created_at": "2026-03-25",
"articles": [
{
"id": 1,
"date": "2026-03-26",
"day": "Wednesday",
"topic": "Topic Title",
"angle": "Differentiation Angle",
"style": "deep-analysis",
"audience": "Target Audience",
"urgency": "this-week",
"status": "planned",
"keywords": ["keyword1", "keyword2"]
}
]
}输出:
content_calendar.jsonjson
{
"week": "2026-W13",
"created_at": "2026-03-25",
"articles": [
{
"id": 1,
"date": "2026-03-26",
"day": "Wednesday",
"topic": "Topic Title",
"angle": "Differentiation Angle",
"style": "deep-analysis",
"audience": "Target Audience",
"urgency": "this-week",
"status": "planned",
"keywords": ["keyword1", "keyword2"]
}
]
}Step 7: Output Confirmation
步骤7:输出确认
Present a summary table and prompt user to start writing with article-writer skill.
展示汇总表格,并提示用户使用article-writer技能开始撰写。
Search Considerations
搜索注意事项
- Search results may be empty (anti-scraping), retry with different keywords
- Multiple searches in short time may trigger restrictions, recommend 3-5 second intervals
- The parameter for parsing real URLs has low success rate, avoid unless necessary
-r
- 搜索结果可能为空(触发反爬),请更换关键词重试
- 短时间内多次搜索可能触发限制,建议间隔3-5秒
- 解析真实URL的参数成功率较低,非必要请勿使用
-r
Integration with Other Skills
与其他技能的集成
- The generated is the input source for article-writer
content_calendar.json - article-writer reads entries with status from the calendar
planned
- 生成的是article-writer技能的输入源
content_calendar.json - article-writer会从日历中读取状态为的条目
planned