关于 vault-setup
vault-setup 是用于配置个性化 Obsidian 仓库的交互式技能,可根据自由文本回答推断角色和文件夹,并提供创建、导入及验证工作流。
主要功能
- 01按角色选择文件夹
- 02创建和验证仓库
- 03文档导入工作流
- 04Obsidian 插件建议
- 05关联配套技能
适用场景
- 01设置新的 Obsidian 仓库
- 02导入现有文档
- 03检查仓库结构和链接
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ julianobarbosa/ claude-code-skills --skill vault-setup安装后在 Claude Code 中输入/vault-setup确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
PluginRecommendations.mdRoleTemplates.mdscripts/process_docs_to_obsidian.pyscore_skills.shtest_process_docs.pytest_vaultbuilder.pyTools/VaultBuilder.help.mdVaultBuilder.pyWorkflows/ImportFiles.mdSetup.mdVerify.md详细介绍
vault-setup-skill
交互式知识库配置器——只需回答一个自由文本问题,即可推断你的角色和文件夹,并创建个性化的 Obsidian 知识库,其中包含 CLAUDE.md 和配套技能链接。
目录结构
vault-setup-skill/
├── SKILL.md # This file (routing + quick ref)
├── RoleTemplates.md # Keyword-to-folder mapping table
├── PluginRecommendations.md # Obsidian plugins by role type
├── Workflows/
│ ├── Setup.md # Main 6-step setup flow
│ ├── ImportFiles.md # File import guidance
│ └── Verify.md # Post-setup verification
├── Tools/
│ ├── VaultBuilder.py # CLI: create, verify, inject-global
│ └── VaultBuilder.help.md # Tool documentation
└── scripts/
└── process_docs_to_obsidian.py # Bulk file import to inbox/
工作流路由
| 意图 | 工作流 | 工具 |
|---|---|---|
| 设置新知识库 | Workflows/Setup.md | Tools/VaultBuilder.py create |
| 导入现有文件 | Workflows/ImportFiles.md | scripts/process_docs_to_obsidian.py |
| 验证知识库设置 | Workflows/Verify.md | Tools/VaultBuilder.py verify |
| 将知识库添加到全局上下文 | Workflows/Setup.md Step 5 | Tools/VaultBuilder.py inject-global |
| 选择 Obsidian 插件 | PluginRecommendations.md | — |
| 了解文件夹映射 | RoleTemplates.md | — |
示例
"Set up my Obsidian vault" → Workflows/Setup.md
"I want to create a second brain" → Workflows/Setup.md
"Import my documents into the vault" → Workflows/ImportFiles.md
"Verify my vault is set up correctly" → Workflows/Verify.md
"What plugins should I install?" → PluginRecommendations.md
"Add this vault to my global config" → Workflows/Setup.md Step 5
快速参考
基础文件夹(始终创建):inbox/、daily/、projects/、archive/
根据关键词检测的其他文件夹——完整映射请参见 RoleTemplates.md。
配套技能(仅链接,不创建):daily-skill、tldr-skill、obsidian-master-skill
故障排除
| 问题 | 原因 | 解决方法 |
|---|---|---|
运行 VaultBuilder.py 时提示找不到 click | 缺少依赖项 | pip install click |
| 已创建知识库文件夹,但 Obsidian 看不到 | Obsidian 未指向知识库根目录 | 打开 Obsidian →“将文件夹作为知识库打开”→ 选择知识库目录 |
inject-global 提示“Already configured”,但 Claude 看不到上下文 | CLAUDE.md 中的知识库路径不完全匹配 | 检查 ~/.claude/CLAUDE.md 中的知识库路径——必须是解析后的绝对路径 |
验证时符号链接显示 [BROKEN] | 目标技能目录已移动或删除 | 重新创建符号链接:ln -sf /path/to/skill ~/.claude/skills/skill-name |
process_docs_to_obsidian.py 显示编码警告 | 源文件包含非 UTF-8 字符 | 手动检查有警告的文件;必要时使用 iconv 转换源文件编码 |
边缘情况
- 关键词为空:如果
--role-keywords为空,则只创建基础文件夹(inbox、daily、projects、archive) - 知识库路径不存在:VaultBuilder 会通过
mkdir -p自动创建 - 重复运行 create:安全——文件夹使用
exist_ok=True,CLAUDE.md 会被覆盖(如果有自定义内容,请先备份)
注意事项
inject-global会将绝对路径写入~/.claude/CLAUDE.md: 如果之后移动知识库,全局配置仍指向旧路径,Claude 会静默地不加载任何内容。移动知识库后,请重新运行inject-global。- 重新运行
create会覆盖自定义的 CLAUDE.md: 创建文件夹时使用exist_ok=True(安全),但 CLAUDE.md 会被无条件重写。如果你手动编辑过知识库级指令,请先备份。 process_docs_to_obsidian.py会静默跳过非 UTF-8 文件: Latin-1 或 Windows-1252 源文件会触发警告并且不会被导入。汇总报告不会将它们标记为失败——在确认数量前,请在 stderr 中搜索“encoding”。- PAI 目录结构调整会导致指向配套技能的符号链接失效: 只有在符号链接目标完全缺失时,验证结果才会显示
[BROKEN];如果目标已重命名但仍存在,链接看起来有效,却会指向错误的技能。PAI 技能重组后,请重新运行验证。 --role-keywords为空并不算错误: 知识库只会包含基础文件夹(inbox/daily/projects/archive),且不会显示警告。如果你原本期望创建角色专属文件夹,请检查设置记录中推断出的关键词。- 在“将文件夹作为知识库打开”之前,Obsidian 看不到知识库: 仅创建目录树还不够——必须明确让 Obsidian 指向知识库根目录。新用户常会以为脚本执行失败,因为 Obsidian 显示的是空工作区。
评论
支持 Markdown