wiki-narrate

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Wiki Narrate — Cited Narrative Readouts

Wiki Narrate — 带引用的叙事输出

Use this skill only for a topic-based Markdown readout. Do not add tag or page-list selection, prior-query input, voice aliases, HTML, PDF, slides, renderer handoffs, or new compiled knowledge pages.
此技能仅用于生成基于主题的Markdown输出。请勿添加标签或页面列表选择、历史查询输入、语音别名、HTML、PDF、幻灯片、渲染器移交或新的编译知识页面。

Command Contract

命令约定

/wiki-narrate <topic> [--voice briefing|plain-language|lecturer] [--save]
  • Require a non-empty
    <topic>
    .
  • The default voice is
    briefing
    .
  • Voice names are canonical and case-sensitive. Unsupported values must return an error listing
    briefing
    ,
    plain-language
    , and
    lecturer
    without searching or writing.
  • --save
    is the only persistence switch.
  • For a missing topic, malformed option, or unsupported voice, return a short usage or validation error and do not search, write, append a log event, or change
    hot.md
    .
/wiki-narrate <topic> [--voice briefing|plain-language|lecturer] [--save]
  • 要求
    <topic>
    不能为空。
  • 默认语音模式为
    briefing
  • 语音模式名称为规范名称且区分大小写。若传入不支持的值,需返回错误信息,列出支持的
    briefing
    plain-language
    lecturer
    ,且不执行搜索或写入操作。
  • --save
    是唯一的持久化开关。
  • 若主题缺失、选项格式错误或语音模式不支持,返回简短的使用说明或验证错误,且不执行搜索、写入、追加日志事件或修改
    hot.md

Retrieval

检索规则

  1. Resolve configuration with the Config Resolution Protocol, including an inline
    @name
    vault override, then read the target vault's
    AGENTS.md
    when it exists. Load
    OBSIDIAN_LINK_FORMAT
    before drafting citations.
  2. Read
    hot.md
    and
    index.md
    first. Select candidates by frontmatter and summary before reading bodies.
  3. When configured, use QMD before
    rg
    ; if QMD is absent, unconfigured, or fails, continue with the index and
    rg
    path. Treat QMD output as candidate guidance, not evidence: establish each claim from the allowed vault page itself.
  4. Honor filtered-mode phrases such as "public only", "user-facing", "no internal content", "as a user would see it", and "exclude internal". Skip pages tagged
    visibility/internal
    or
    visibility/pii
    in that mode: never read, cite, or expose them.
  5. Exclude
    _readouts/
    ,
    _raw/
    ,
    _archives/
    ,
    _meta/
    ,
    index.md
    ,
    log.md
    ,
    hot.md
    , and
    _insights.md
    from candidates.
  6. Read matching sections before full pages, and read full pages only when a factual claim cannot otherwise be established. Preserve relevant lifecycle and freshness annotations; do not upgrade a page's trust.
  1. 通过配置解析协议解析配置,包括内联的
    @name
    库覆盖项,然后读取目标库中的
    AGENTS.md
    (如果存在)。在起草引用前加载
    OBSIDIAN_LINK_FORMAT
    配置。
  2. 优先读取
    hot.md
    index.md
    。先通过前置元数据和摘要筛选候选页面,再读取页面内容。
  3. 若已配置,优先使用QMD;若QMD不存在、未配置或调用失败,则继续使用索引和
    rg
    路径。将QMD输出视为候选页面的参考指引,而非直接证据:每个主张必须从允许的库页面本身获取依据。
  4. 遵守过滤模式短语,如“仅公开内容”“面向用户”“无内部内容”“以用户视角呈现”“排除内部内容”。在此模式下,跳过标记为
    visibility/internal
    visibility/pii
    的页面:绝不读取、引用或暴露这些页面。
  5. 排除以下路径和文件作为候选:
    _readouts/
    _raw/
    _archives/
    _meta/
    index.md
    log.md
    hot.md
    _insights.md
  6. 优先读取匹配的章节,仅当无法通过章节内容确认事实主张时才读取完整页面。保留相关的生命周期和新鲜度注释;不得提升页面的可信度。

Claim Ledger and Citation Audit

主张台账与引用审核

Draft a ledger before prose. Each item contains a claim, supporting
[[vault page]]
links, and one status: supported fact, inferred connection, or ambiguous conflict. When
OBSIDIAN_LINK_FORMAT=markdown
, render the same supporting page as a standard Markdown link; otherwise use the vault's
[[wikilink]]
form.
Ensure every factual sentence has adjacent supporting citations. Mark inferred connections
^[inferred]
; mark unresolved conflicts
^[ambiguous]
. Never use web knowledge, model memory, or invented examples to close a gap. Omit unsupported claims and name the gap in Coverage. An inference or ambiguity marker supplements, rather than replaces, adjacent citations.
在撰写正文前先起草主张台账。每个条目包含主张内容、支持性
[[vault page]]
链接,以及一种状态:已证实事实、推断关联或模糊冲突。当
OBSIDIAN_LINK_FORMAT=markdown
时,将支持页面渲染为标准Markdown链接;否则使用库的
[[wikilink]]
格式。
确保每个事实性句子都附带相邻的支持引用。将推断关联标记为
^[inferred]
;将未解决的冲突标记为
^[ambiguous]
。绝不能使用网络知识、模型记忆或虚构示例填补信息空白。省略无依据的主张,并在“覆盖范围”部分说明信息缺口。推断或模糊标记是对相邻引用的补充,而非替代。

Drafting and Output

起草与输出

Read
references/voices.md
and use exactly the requested voice skeleton. The selected voice may change prose and ordering, but cannot change the ledger's factual boundary. Return Markdown only, structured as:
  1. A title naming the topic and selected voice.
  2. The selected voice's sections, in its documented order.
  3. Adjacent citations for each factual sentence, rendered with
    OBSIDIAN_LINK_FORMAT
    .
  4. A
    ## Coverage
    footer listing cited pages, the count of inferred statements, and known evidence gaps.
If evidence is weak or contradictory, produce only the supported portion. Mark each unresolved conflict
^[ambiguous]
with citations to all conflicting pages, and list the remaining gaps in
## Coverage
.
读取
references/voices.md
并严格使用请求的语音模式框架。所选语音模式可调整正文措辞和内容顺序,但不得突破主张台账的事实边界。仅返回Markdown格式内容,结构如下:
  1. 包含主题和所选语音模式的标题。
  2. 所选语音模式的章节,按其文档规定的顺序排列。
  3. 每个事实性句子附带的相邻引用,按照
    OBSIDIAN_LINK_FORMAT
    渲染。
  4. ## 覆盖范围
    页脚,列出引用的页面、推断语句的数量,以及已知的证据缺口。
若证据不足或存在矛盾,仅生成已证实的内容部分。对每个未解决的冲突标记
^[ambiguous]
并引用所有冲突页面,在
## 覆盖范围
中明确列出剩余的信息缺口。

Persistence

持久化规则

Present the result by default. For
--save
, create
_readouts/
if necessary and write
_readouts/<slug>.md
with
title
,
topic
,
voice
,
sources
,
created
, and
updated
frontmatter. Use a deterministic, filesystem-safe
<slug>
derived from the topic. Save the same completed Markdown readout that was returned in conversation.
A readout is derived output: exclude
_readouts/
from retrieval and must not update
index.md
or
.manifest.json
. Do not create
_readouts/
or a readout file without a successful
--save
result.
默认情况下仅展示结果。若使用
--save
参数,必要时创建
_readouts/
目录,并将内容写入
_readouts/<slug>.md
,同时添加
title
topic
voice
sources
created
updated
前置元数据。使用基于主题生成的确定性、文件系统安全的
<slug>
。保存的内容需与对话中返回的完整Markdown输出一致。
输出内容属于衍生产物:检索时需排除
_readouts/
目录,且不得更新
index.md
.manifest.json
。仅当
--save
操作成功时,才可创建
_readouts/
目录或输出文件。

Logging and Hot Cache

日志与热缓存

After a narration attempt that reaches retrieval, append one
WIKI_NARRATE
event to
log.md
:
- [TIMESTAMP] WIKI_NARRATE topic="<topic>" voice=<voice> result_pages=N mode=normal|filtered saved=true|false outcome=success|no_match|write_failed
  • Without
    --save
    , append the event with
    saved=false
    after returning the readout; do not create a readout or change
    hot.md
    .
  • After a successful
    --save
    write, append the event with
    saved=true
    , then refresh
    hot.md
    with the topic, voice, cited pages, inference count, evidence gaps, and saved readout path.
    hot.md
    changes only after a successful save.
  • If the readout write fails after drafting, return the completed readout in conversation, report that saving failed, append a
    WIKI_NARRATE
    event with
    saved=false outcome=write_failed
    when
    log.md
    remains writable, and do not update
    hot.md
    .
  • If appending
    log.md
    fails, preserve the readout result and report the logging failure separately. Never represent a failed log or save as successful.
当检索步骤完成后,向
log.md
追加一条
WIKI_NARRATE
事件:
- [TIMESTAMP] WIKI_NARRATE topic="<topic>" voice=<voice> result_pages=N mode=normal|filtered saved=true|false outcome=success|no_match|write_failed
  • 若未使用
    --save
    ,返回输出内容后追加
    saved=false
    的事件;不得创建输出文件或修改
    hot.md
  • --save
    写入成功,追加
    saved=true
    的事件,然后更新
    hot.md
    ,添加主题、语音模式、引用页面、推断语句数量、证据缺口和保存的输出文件路径。仅在保存成功后才可修改
    hot.md
  • 若起草完成后写入输出文件失败,仍需在对话中返回完整的输出内容,告知保存失败;若
    log.md
    可写入,追加
    saved=false outcome=write_failed
    WIKI_NARRATE
    事件;不得更新
    hot.md
  • 若追加
    log.md
    失败,需保留输出结果并单独告知日志记录失败。绝不能将日志或保存失败的情况伪装成成功。

Safe Failure Behavior

安全失败处理

  • No matching pages: explain that the vault lacks material for the topic. Create no readout file even if
    --save
    was requested, do not change
    hot.md
    , and record a
    WIKI_NARRATE
    event with
    outcome=no_match
    when
    log.md
    is writable.
  • Weak evidence or source conflict: do not resolve it with outside knowledge. Return only supported claims, label ambiguity where applicable, and make the gap explicit in
    ## Coverage
    ; saving remains available for that successful partial readout.
  • QMD unavailable or unconfigured: state the fallback briefly in the working update and continue safely through
    index.md
    and
    rg
    ; do not fail the narration merely because QMD is unavailable.
  • Write failure: never leave a partial readout presented as saved, never update
    hot.md
    , and never update
    index.md
    or
    .manifest.json
    .
  • 无匹配页面: 说明库中缺少该主题的相关资料。即使请求了
    --save
    ,也不得创建输出文件,不得修改
    hot.md
    ;若
    log.md
    可写入,记录
    outcome=no_match
    WIKI_NARRATE
    事件。
  • 证据不足或来源冲突: 不得使用外部知识解决冲突。仅返回已证实的主张,在适用处标记模糊性,并在
    ## 覆盖范围
    中明确信息缺口;该部分成功生成的输出仍可执行保存操作。
  • QMD不可用或未配置: 在处理更新中简要说明回退方案,然后通过
    index.md
    rg
    继续安全执行;不得仅因QMD不可用而终止生成。
  • 写入失败: 绝不能将部分输出内容伪装成已保存状态,不得更新
    hot.md
    ,也不得更新
    index.md
    .manifest.json