diff --git a/sreweekly-digest/SKILL.md b/sreweekly-digest/SKILL.md index 268ff67..eaa63a8 100644 --- a/sreweekly-digest/SKILL.md +++ b/sreweekly-digest/SKILL.md @@ -8,24 +8,24 @@ category: custom last_updated: "2026-09-10" metadata: hermes: - tags: [rss, sreweekly, markdown, n8n, digest] + tags: [rss, sreweekly, markdown, digest] related_skills: [blogwatcher-daily, llm-provider-billing] --- # SRE Weekly Digest -抓取 [SRE Weekly](https://sreweekly.com) 每期内容,把每期分享的文章逐篇导出为 Markdown 文件,用 manifest.json 记录每期状态。**脚本只做解析与提取,不发邮件**(邮件由 n8n 后续节点处理)。 +抓取 [SRE Weekly](https://sreweekly.com) 每期内容,把每期分享的文章逐篇导出为 Markdown 文件,用 manifest.json 记录每期状态。**脚本只做解析与提取,不发邮件**。 ## When to Use - 用户提到 sreweekly.com / SRE Weekly 期刊 / sreweekly 脚本,要求抓取、提取、检查或导出 -- 需要手动跑一次扫描/提取(`--scan` / `--extract` / `--status`),或排查 n8n 定时任务为什么没出新期 +- 需要手动跑一次扫描/提取(`--scan` / `--extract` / `--status`) - 想看某期分享了哪些文章、某篇文章的链接/作者/简介 ## 关键事实 - **脚本**:本技能目录 `scripts/sreweekly.py`(绝对路径 `~/.hermes/skills/custom/sreweekly-digest/scripts/sreweekly.py`,软链到 atlas;单文件,依赖 feedparser) -- **数据目录**:`~/Workspace/nexus/sreweekly/`(html/ 存每期原始 HTML,markdown/<期号>/ 存每篇一个 md,manifest.json 记状态;README.md 有完整 n8n 配置说明) +- **数据目录**:`~/Workspace/nexus/sreweekly/`(html/ 存每期原始 HTML,markdown/<期号>/ 存每篇一个 md,manifest.json 记状态;README.md 有完整说明) - **核心发现**:SRE Weekly 的 RSS feed 在 `content:encoded` 字段自带每期完整 HTML(实测最近 5 期全量)——**不用再抓每期页面**,直接从 feed 拿内容 ## 命令速查 @@ -34,8 +34,8 @@ metadata: S=~/.hermes/skills/custom/sreweekly-digest/scripts/sreweekly.py # 或在本技能目录下: S=scripts/sreweekly.py python3 $S # 扫描 feed → 新期存 html/ + 登记 manifest(幂等去重) -python3 $S --check # 输出 NEW:533,532 或 NONE(供 n8n 分支) -python3 $S --extract pending # 提取所有未处理期(n8n 每日流程推荐) +python3 $S --check # 输出 NEW:533,532 或 NONE +python3 $S --extract pending # 提取所有未处理期 python3 $S --extract 533 # 指定期 / latest / all(已提取的需 --force 覆盖) python3 $S --status # 状态表(期号/日期/HTML/提取/文章数) # 可选: --feed URL / --dir PATH / --force(数据目录默认 ~/Workspace/nexus/sreweekly/) @@ -64,8 +64,3 @@ python3 $S --status # 状态表(期号/日期/HTML/提取/文章数 - 标题 slug 文件名保留 CJK(`\w` + unicode),超长截断 70 字符,前导序号保证顺序 - manifest 期号从链接正则 `sre-weekly-issue-(\d+)` 提取,缺失时回退最后一段路径 -## n8n 定时流程(用户已部署方案) - -1. 定时触发(每天一次,该刊周一更新)→ Execute Command 跑 `--scan` -2. Execute Command 跑 `--extract pending`(空跑无害,可省 --check 分支) -3. 后续节点读取 `markdown/<新期号>/` 的 md → 邮件发送(用户收件箱 billyshen@163.com,发件 star-agent@agentmail.to;发信细节见 blogwatcher-daily 技能的 agentmail-sending 文档) \ No newline at end of file