栏目配置约定
属性
中文
栏目配置约定(每栏独立可调模板)
定位:本文件是「全球观察」各栏目的可调约定说明书。具体配置在columns.registry.yaml, 本文件解释每个字段怎么改、为什么这么改、可调范围。改配置 = 改 YAML,不碰代码(agent 即配置界面)。 配套端到端说明见源驱动管道样板参考.md。
1. 三层模型(铁律)
- 平台(WorkBuddy / agent 对话)= 配置编排层:你口述需求,agent 写/改
columns.registry.yaml。你零代码。 - vault YAML(本文件同目录的
columns.registry.yaml)= 真相源配置:爬虫与 SSG 只读消费,Obsidian 可读可审。 - 网页(8125 静态站)= 只读输出:不回写任何配置。网站零智能。
2. 每个栏目 = 一段 YAML
- key: politics # 内部标识,stable,别随便改
name: 政治民生 # 显示名,随便改
order: 2 # 卡片排序(数字小在前)
max: 20 # 栏目页/卡片展示条数
source:
type: sources # 源驱动(RSS/Atom)。news-lib 用 mrxwlb,其余七栏均 sources
lookback_days: 3 # 只收近 N 天
top_n: 20 # 每栏每日精选条数
per_source: 2 # 每源至多取 N 条,防刷屏
dedup: true # 跨源同题去重(Jaccard ≥ 0.5)
summary: ai # 摘要由平台 agent 重写(英文站翻译)
relevance_keywords: [政治, 民生, ...] # 主题相关词(中英文混合)
scoring: # 打分四系数
recency: 1.0 # 新鲜度
relevance: 0.5 # 主题相关(命中 relevance_keywords 记 1)
coverage: 0.3 # 跨源同题覆盖度
heat: 0.4 # 真实热度层权重
heat: # 真实热度层(仅作排序权重,内容仍来自 sources)
enabled: true
weight: 0.4
baidu: true
weibo: true
google_trends: {geos: [US, HK]}
sources: # 该栏独立源站清单(国内/国际分开、行业分开)
- name: 新华网·时政
url: http://www.xinhuanet.com/politics/
feed: http://www.xinhuanet.com/politics/news_politics.xml
region: cn # cn / intl
industry: politics
lang: zh # zh / en
3. 各字段调参说明
| 字段 | 作用 | 可调范围 / 建议 | | --- | --- | --- | | relevance_keywords | 标题命中任一词 → relevance=1,否则 0 | 加词=放宽收录,减词=收紧。中英文都写(intl 源是英文标题)。当前每栏 18–24 词 | | scoring.recency | 越新越高 | 默认 1.0,一般不动 | | scoring.relevance | 主题命中权重 | 默认 0.5;想更"主题纯净"可提到 0.8–1.0 | | scoring.coverage | 跨源同题(多家报道)加权 | 默认 0.3;想突出"大事件"可提到 0.5 | | scoring.heat | 真实热度层权重 | 默认 0.4;关热度设 0.0,纯按新鲜度+主题 | | heat.baidu / heat.weibo | 国内大众热度 | 国内栏开;纯国际栏可关 | | heat.google_trends.geos | Google 趋势地区 | CN 已停服→用 US+HK;可加 JP/TW 等 | | heat.hn | Hacker News(技术向) | 仅 tech-ai 用;其他栏建议关(大众热度不匹配) | | lookback_days | 收录时间窗 | 3(快讯)~7(周观察) | | top_n / per_source | 每日条数 / 每源上限 | 一般 20 / 2 |
4. 增删栏目 / 换源 / 调检索 —— 全零代码
- 加栏目:复制一段
- key/name/...,填type: sources+ 自己的sources清单。 - 删栏目:删掉那段。
- 换源:在对应栏
sources:下加/删- name/url/feed/...项。 - 调检索词 / 评分:改
relevance_keywords/scoring。 - 爬虫自动生效:
build/_crawler/crawl_sources.py启动时读全部type: sources栏目,无需改脚本。
- 先 --dry-run 预览打分排名(不落库):python crawl_sources.py <key> --dry-run - 正式跑:python crawl_sources.py(或指定栏 python crawl_sources.py tech-ai)
5. 源站清单现状(首版 · 待你本机实抓复核)
- 当前七栏 sources 源站数:tech-ai 40、politics 17、economy 16、agri 15、culture-edu 15、military 14、gba 15。
- 你早前定调"每栏独立 40+ 源站"。首版先按"真实可达 + 国内/国际分置"落 14–17 个,确保能跑通;
未凑满 40 是刻意留的可扩展位,你在 Obsidian 里按上面第 4 节随手加即可。
- feed 用直链;中文站多无官方 RSS,统一走
rsshub.app镜像(与 tech-ai 既有用法一致)。
部分 rsshub 镜像可能不稳或失效——爬虫对失败源自动跳过、不中断;本机 launchd 实抓时再核哪些镜像可用,坏的换掉。
6. 与「每日洞察流」的关系
- 每栏每日爬出约 20 篇 article(落
01-observation/raw/YYYY/MM/)→ 平台 agent 重写摘要/翻译。 - agent 再写一期
digest-{栏key}-{日期}.md(今日洞察 + 20 条摘要链接),网站只显示洞察流,单篇仅从洞察内跳转。 - 全站统一此模式(中央新闻联播文字版 = news-lib 4910 篇除外,定位原文档案)。
7. 待办(部署侧,非本地配置)
- 若你的每日自动化仍在调用
crawl_hotnews.py(旧热搜爬虫),需改为crawl_sources.py
(它现在处理全部 7 个 sources 栏目;hotsearch 模式已整体弃用)。
- 跑完每栏后,平台侧可跑
build/extract_topics.py(默认全量,或--column <key>)补主题/实体结构化字段,
供后续跨文章关系边(T5)与主题时间线(T8)消费。
出向关系
- 无
入向关系
- 无