微信公众号文章写作
创作有资料支撑的中文文章,生成确定性的占位封面,并在用户明确确认后创建微信草稿。
工作流程
- 检查进程环境或
scripts/.env中是否已配置WECHAT_AUTHOR。如果未配置,询问用户希望使用的作者名并停止;收到作者名后保存:
bash
python3 scripts/configure_wechat_author.py "用户提供的作者名"
保存成功后继续后续流程。不得自行猜测或使用固定作者名。
2. 联网搜索并准备候选主题:
- 用户给出明确方向时,将其作为选题范围,搜索近期相关新闻、权威背景和代表性评论,从中提炼恰好十个不同的细分主题。
- 用户未给出明确方向时,搜索近期高热度话题,说明观察窗口和热度判断依据,筛选恰好十个有可靠事实支撑的主题。不要要求用户补充方向。
3. 列出十个编号主题。每个主题补充一句切入角度和简短的热度或事实依据。请用户选择 1~10 或要求更换候选主题。在此停止。用户确认主题前,不得提供文章标题、撰写正文、生成 HTML、清单文件或封面。
4. 用户确认主题后,针对该主题深入收集近期新闻、权威背景和代表性评论。建立研究台账,记录访问日期、来源标题、网址、相关论据和不确定性。优先使用一手或权威来源;核心事实至少由两个相互独立的可靠来源交叉验证;区分事实、转述观点、评论和文章推论。
5. 完成定向研究后,提供恰好三个不同的文章标题。每个标题都应及时、具体,具有情绪或思想吸引力,与目标读者相关,忠于证据且不做空洞的标题党表达。为每个标题补充一句写作角度说明。
6. 列出三个编号标题和精简来源清单,请用户选择 1、2、3 或要求修改。再次停止。用户确认标题前,不得撰写正文、生成 HTML、清单文件或封面。
7. 用户确认标题后,按照 references/editorial-guide.md 撰写文章。逐一核查具有时效性的事实、引语、数字、专有名词和因果判断。
8. 将文章转换为采用保守行内样式的 HTML,不得包含正文图片或 <img> 标签。使用 assets/article-manifest.json 组装 article.json。
9. 不使用 AI,生成 900 × 383 像素的中性占位封面:
bash
python3 scripts/generate_wechat_cover.py cover.png
- 执行本地稿件包检查:
bash
python3 scripts/publish_wechat_draft.py \
--manifest article.json \
--cover cover.png \
--dry-run
- 向用户展示标题、摘要、最终正文、来源、作者名、占位封面和试运行结果。在创建微信草稿前立即请求明确确认。
-
发布公众号文章到草稿箱,调用下面的脚本:
bash python3 scripts/publish_wechat_draft.py \ --manifest article.json \ --cover cover.png \ --confirm-publish返回草稿
media_id和 API 警告。
强制规则
- 每篇文章都必须联网搜索,包括常青主题。对于医疗、法律、金融、安全或快速变化的话题,提高来源质量要求并说明重要限制。
- 综合并改写来源,只在必要时使用简短引语。不得虚构引用,也不得夸大来源所支持的结论。
- 除非显示引用能明显帮助读者,否则将研究记录放在可发布正文之外。
- 在文件系统中工作时,生成
article.html、article.json和cover.png。不得生成正文配图或 AI 封面。 - 使用已配置的
WECHAT_AUTHOR作为作者,并向所有读者开放评论(need_open_comment=1、only_fans_can_comment=0)。 - 凭据只能保存在进程环境变量或未跟踪的
scripts/.env中;不得在提示词、清单、日志或受版本控制的文件中泄露秘密。 - 创建草稿是流程的终点。除非用户另行要求,否则不得发布、群发、定时或删除内容。