Communitygithub.com

zinan92/daily-newsletter

本地优先的每日收件箱管道:获取源信息,执行AI精选与撰写,生成Markdown/HTML/PNG制品,跟踪源健康状态,以及发送飞书回执。

daily-newsletter 是什么?

该技能是一个完全本地运行的每日AI新闻通讯系统,适用于开发者或AI Agent操作员。它从配置好的源注册表获取信息,标准化为统一的Markdown条目,然后利用AI进行事件理解、合并、筛选和最终撰写。输出包括Markdown、HTML和PNG格式的制品,同时记录源健康数据,并可选通过飞书发送完整摘要。该技能监控管道运行状况,支持生产运行、调试、验证和交付检查,并默认使用`~/park-io`作为数据目录。它强调不可变源和AI在内容判断中的核心作用,防止虚假的成功报告,并确保所有读者面向的输出均从Markdown派生。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add zinan92/daily-newsletter

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

每日新闻通讯

每日新闻通讯是一个本地优先的每日收件箱运行管道。它获取源材料,将其规范化为一条条Markdown,让AI执行事件理解/合并/筛选/撰写,最终生成Markdown/HTML/PNG制品,记录源健康状态,并可选择将完整摘要发送至飞书。

何时使用

当用户要求以下内容时使用此技能:

  • 运行或验证每日AI新闻通讯管道;
  • 调试缺失、延迟或降级的源条目;
  • 检查飞书投递或本地已发送制品;
  • 更改面向读者的每日收件箱输出;
  • 审查管道健康、工作流图、任务图或回归不变量;
  • 将此仓库打包为公共Agent技能。

请勿将此技能用于不相关的新闻通讯文案撰写、通用RSS建议或在此仓库之外进行实时内容抓取。

输入

  • 仓库根目录:daily-newsletter的检出目录。
  • 源注册表:$PARKIO_HOME/_source management/sources.md。
  • 运行时数据:$PARKIO_HOME/_inbox/{raw,unprocessed,processed}。
  • 已发送制品:$PARKIO_HOME/001_daily newsletter/ai/。
  • 机密信息:环境变量或$PARKIO_HOME/_secrets/*。
  • 可选认证/运行时工具:X认证环境变量、YouTube Cookies、WeWe RSS、content-toolkit、Chrome、MLX Whisper。

默认的$PARKIO_HOME为~/park-io。

工作流

  1. 在更改行为之前阅读 README.md、AGENTS.md 和 GOTCHAS.md。
  2. 检查git状态并保留用户未提交的更改。
  3. 对于只读诊断,先检查生成的制品和日志,再重新运行生产命令。
  4. 对于公共验证,运行:
python3 -m pytest -q
python3 scripts/task_graph_validate.py
python3 scripts/workflow_graph_validate.py
python3 scripts/workflow_graph_dry_run.py
python3 scripts/n8n_import_diff.py
  1. 对于手动生产运行,使用分段路径:
./fetch-all.sh
python3 stages/to_md/run.py
BATCH=$(python3 stages/coarse_filter/run.py | tail -1)
PARKIO_BATCH_ID=$BATCH python3 build-digest.py
PARKIO_BATCH_ID=$BATCH python3 stages/archive/run.py
PARKIO_BATCH_ID=$BATCH python3 finalize-local.py
python3 build-product-radar.py --date "$(date +%F)"
python3 build-daily-bundle.py --date "$(date +%F)"
python3 reader_quality.py --date "$(date +%F)"
python3 send-feishu-digest.py --date "$(date +%F)"
  1. 在任何面向读者或路由更改之后,重新运行测试及至少工作流图验证器。

输出

  • processed/<YY-MM-DD>/run-report.json
  • processed/receipts/feishu/*.json
  • sent/YY-MM-DD.{md,html,png}
  • sent/deep-YY-MM-DD.{md,html,png}(当存在深度候选时)
  • sent/product-radar-YY-MM-DD.{md,html,png}
  • sent/daily-YY-MM-DD.{md,html,png}
  • status.html 和源健康JSON,供运维人员查看

安全

  • 切勿打印或提交API密钥、Cookies、飞书Webhook密钥、Telegram令牌或X认证值。
  • 除非用户明确要求投递,或当前任务是投递验证,否则不要发送飞书或Telegram消息。
  • 不要将源故障隐藏为“无更新”;应使用 channel-health.py、run-report.json 和状态制品。
  • 当AI JSON或最终Markdown结构失败时,不要创建虚假的成功新闻通讯。
  • 不要将内容判断从AI提示移到确定性脚本阈值中,粗糙垃圾过滤除外。
  • 不要单独重写HTML或PNG;Markdown是面向读者的唯一来源。

回归不变量

GOTCHAS.md 是事实来源。最重要的不变量包括:

  • AI拥有合并、评分、分类、筛选和最终撰写的控制权。
  • 结构性AI输出失败会终止运行并写入错误制品。
  • 深度阅读必须是简短宇宙的可追踪子集。
  • 产品雷达是一个独立的产品通道,通过每日总览链接。
  • 源健康状况保留在status/run-report/alerts中,不在消费者摘要正文内。

相关技能