| name | tech-daily-brief |
| description | 每日动态简报 skill。把你配置的一组「类型」(如 GCC / LLVM / Go / Java / AI 编译 / 内存库)当作**一个关注集**,每天产出**一份**中文《每日简报》md——里面按类型平铺,每个类型各带「📄 论文 / 📰 资讯 / 💻 上游代码」三维度,让你一份文件看全所有关心的方向、可挑可跳。时间窗默认近 1 天(可调,低频维度自动放宽)。每个「类型×维度」的最佳信息源由 LLM 自动发现并缓存为「源画像」,每日复用、增量去重。产物双归档到公开仓库(分享)+ 私有归档仓库(分享外的备份)。当用户说"出一份每日动态/简报""跟踪我这几个类型今天有什么新东西""每天汇总下 arXiv + 资讯 + 上游 commit""盯一下 编译器/内存库 的最新进展"等需求时使用——即使没明说"简报"二字,只要意图是"按一组类型 + 时间窗汇总论文/资讯/上游代码的近期动态成一份报告",都应优先触发本 skill。区别于 magazine-collect(近 3 月月刊)、paper-digest(只论文深摘要)、upstream-tech-radar(单仓库月报):本 skill 是**按天、一份 md 看全、类型×三维度**的轻量动态简报。 |
每日简报 (tech-daily-brief)
一个 LLM-first、主体零脚本 的每日动态收集 skill。
核心模型:你配置的一组类型(如 GCC / LLVM / Go / Java / AI编译 / 内存库)= 一个关注集(watch-set),有一个标签(如 compiler-mem)。每天产出一份 md——<标签>/daily/<YYYY-MM>/<YYYY-MM-DD>.md,里面按类型平铺,每个类型一个 ## 段、下挂 ### 📄论文 / ### 📰资讯 / ### 💻上游代码,顶部带目录可锚点跳。这样你一份文件就能看全所有关心的方向、自由挑选快速浏览。换一组方向就换一个新标签生成。
与 magazine-collect 最大的不同:信息源不靠用户手写规则文件——每个「类型×维度」的最佳源由 Agent 自动发现,写成一份可编辑的「源画像」缓存,之后每天复用 + 增量去重。
何时使用本 skill
- 让你做你配置的一组类型的"每日动态 / 每日简报 / 今天有什么新东西"
- 让你"每天汇总下这几个方向的 arXiv + 资讯 + 上游 commit / PR / 邮件列表"
- 让你"盯一下这些方向最近进展",目标产物是一份按天的结构化 markdown
- 让你按已有「源画像」再跑一次今天的简报
不属于本 skill:单篇文章/单条 commit 的解读(直接答);近 3 月"月刊/季报"(用 magazine-collect);只要论文的深度综述(用 paper-digest);单仓库月度技术雷达(用 upstream-tech-radar)。
核心原则(先内化,再开干)
七条决定产物是否有价值,违反任一条都意味着核心价值流失:
- 源画像是真理来源(HARD)。 关注集的「源画像」(
<标签>/sources.profile.md,按类型组织)列出的源、关键词、关注点是指令不是提示:所有源必须尝试覆盖;降级必须在「源覆盖表」明示。没有画像时先 bootstrap 一份(见 Step 2)。
- 只留高相关、按天去重(HARD)。 不要按时间平铺。只收录命中「特别关注点」的条目;跨天已报道过的(在
state/<标签>-seen.md 里)直接剔除——简报的价值是"今天值得看的新东西",不是流水账。
- LLM-first,主体零脚本。 全程
WebSearch / WebFetch / Read / Write / Bash(仅 git/文件)。不要为抓取/摘要写 .py。
- 不死磕被反爬的源。 Phoronix、商业新闻站、X、Anubis 挑战墙会拿回挑战页/登录墙。立刻换路(关注点扇出 site: 搜索 / RSS / Wayback CDX / 镜像),同一 URL 不 retry 超 2 次。详见
references/dimension-playbooks.md。
- 保留链接,绝不编造。 每条附原文 URL;核不到原文的在「源覆盖表」备注坦白。论文维度严守反虚构:抓不到摘要不写量化数字。
- 源覆盖可审计。 每份简报末尾附「源覆盖表」:每个类型×维度跑了哪些源、候选→入选多少、哪些降级及理由。
- 每条都要 actionable。 资讯维度三段式
背景 / 要点 / 启发;论文/上游也要点出"为什么这条值得关注"。
调用约定
从用户自然语言解析这些参数:
| 参数 | 必需 | 默认 | 说明 |
|---|
watch_set | 必需 | — | 关注集标签(kebab-case),如 compiler-mem。决定归档路径 <标签>/...。用户没给就问一次。 |
types | 必需 | 取自画像 | 该关注集的类型列表,如 GCC、LLVM、Go、Java、AI编译、内存库。已有画像时从画像读;新建时由用户给。 |
window | 可选 | 近 1 天 | 全局时间窗。各维度在此基础上用「智能子窗」(见下)。 |
mode | 可选 | daily | daily(产当天简报 + 双归档)/ bootstrap-only(只建/刷新源画像,供用户先审)/ no-publish(生成不推送)。 |
repo_root | 可选 | ~/workspace/tech-daily-brief/ | 公开仓库本地克隆工作目录。 |
aidocs_root | 可选 | ~/workspace/ai-docs/tech-daily-brief/ | ai-docs 镜像归档根。 |
智能子窗(解决"近 1 天论文太薄")
全局 window 默认近 1 天,低频维度自动放宽,避免每天大量空块。可被显式 window 覆盖:
| 维度 | 默认子窗 | 理由 |
|---|
| 📰 资讯 | 近 1 天(薄则近 3 天;命中关注点的高价值条放宽近 7 天) | 博客/新闻日更,但友商/里程碑高价值条不该被日窗筛掉 |
| 💻 上游代码 | commit/PR 近 1 天;邮件列表近 3 天;清淡日(周末/低频类型)fallback 近 7 天 | 邮件列表延迟高、周末提交稀疏 |
| 📄 论文 | arXiv 近 7 天;会议看"近 30 天发布的录用/proceedings + 即将召开" | 单天 arXiv 噪声大、会议低频 |
放宽子窗时必须在该 ### 小节抬头标注实际天数。清淡日/偏科(某维度窗内为空)按 references/dimension-playbooks.md 的"清淡日策略":放宽仍空写"无强相关新增"、窗外条标"窗口外上下文"、把有料维度故事线提进「今日脉络」——不硬凑边界/二手条目充数。
三维度速览
每个类型都从这三个维度抓,具体源来自该类型在源画像里的条目。细则见 references/dimension-playbooks.md,这里只给定位:
- 📄 论文:arXiv(按类型 arxiv 分类 + 关键词)+ 近期/即将召开顶会录用 + lab/blog。轻量:每类型 top 3–8 篇,每篇
标题 / 链接 / 一句话 what+why / 与关注点的相关性。严守反虚构。
- 📰 资讯:类型官方/博客 + 技术媒体 + X 关键账号 + 厂商 newsroom + newsletter。每条三段式。反爬走关注点扇出 site: 搜索 / RSS / Wayback CDX。
- 💻 上游代码:主仓近期 commit + open/merged PR + Releases/tags(独立查一步)+ patch archive / 邮件列表 + release notes。沿用三层深度与"为什么重要 / 对 Arm·性能的意义",按天轻量。
工作流
mode=daily 走完 Step 1→9。bootstrap-only 只到 Step 2。no-publish 跳过 Step 8。
Step 1 | 解析参数 + 确定窗口
解析 watch_set / types / window / mode。用 date +%F 取今天(不靠记忆推日期),并 date +%u 判断是否周末(影响清淡日 fallback)。算出各维度子窗的绝对日期区间。
Step 2 | 加载或 bootstrap 源画像(一份/关注集)
- 读
<标签>/sources.profile.md:
- 存在 → 用它列的每类型的源、关键词、关注点、子窗。
- 不存在/新关注集 → 按
references/source-discovery.md,对每个类型用 WebSearch 自动发现三维度最匹配的源,写一份按类型组织的源画像。bootstrap-only 写完即停、把路径给用户审;daily 写完续抓。
- 画像是自动发现 + 可人工编辑:用户改了下次以改后为准。新增/删类型即编辑画像。
Step 3 | 逐「类型×维度」抓取
对每个类型依次(或并行)跑 📄/📰/💻。抓取顺序、反爬绕行、各维度约束见 references/dimension-playbooks.md。强烈建议并行子 agent(每个 类型×维度 一个),详见"并行执行"。维护「源覆盖账本」(每源:抓取方式 / 候选数 / 降级理由)。
Step 4 | 强筛 + 跨天去重 + 关注点覆盖守卫
- 用「特别关注点」做入选判断(命中任一才进核心;大版本发布可破例)。
- 读
state/<标签>-seen.md,剔除已报道条目(按 commit sha / arXiv id / 规范化 URL)。
- 每类型每维度精炼量级(资讯 3–8、上游 3–10、论文 3–8);宁缺毋滥。
- 关注点覆盖守卫(HARD,最重要):对画像里每个类型的每条特别关注点,检查是否至少有一个源被实际跑到。某关注点全程 0 源命中,绝不能据此下"本期无货"结论——必须显式标「关注点 X 本期无源覆盖,非确认无货」。
- 要看"源流粒度",不只是"有没有 ≥1 命中":一条关注点常映射到多条源流(如 GCC 友商关注点 ↔ {Phoronix 资讯, i386 commit 流, loongarch commit 流, gcc-patches 友商线程})。只要其中关键的 commit/邮件源流没被扫到,即使另一条(如 Phoronix)命中了,也要在源覆盖表标「该关注点的 X 源流未扫」,不能算已覆盖。实测:友商关注点靠 Phoronix 命中一条就被判"已覆盖",但 i386 commit 流没扫、漏了 b64fc29(x86 memset/memcpy→memmove,-9% 体积)。
- 友商/里程碑强相关钉死:友商(海光/龙芯/Intel/AMD)新核/ISA 工具链 enablement 落入主线、或主版本发布里程碑,按定义就是强相关,禁标"弱相关"舍弃;命中"友商 + 里程碑"的自动判高价值,必须逐条核对真实日期再决定收录。
Step 5 | 组织成一份报告(类型 × 三维度)
按 references/output-template.md 写一份 md:今日全局脉络(跨类型 4–8 bullet)→ 目录(类型锚点)→ 各类型 ##(下挂 ### 📄/📰/💻)→ 源覆盖表。两条写作守卫:
- 脉络叙事必须有一手锚点:依赖窗外事实的判断(如"jemalloc 仍在维护"),必须在对应维度引权威一手锚点(工程博客 + release + postmortem),不得仅以 GitHub API 元数据/二手转述支撑。
- 发布里程碑常驻:主版本发布(GCC 16.x、LLVM 22.x、jemalloc 5.3.x)即便超日窗,也在对应维度留一行带 changelog 链接的"发布里程碑"。
Step 6 | 写产物 + 索引 + 去重账本
落到 repo_root 下(结构见"归档结构"):
- 当天报告:
<标签>/daily/<YYYY-MM>/<YYYY-MM-DD>.md(一份,含全部类型)
- 更新索引:
<标签>/README.md(类型清单 + 期号时间线,最新在上)与根 README.md(关注集列表 + 最近期)
- 追加去重账本:本期入选条目 id →
state/<标签>-seen.md
- 源覆盖表完整性校验(HARD):落盘前 diff「画像列出的每个源」与「源覆盖表的行」——画像里每个源(每个 arXiv 分类、每个仓库、每个邮件列表/博客)都必须在覆盖表有对应一行,哪怕标"未跑/0/降级理由"。禁止静默跳过。
Step 7 | 回复用户(带源覆盖账单)
简短 summary:覆盖了哪些类型、产物路径、各类型各维度入选数、源覆盖账单(N 源 → 跑通 M、降级源及理由)、建议复核的低置信条目。
Step 8 |(除 no-publish)双归档 + 推送
按 references/archive-and-publish.md:先 commit/push 公开仓库(gitcode <gitcode-user>/<public-repo>),再镜像到 ai-docs(ai-docs/tech-daily-brief/<标签>/...)并 push。两边都用英文 commit、显式路径 git add、不含 AI 署名、token 从 git remote -v 取且绝不写进文件。
Step 9 | 给出可点击链接
回复给出公开仓库当天报告与 ai-docs 归档路径/链接。
归档结构
公开仓库与 ai-docs 镜像同一棵树。domains/ 已废弃——现在一个关注集标签就是一层,里面只有一份 daily(含全部类型),日期路径年-月合并为一层:
tech-daily-brief/ ← 公开仓库根(ai-docs/tech-daily-brief/ 镜像同结构)
├── README.md ← 总索引:各关注集(标签) + 覆盖类型 + 最近期
└── <标签>/ ← 一个关注集(= 你配置的一组类型),如 compiler-mem
├── README.md ← 该集索引:类型清单 + 期号时间线(最新在上)
├── sources.profile.md ← 一份源画像(按类型组织,自动发现 + 可编辑)
├── daily/
│ └── <YYYY-MM>/ ← 年-月一层
│ ├── 2026-06-28.md ← 当天**一份**报告(全部类型 × 📄/📰/💻)
│ └── 2026-06-27.md
└── state/ ← 去重账本(公开仓库 .gitignore,仅本地/ai-docs 留)
└── <标签>-seen.md
换一组方向 → 新建一个 <新标签>/,互不干扰。
并行执行(类型×维度提速)
类型 ×3 维度的抓取彼此独立,强烈建议并行:为每个「类型×维度」(或每个类型一个、内部跑 3 维度)派一个子 agent,按画像该类型的源 + references/dimension-playbooks.md 抓取,返回该维度的结构化数据(入选条目的 markdown 块 + 脉络候选 + 源覆盖账本),不是面向人的话术。主 agent 收齐后做 Step 4 去重、Step 5 组织成一份报告、Step 6 落盘。
参考文件索引
references/source-discovery.md — 新关注集如何对每个类型自动发现三维度源 + 源画像模板(按类型组织)。Step 2 必读。
references/dimension-playbooks.md — 三维度抓取顺序、反爬绕行(扇出+CDX)、反虚构、三层深度、写作约束。Step 3 必读。
references/output-template.md — 一份报告的字段级模板(今日脉络 / 目录 / 类型×三维度 / 源覆盖表)+ README 索引规范 + 反例。Step 5/6 必读。
references/archive-and-publish.md — 双归档 git 流程(公开仓库 + ai-docs),含仓库创建、token 取法、commit 规范、不写 token 铁律。Step 8 必读。
examples/ — 真实简报样例(few-shot quality bar)。
失败模式备忘
- 不要把简报写成流水账。 没命中关注点、或昨天已报道过的,一律不收。
- 不要漏跨天去重。 不读
state/<标签>-seen.md 就会天天重复同一条 PR/论文。
- 不要在论文维度编造收益数字。 抓不到摘要就只写标题+一句话+链接。
- 不要 retry 反爬源超过 2 次。 立刻换路:逐关注点定向
site: 发现式搜索 → RSS → Wayback CDX → 镜像。
- 不要拿"没扫的源"下"无货"结论。 某关注点 0 源覆盖就如实标"无源覆盖"。
- 不要用裸记法把漏检抹平。 源覆盖表记"超窗/弱相关"要列具体 URL + 核过的真实日期。
- 不要把 token 写进任何文件或 commit。 从
git remote -v 取,只在命令里用。
- 不要用
git add . / -A。 只 git add 本次明确产出的路径。
- 不要漏源覆盖表 / 不要替用户静默降级源。 降级要明示理由。