wiki-digest

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Wiki Digest — Knowledge Newsletter Generator

Wiki Digest — 知识通讯生成工具

You are generating a human-readable digest of recent wiki activity: what was learned, what was updated, what themes are emerging, and what's worth reviewing. This skill summarizes knowledge, not sources — think of it as a weekly review session, not an ingestion status report.
你需要生成一份可读性强的Wiki近期动态摘要,内容包括新增知识、更新内容、涌现的主题以及值得回顾的内容。该技能聚焦于知识内容的总结,而非数据源——可以将其视为每周复盘会议,而非摄入状态报告。

Before You Start

开始之前

  1. Resolve config — follow the Config Resolution Protocol in
    llm-wiki/SKILL.md
    (walk up CWD for
    .env
    ~/.obsidian-wiki/config
    → prompt setup). This gives
    OBSIDIAN_VAULT_PATH
    and
    OBSIDIAN_LINK_FORMAT
    .
  2. Parse the period from the user's request:
    • "daily" / "today" / "yesterday" → last 24 hours
    • "weekly" / "this week" / no argument (default) → last 7 days
    • "monthly" / "this month" → last 30 days
    • ISO date like "since 2026-05-01" → pages updated since that date
    • Explicit number like "last 14 days" → that many days
  3. Read
    $OBSIDIAN_VAULT_PATH/log.md
    — last 200 lines — for entries within the period (timestamps are ISO-8601 prefixed lines).
  4. Read
    $OBSIDIAN_VAULT_PATH/hot.md
    for current session context.
  5. If
    $OBSIDIAN_VAULT_PATH/_insights.md
    exists, read its Anchor Pages table — you'll use it later to identify which new pages became hubs.
  1. 解析配置 — 遵循
    llm-wiki/SKILL.md
    中的配置解析协议(依次从当前工作目录的
    .env
    ~/.obsidian-wiki/config
    → 提示设置中查找)。这将获取
    OBSIDIAN_VAULT_PATH
    OBSIDIAN_LINK_FORMAT
  2. 解析用户请求中的时间段
    • "daily" / "today" / "yesterday" → 过去24小时
    • "weekly" / "this week" / 无参数(默认) → 过去7天
    • "monthly" / "this month" → 过去30天
    • ISO格式日期如"since 2026-05-01" → 该日期之后更新的页面
    • 明确数字如"last 14 days" → 指定天数
  3. 读取
    $OBSIDIAN_VAULT_PATH/log.md
    的最后200行,提取时间段内的条目(时间戳为ISO-8601格式开头的行)。
  4. 读取
    $OBSIDIAN_VAULT_PATH/hot.md
    获取当前会话上下文。
  5. 如果
    $OBSIDIAN_VAULT_PATH/_insights.md
    存在,读取其锚点页面表格——后续将用于识别哪些新页面成为了核心枢纽。

Step 1: Collect Pages Active in the Period

步骤1:收集时间段内活跃的页面

Glob all
.md
files under
$OBSIDIAN_VAULT_PATH
. Skip special/system files:
  • index.md
    ,
    log.md
    ,
    hot.md
    ,
    AGENTS.md
    ,
    _insights.md
  • Anything under
    _meta/
    ,
    _archives/
    ,
    _raw/
  • Journal digest pages themselves (
    journal/digest-*.md
    )
For each remaining page, read its frontmatter:
  • created
    — when the page was first written
  • updated
    — when it was last modified
Classify:
  • New pages:
    created
    is within the period
  • Updated pages:
    updated
    is within the period but
    created
    is before it
  • Unchanged: neither date falls in the period → skip
If fewer than 5 pages were active, note it and offer to widen: "Only 3 pages were active in the last 7 days — want a monthly digest instead?" Stop here unless the user says to continue.
For each active page, collect:
title
,
category
,
tags
,
summary
(frontmatter field),
lifecycle
, any
^[ambiguous]
or
^[inferred]
markers in the body.
遍历
$OBSIDIAN_VAULT_PATH
下所有
.md
文件,跳过特殊/系统文件:
  • index.md
    ,
    log.md
    ,
    hot.md
    ,
    AGENTS.md
    ,
    _insights.md
  • _meta/
    ,
    _archives/
    ,
    _raw/
    目录下的所有文件
  • 通讯摘要页面本身(
    journal/digest-*.md
对剩余每个页面,读取其前置元数据:
  • created
    — 页面首次创建时间
  • updated
    — 页面最后修改时间
分类:
  • 新页面
    created
    时间在时间段内
  • 更新页面
    updated
    时间在时间段内,但
    created
    时间早于该时间段
  • 未变更:两个时间均不在时间段内 → 跳过
如果活跃页面少于5个,需告知用户并建议扩大时间段:"过去7天内仅3个页面有活动——是否需要生成月度摘要?" 除非用户确认继续,否则停止操作。
对每个活跃页面,收集以下信息:
title
,
category
,
tags
,
summary
(前置元数据字段),
lifecycle
, 正文中所有
^[ambiguous]
^[inferred]
标记。

Step 2: Identify Themes

步骤2:识别主题

From all active pages' tags, tally theme frequency:
For each tag across new + updated pages:
  count how many active pages carry it
Sort descending, take top 5
Also read
$OBSIDIAN_VAULT_PATH/_meta/taxonomy.md
(if it exists). Flag any tag from step 1 that does not appear in the taxonomy — these are new vocabulary words that emerged this period.
Note which categories grew most (concepts/, entities/, skills/, synthesis/, references/, etc.).
统计所有活跃页面标签的出现频率:
遍历所有新页面和更新页面的标签:
  统计每个标签在活跃页面中的出现次数
按降序排序,取前5个标签
同时读取
$OBSIDIAN_VAULT_PATH/_meta/taxonomy.md
(如果存在)。标记步骤1中未出现在分类体系中的标签——这些是本时间段内新增的词汇。
记录增长最多的分类(如concepts/, entities/, skills/, synthesis/, references/等)。

Step 3: Find Notable New Connections

步骤3:发现重要的新关联

Scan new and updated pages for cross-category wikilinks — links that bridge different knowledge layers. These are the most intellectually interesting outputs of the period.
For each active page, extract all
[[wikilink]]
targets. Classify each link by the target's category prefix. Flag links that cross categories (e.g., a
concepts/
page linking to an
entities/
page, or a
synthesis/
page bridging two topics).
Rank candidates by interestingness:
  • +3 if the link is across two categories that rarely connect (use
    _insights.md
    bridge data if available)
  • +2 if the target page is a top-10 hub (per
    _insights.md
    anchors)
  • +2 if the link appears in a
    synthesis/
    page (deliberate cross-cutting)
  • +1 if the source page is marked
    ^[inferred]
    (synthesized connection, not directly stated)
Take the top 3–5 connections. Write each as a plain-English sentence: not just "A → B" but why the connection is interesting.
扫描新页面和更新页面中的跨分类Wiki链接——这些链接连接了不同的知识层级,是本时间段内最具价值的智力产出。
对每个活跃页面,提取所有
[[wikilink]]
目标。根据目标页面的分类前缀对链接进行分类。标记跨分类的链接(例如,
concepts/
页面链接到
entities/
页面,或
synthesis/
页面连接两个不同主题)。
按关联性价值排序候选链接:
  • +3分:链接连接了两个极少关联的分类(如果有
    _insights.md
    中的桥接数据则使用该数据)
  • +2分:目标页面是前10个核心枢纽(根据
    _insights.md
    中的锚点页面)
  • +2分:链接出现在
    synthesis/
    页面中(刻意的跨领域连接)
  • +1分:源页面标记有
    ^[inferred]
    (合成的关联,而非直接陈述)
选取前3-5个关联链接。用通俗易懂的句子描述每个链接:不仅要写"A → B",还要说明该关联为何有价值

Step 4: Surface Open Threads

步骤4:梳理未完成事项

Scan active pages and
_raw/
for unresolved work:
  • Drafts: pages with
    lifecycle: draft
    or
    lifecycle: stub
  • Ambiguous claims: count
    ^[ambiguous]
    markers across all active pages (don't list every one — just the count and which pages have the most)
  • Unstaged notes: count files in
    $OBSIDIAN_VAULT_PATH/_raw/
    (anything here hasn't been promoted)
  • Taxonomy gaps: tags from Step 2 that aren't in
    _meta/taxonomy.md
扫描活跃页面和
_raw/
目录中的未完成工作:
  • 草稿:标记
    lifecycle: draft
    lifecycle: stub
    的页面
  • 模糊声明:统计所有活跃页面中
    ^[ambiguous]
    标记的数量(无需列出每个标记,只需统计总数及标记最多的页面)
  • 未整理笔记:统计
    $OBSIDIAN_VAULT_PATH/_raw/
    目录中的文件数量(此处的文件尚未被整理入库)
  • 分类体系缺口:步骤2中未出现在
    _meta/taxonomy.md
    中的标签

Step 5: Choose Recommended Re-reads

步骤5:推荐值得重读的页面

From the existing (pre-period) pages, identify 2–3 worth revisiting given this week's new context.
Heuristic: find pre-period pages that share the most tags with the active pages from Step 1. These are foundational pages whose topic was extended this period — the new pages build on them but the user may not have revisited the foundation.
Also include any pre-period page that now has 2+ new incoming links from active pages (it just became more connected — a sign it's load-bearing).
Write each recommendation with a concrete reason: "[[concepts/attention-mechanism]] — your foundational page; three new papers ingested this week all extend it", not just the page title.
从时间段之前已存在的页面中,找出2-3个结合本周新内容值得重读的页面。
判断规则:找出与步骤1中活跃页面共享标签最多的历史页面。这些是基础页面,本周的新内容基于它们扩展,但用户可能尚未回顾这些基础内容。
同时,包含任何新增2条以上来自活跃页面的入链的历史页面(这类页面的关联性增强,已成为核心支撑页面)。
为每个推荐页面提供具体理由:"[[concepts/attention-mechanism]] — 你的基础页面;本周摄入的3篇新论文均基于该概念扩展",而非仅提供页面标题。

Step 6: Generate the Digest

步骤6:生成摘要

Produce a structured, scannable markdown report. The Headlines section is the most important — it should feel like the opening of a good newsletter, synthesizing actual insight rather than listing page names.
Apply the link format from
llm-wiki/SKILL.md
(Link Format section) using
OBSIDIAN_LINK_FORMAT
. Default is
[[wikilink]]
.
markdown
undefined
生成结构化、易于浏览的Markdown报告。其中“头条”部分最为重要——应像优质通讯的开篇一样,提炼实际洞见,而非仅罗列页面名称。
使用
llm-wiki/SKILL.md
(链接格式部分)中指定的链接格式,结合
OBSIDIAN_LINK_FORMAT
。默认格式为
[[wikilink]]
markdown
undefined

Wiki Digest — [Period Label]

Wiki Digest — [时间段标签]

[N new pages · M updated pages · period: YYYY-MM-DD to YYYY-MM-DD]
[N个新页面 · M个更新页面 · 时间段:YYYY-MM-DD 至 YYYY-MM-DD]

Headlines

头条

  • [Concrete insight #1 — synthesize the actual knowledge, not just "learned about X"]
  • [Concrete insight #2]
  • [Concrete insight #3]
  • [具体洞见1 — 提炼实际知识,而非仅说“学习了X”]
  • [具体洞见2]
  • [具体洞见3]

New Knowledge

新增知识

New pages ([count])

新页面 ([数量])

PageCategorySummary
[[concepts/foo]]conceptOne-sentence summary from frontmatter
[[entities/bar]]entityOne-sentence summary
页面分类摘要
[[concepts/foo]]concept来自前置元数据的一句话摘要
[[entities/bar]]entity一句话摘要

Notable updates ([count])

重要更新 ([数量])

PageWhat changed
[[skills/react-hooks]]Added patterns for useCallback with async effects
(If no updates, omit this subsection.)
页面更新内容
[[skills/react-hooks]]添加了useCallback结合异步副作用的模式
(若无更新内容,省略此小节。)

Emerging Themes

涌现主题

  • #[tag] ([N pages]) — [One sentence on why this topic was active]
  • #[tag] ([N pages]) — [...]
  • #[NEW TAG] ([N pages]) ⭐ New vocabulary — not yet in taxonomy
Most active category: [category/] ([N pages added or updated])
  • #[tag] ([N个页面]) — [一句话说明该主题活跃的原因]
  • #[tag] ([N个页面]) — [...]
  • #[NEW TAG] ([N个页面]) ⭐ 新增词汇 — 尚未加入分类体系
最活跃分类:[category/] ([N个页面被新增或更新])

Key Connections Made

建立的核心关联

  • [[concepts/A]] → [[entities/B]] — [Plain-English reason this connection is interesting]
  • [[synthesis/X]] created — bridges [[concepts/Y]] and [[concepts/Z]] for the first time
  • (up to 5 connections)
  • [[concepts/A]] → [[entities/B]] — [通俗易懂的语言说明该关联为何有价值]
  • [[synthesis/X]] 已创建 — 首次连接[[concepts/Y]]和[[concepts/Z]]
  • (最多列出5个关联)

Open Threads

未完成事项

  • Drafts to compile ([count]): [[concepts/foo]], [[concepts/bar]] — still in draft lifecycle
  • Ambiguous claims: [N]
    ^[ambiguous]
    markers across [M] pages — run
    /wiki-synthesize
    to resolve
  • Unstaged notes: [N] files in
    _raw/
    — run
    /wiki-ingest _raw/
    to promote them
  • Taxonomy gaps: Tags
    #newtag1
    ,
    #newtag2
    used but not in taxonomy — run
    /tag-taxonomy
(Omit any subsection where count is 0.)
  • 待整理草稿 ([数量]):[[concepts/foo]]、[[concepts/bar]] — 仍处于草稿阶段
  • 模糊声明:[N]个
    ^[ambiguous]
    标记分布在[M]个页面中 — 运行
    /wiki-synthesize
    来解决
  • 未整理笔记:[N]个文件在
    _raw/
    目录中 — 运行
    /wiki-ingest _raw/
    来整理入库
  • 分类体系缺口:使用了标签
    #newtag1
    #newtag2
    但未加入分类体系 — 运行
    /tag-taxonomy
(若某小节数量为0,省略该小节。)

Recommended Re-reads

推荐重读页面

  • [[concepts/X]] — [Specific reason: "3 new papers this week all extend this concept"]
  • [[synthesis/Y]] — [Specific reason: "2 new pages created this week reference it"]
  • [[skills/Z]] — [Specific reason: "now has 4 new incoming links — it's become a hub"]

Generated by wiki-digest · [TIMESTAMP] · [N pages scanned in [VAULT_PATH]]

**Visibility**: If a page is tagged `visibility/pii`, exclude it from all tables and connection lists (but count it in the totals, noted as "+ N private"). If the user explicitly says "include private pages" or "full digest", include them normally.
  • [[concepts/X]] — [具体理由:“本周3篇新论文均引用了该页面中的同一观点”]
  • [[synthesis/Y]] — [具体理由:“本周新增的2个页面均引用了该页面”]
  • [[skills/Z]] — [具体理由:“新增了4条入链 — 已成为核心枢纽页面”]

由wiki-digest生成 · [时间戳] · [在[VAULT_PATH]中扫描了N个页面]

**可见性规则**:如果页面标记了`visibility/pii`,则将其从所有表格和关联列表中排除(但仍计入总数,并标注为“+ N个私有页面”)。如果用户明确要求“包含私有页面”或“完整摘要”,则正常显示这些页面。

Step 7: Output & Optionally Save

步骤7:输出并可选保存

Default (chat output): Print the digest directly. At the end, ask: "Want me to save this as
journal/digest-YYYY-MM-DD.md
?"
If user prefixed with "save" or "write" (e.g.,
/wiki-digest save
or "generate and save my weekly digest"):
  • Write to
    $OBSIDIAN_VAULT_PATH/journal/digest-YYYY-MM-DD.md
    (weekly/monthly) or
    journal/digest-YYYY-MM-DD-daily.md
    (daily)
  • Add frontmatter:
    yaml
    ---
    title: "Wiki Digest — [Period Label]"
    category: journal
    tags: [digest, meta/review]
    sources: []
    created: TIMESTAMP
    updated: TIMESTAMP
    summary: "Weekly knowledge digest: [N new, M updated pages]. Top themes: [tag1], [tag2]."
    ---
  • Update
    index.md
    with the new entry under Journal
  • Do not add to
    .manifest.json
    (digests aren't source ingestions)
Either way, append to
log.md
:
- [TIMESTAMP] DIGEST period="7d" new_pages=N updated_pages=M themes=T connections=C saved=false
默认(聊天输出):直接打印摘要。在末尾询问: “是否需要将此摘要保存为
journal/digest-YYYY-MM-DD.md
?”
如果用户前缀包含“save”或“write”(例如:
/wiki-digest save
或“生成并保存我的每周摘要”):
  • 将内容写入
    $OBSIDIAN_VAULT_PATH/journal/digest-YYYY-MM-DD.md
    (周/月度)或
    journal/digest-YYYY-MM-DD-daily.md
    (日度)
  • 添加前置元数据:
    yaml
    ---
    title: "Wiki Digest — [时间段标签]"
    category: journal
    tags: [digest, meta/review]
    sources: []
    created: TIMESTAMP
    updated: TIMESTAMP
    summary: "每周知识摘要:[N个新页面,M个更新页面]。核心主题:[tag1]、[tag2]。"
    ---
  • index.md
    的Journal部分添加新条目
  • 不要添加到
    .manifest.json
    (摘要不属于数据源摄入内容)
无论哪种方式,都需向
log.md
追加内容:
- [TIMESTAMP] DIGEST period="7d" new_pages=N updated_pages=M themes=T connections=C saved=false

Edge Cases

边缘情况处理

SituationHandling
Fewer than 5 active pagesOffer to widen the period; proceed only if user confirms
Empty vault (no pages at all)Tell the user to run an ingest first; stop
No
_meta/taxonomy.md
Skip taxonomy gap check; omit that line from Open Threads
No
_insights.md
Skip hub-based scoring in Step 3; still produce connections section
All pages are
visibility/pii
Report "N private pages active this period" with no details; offer full mode
Period spans a wiki rebuildNote it in the digest: "Wiki was rebuilt during this period — page dates reflect post-rebuild state"
场景处理方式
活跃页面少于5个建议扩大时间段;仅在用户确认后继续
空知识库(无任何页面)告知用户先运行摄入操作;停止处理
_meta/taxonomy.md
跳过分类体系缺口检查;在未完成事项中省略该条目
_insights.md
跳过步骤3中基于核心枢纽的评分;仍需生成关联部分
所有页面均标记
visibility/pii
报告“本时间段内有N个私有页面活跃”,不显示详情;提供完整模式选项
时间段包含Wiki重建在摘要中注明:“本时间段内Wiki进行了重建——页面日期反映重建后的状态”

Notes

注意事项

  • Headlines are the payoff. Don't list page titles — synthesize the actual learning. If someone learned about attention mechanisms this week, the headline should capture the insight, not just say "added 3 transformer pages".
  • Be concrete about re-reads. "This page is relevant" is useless. "3 of this week's papers all cite the same claim in this page" is actionable.
  • This skill only reads. The only writes are the optional journal page, and the
    log.md
    append. It does not modify existing wiki pages.
  • Don't duplicate wiki-status. If the user asks "what needs ingesting" or "what's the delta", route to
    wiki-status
    . This skill answers "what did I learn", not "what's pending".
  • 头条是核心价值。不要罗列页面标题——要提炼实际学习内容。如果用户本周学习了注意力机制,头条应捕捉具体洞见,而非仅说“添加了3个Transformer页面”。
  • 重读推荐要具体。“该页面相关”毫无用处。“本周3篇论文均引用了该页面中的同一观点”才具有可操作性。
  • 该技能仅读取数据。仅有的写入操作是可选的通讯页面保存和
    log.md
    追加。不会修改现有Wiki页面。
  • 不要重复wiki-status的功能。如果用户询问“需要摄入什么”或“增量内容”,请引导至
    wiki-status
    。该技能回答“我学到了什么”,而非“待处理内容有什么”。