用途:该技能用于解释、起草与校验 Obsidian Bases 的 .base 文件(YAML),围绕筛选、公式、属性、汇总和表格/卡片/列表视图展开,适合回答 Bases 语法与设计问题,或在用户请求下编辑 .base。
主要能力:支持常见顶层键 filters、formulas、properties、summaries、views。筛选支持 and/or/not 递归嵌套;属性可用笔记属性、file 元数据(file.name、file.path、file.folder、file.ext、file.ctime、file.mtime、file.tags)及 formula.<name>;视图可指定 order 与显示名。
使用方式:需先定位已安装产品根目录,而非仓库或当前工作目录: PRODUCT_ROOT=/absolute/path/to/installed/claude-obsidian CORE="$PRODUCT_ROOT/scripts/claude-obsidian.py" test -f "$CORE" 文件内 ../wiki/references/ 链接均相对该技能自身目录解析。流程为先检查代表性笔记属性与已有 .base 文件,定义最小筛选,仅对需要计算的值添加公式,选择视图,校验 YAML、引号、属性名、公式引用与空值处理,变更前预览完整文件与预期结果。若请求编辑,保持 .base 位于 wiki/ 下,构建单个 claude-obsidian.transaction.v1 事务包(operation_type: base),审查后仅将 APPROVAL_SHA256 设为返回的 approval_sha256 并应用一次: python3 "$CORE" transaction inspect "$BUNDLE" --vault "$VAULT" python3 "$CORE" transaction apply "$BUNDLE" --vault "$VAULT" --approved-plan-sha256 "$APPROVAL_SHA256"
限制:回答设计/语法问题须只读,不得直接写文件;公式须先定义后引用;日期相减为毫秒数,需除以 86400000 再取整;含运算符、冒号或嵌套引号的表达式需加引号;空值需用 if() 保护;不要把 Dataview 专用键(如 from、where)移植到 Base;不要虚构笔记中不存在的属性而不说明列会为空;不应假定视图类型或选项受用户 Obsidian 版本或插件支持;无法本地验证时应请用户在 Obsidian 中渲染;应用编辑后报告操作 ID、变更路径、已做校验和仍需渲染的内容,且不要提交 Git。