通过 Local REST API 插件从 WSL 或远程环境操作 Obsidian。
初次设置
首次使用时,自动检测并保存配置:
检查 TOOLS.md 中是否存在 OBSIDIAN_API_URL 和 OBSIDIAN_API_KEY
如果不存在:
获取 Windows 主机 IP: cat /etc/resolv.conf | grep nameserver | awk '{print $2}'
询问用户 API 密钥
保存到 TOOLS.md:
Obsidian REST API (WSL → Windows)
API 端点: https://<检测到的 IP>:27124
API 密钥: <用户提供的密钥>
使用保存的配置测试连接
配置格式
保存在 TOOLS.md 中:
Obsidian REST API (WSL → Windows)
API 端点: https://:27124
API 密钥: <您的 API 密钥>
快速开始
# 从 TOOLS.md 中获取 URL 和 KEY
URL=$(grep 'API 端点' ~/.openclaw/workspace/TOOLS.md | awk -F': ' '{print $2}')
KEY=$(grep 'API 密钥' ~/.openclaw/workspace/TOOLS.md | awk -F': ' '{print $2}')
# 测试连接
curl -k -H "Authorization: Bearer $KEY" "$URL/"
# 列出 vault 文件
curl -k -H "Authorization: Bearer $KEY" "$URL/vault/"
# 创建笔记
curl -k -X PUT -H "Authorization: Bearer $KEY" -H "Content-Type: text/markdown" \
-d "# 标题\n内容" "$URL/vault/note.md"
常见任务
创建/更新笔记
curl -k -X PUT -H "Authorization: Bearer $KEY" -H "Content-Type: text/markdown" \
--data "<内容>" "$URL/vault/<文件名>.md"
追加到笔记
curl -k -X POST -H "Authorization: Bearer $KEY" -H "Content-Type: text/markdown" \
--data "<要追加的内容>" "$URL/vault/<文件名>.md"
获取每日笔记
curl -k -H "Authorization: Bearer $KEY" "$URL/periodic/daily/"
# 或特定日期:
curl -k -H "Authorization: Bearer $KEY" "$URL/periodic/daily/2026/05/11/"
搜索笔记
# 简单文本搜索
curl -k -X POST -H "Authorization: Bearer $KEY" \
"$URL/search/simple/?query=关键词"
# 高级搜索(Dataview 风格)
curl -k -X POST -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"query":"tag:#work"}' "$URL/search/"
获取活动文件
curl -k -H "Authorization: Bearer $KEY" "$URL/active/"
在 UI 中打开文件
curl -k -X POST -H "Authorization: Bearer $KEY" "$URL/open/note.md"
执行命令
# 列出可用命令
curl -k -H "Authorization: Bearer $KEY" "$URL/commands/"
# 执行命令
curl -k -X POST -H "Authorization: Bearer $KEY" "$URL/commands/daily-notes"
获取所有标签
curl -k -H "Authorization: Bearer $KEY" "$URL/tags/"
API 参考
请参阅 references/api.md 以获取完整的端点文档。
故障排除
连接被拒绝:Windows 防火墙阻止端口。
# PowerShell(管理员)
New-NetFirewallRule -DisplayName "Obsidian REST API" -Direction Inbound -LocalPort 27124 -Protocol TCP -Action Allow
SSL 错误:使用 -k 标志(自签名证书)。
vault 未找到:确保 vault 在 Obsidian 中已打开。
Windows 设置
在 Obsidian 中安装 Local REST API 插件
在插件设置中启用“绑定到所有接口”
在 Windows 防火墙中允许端口
生成 API 密钥