Wiki 日志折叠器
将 Obsidian wiki 日志批量汇总为可追溯的 Markdown 元页面。
技能明确默认 dry-run、不写入,commit 需用户明确确认;提交模式披露 Write/Edit 会触发自动提交,并提供锁、幂等检测、子页面不修改及三步撤销路径。扣分在于 --force 可覆盖既有折叠,自动提交仍产生外部仓库状态变化;未说明敏感数据处理、依赖完整性验证,且发布者身份未验证。
流程、参数、边界、自检和异常中止条件较完整,包含短批次、重复文件、缺页、锁冲突等反馈。扣分在于没有针对 wiki-fold 关键路径的专门测试或静态可复现证据,且依赖 Bash、grep、head、模板和 wiki-lock 等外部环境;静态评估不支持更高分。
触发语句、输入参数、默认值、输出模式和明确非目标均清楚,适合人工调用的 Obsidian wiki 日志折叠;功能本身不依赖海外在线服务。扣分在于未明确非 Unix 环境适配,也未提供中文交互或中文示例证据。
SKILL.md 结构清晰,具有渐进式说明、参数表、示例、范围边界、不变量、并发说明、模板引用和 MIT 许可上下文。扣分在于该技能自身没有明确维护负责人、更新路径、独立版本记录或变更日志;模板和 wiki-lock 语义依赖其他文件。
目标、输出文件命名、抽取约束、计数校验和 dry-run/commit 结果定义明确,理论上能直接生成可用的折叠页。扣分在于未提供该技能实际生成结果或关键路径验证,模板依赖和 LLM 抽取质量仍需人工审阅;静态评估按上限限制分数。
源文件提供了详细规则、模板、自检要求,并有仓库级 CI 与测试存在的证据。扣分在于所示测试主要覆盖其他脚本,未覆盖 wiki-fold 的解析、抽取、锁、重复检测或提交路径;没有第三方执行证据或独立交叉验证。
- commit 模式会通过 PostToolUse 自动提交 wiki、.raw 或 .vault-meta 相关变更,使用前应确认待提交范围并保留可回滚状态。
- --force 会覆盖同一 fold ID 的既有页面;应优先使用默认重复检测,并审查抽取结果和所有数字声明。
- 技能依赖 Bash/GNU 工具、references/fold-template.md、wiki-lock.sh 及正确的 vault 结构;当前材料没有证明这些依赖在目标环境中均可用。
- 发布者未通过 FollowSkills 企业注册表验证,身份应视为未知。
这个 Skill 能做什么,适合哪些场景?
wiki-fold 将 wiki/log.md 中的原始日志按批次折叠到 wiki/folds/ 下的元页面。它只做可追溯的摘录式总结,不修改、移动或删除子日志及其引用页面。默认使用 dry-run,仅向标准输出生成内容;确认后才可使用 commit 模式写入文件。该技能明确不支持折叠的折叠、自动触发或语义分块去重。
读取 wiki/log.md 中最近的 2^k 条日志,解析日期、操作、标题、页面位置和 wikilinks;按需读取最多 15 个被引用页面;生成由确定性 ID 命名的 wiki/folds/fold-k{K}-from-{DATE}-to-{DATE}-n{COUNT}.md;执行子条目、表格和数字声明的一致性检查;dry-run 时通过 Bash 标准输出内容,commit 模式使用写入/编辑工具更新折叠页、wiki/index.md 和 wiki/log.md,并配合 wiki-lock.sh 防止并发写入。
- 需要定期把 Obsidian 的原始工作日志压缩成可浏览的阶段性摘要的个人知识管理者。
- 希望保留每条日志来源、避免模型凭空综合的研究者或工程团队。
- 需要对固定数量日志执行可重复、结构幂等汇总的 Claude Code 用户。
- 在多个写入者可能同时操作 wiki 时,需要文件锁保护折叠页的用户。
这个 Skill 有哪些优点和局限?
- 默认无写入,适合先检查结果再提交。
- 折叠 ID 由批次和日期范围确定,能够防止同一范围重复写入。
- 强制摘录式总结,每项结果和主题都要求关联具体子条目。
- 支持 wiki-lock.sh 处理并发写入,且子页面保持不变。
- 只支持原始 wiki/log.md 的平面折叠,不支持折叠的折叠或层级堆叠。
- 不足 2^k 条日志时不会生成部分批次。
- 依赖 Bash、文件系统和仓库脚本;commit 模式还依赖仓库的 PostToolUse 自动提交行为。
- SKILL.md 没有展示 references/fold-template.md 的实际内容,因此无法从给定材料核验最终页面模板。
如何安装这个 Skill?
该技能没有单独安装步骤;它随 claude-obsidian 仓库的 15 个 Claude Code 技能一起提供。可执行:git clone https://github.com/AgriciDaniel/claude-obsidian && cd claude-obsidian && bash bin/setup-vault.sh,然后在该目录打开 Claude Code 并使用 /wiki 完成仓库设置。
如何使用这个 Skill?
默认先执行 dry-run,例如:"fold the log, dry-run k=3"。技能会读取最近 2^3 条日志;若数量不足会停止,若目标折叠文件已存在也会停止。确认 dry-run 通过后,再请求:"fold the log, commit k=3"。可用 range 指定范围、--force 覆盖已有折叠;commit 模式会写入折叠页、更新索引并追加日志记录。