社区日报工作流
社区日报已经从旧的“bot 目录里生成 report,再手工复制到站点”的方式,重构为一条固定流水线:apps/daily-editor 工作台负责日常操作,content/daily/issues/*.issue.json 是社区站唯一公开数据源,var/daily/ 保存所有私有运行期数据。
每天使用时,从仓库根目录运行:
pnpm daily:workbench
在工作台首页创建当天 Issue。issueDate 是发布日期;如果是周一,默认素材日期是上周五、周六、周日。创建后进入 Issue 页面,依次执行“抽取素材”“生成候选”“人工精选”“发布到站点”。发布会把结构化 Issue 写到 content/daily/issues/<date>.issue.json,并在 static/reports/daily/ 生成可预览的 HTML、Markdown 和公众号富文本辅助产物。
人工精选后可以点击“联网校验精选”。该步骤只校验精选稿,不处理候选池;它会用 Tavily 搜索公开网页,再用当前模型生成校验结论、风险提示、证据链接和建议改写。需要先在环境变量里提供 TAVILY_API_KEY。发布时如果有未校验或存疑项,只弹窗警告,不阻止发布。
命令行也保留了明确入口:
pnpm daily:status
pnpm daily:materials -- 2026-05-26
pnpm daily:factcheck -- 2026-05-27
pnpm daily:publish -- 2026-05-26
pnpm daily:publish -- 2026-05-26 --screenshots
其中 daily:materials 会把微信、飞书、QQ 三端 daily JSON 归一到 var/daily/raw/<date>.materials.json。daily:publish 默认只生成 HTML,不依赖 Chrome;加 --screenshots 时会调用 Playwright/Chrome 生成 PNG 海报和封面。
旧文件 src/data/dailyReports.json 已从站点源中移除,不再参与日报页面、feed 或 AI asset 生成。旧的 bot/wechat-summary-bot/md/<date>.detailed.md 也不再是单一来源,渲染器会优先从 content/daily/issues/<date>.issue.json 生成详版 Markdown。
模型列表和默认并发配置在 content/daily/config.json 中维护;工作台会读取这个配置,并允许在 UI 中临时改用其他模型。