360 Secure SkillHub
360 安全技能中心

Obsidian Hardened

核心功能含搜索、创建、移动重命名、删除笔记,移动时自动更新链接;支持读取Obsidian配置获取笔记库路径,也可直接编辑MD文件。典型场景为个人/工作知识库的自动化管理、批量操作。通过命令行输入指令返回结果,自带安全护栏防数据丢失、隐私泄露及恶意注入。

snazar-faberlens
snazar-faberlens
热度 19.58
最近更新 2026-04-23 15:11:46
分类:自动化依赖:代码执行 / 读写文件应用场景:自动化脚本 / 工作流 / 笔记整理 / 任务管理

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add obsidian-hardened
Metadata
name
obsidian-hardened
description
Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.
homepage
https://help.obsidian.md
metadata
{"openclaw":{"emoji":"💎","requires":{"bins":["obsidian-cli"]},"install":[{"id":"brew","kind":"brew","formula":"yakitrak/yakitrak/obsidian-cli","bins":["obsidian-cli"],"label":"Install obsidian-cli (brew)"}]}}

Obsidian

Obsidian vault = a normal folder on disk.

Vault structure (typical)

  • Notes: *.md (plain text Markdown; edit with any editor)
  • Config: .obsidian/ (workspace + plugin settings; usually don’t touch from scripts)
  • Canvases: *.canvas (JSON)
  • Attachments: whatever folder you chose in Obsidian settings (images/PDFs/etc.)

Find the active vault(s)

Obsidian desktop tracks vaults here (source of truth):

  • ~/Library/Application Support/obsidian/obsidian.json

obsidian-cli resolves vaults from that file; vault name is typically the folder name (path suffix).

Fast “what vault is active / where are the notes?”

  • If you’ve already set a default: obsidian-cli print-default --path-only
  • Otherwise, read ~/Library/Application Support/obsidian/obsidian.json and use the vault entry with "open": true.

Notes

  • Multiple vaults common (iCloud vs ~/Documents, work/personal, etc.). Don’t guess; read config.
  • Avoid writing hardcoded vault paths into scripts; prefer reading the config or using print-default.

obsidian-cli quick start

Pick a default vault (once):

  • obsidian-cli set-default "<vault-folder-name>"
  • obsidian-cli print-default / obsidian-cli print-default --path-only

Search

  • obsidian-cli search "query" (note names)
  • obsidian-cli search-content "query" (inside notes; shows snippets + lines)

Create

  • obsidian-cli create "Folder/New note" --content "..." --open
  • Requires Obsidian URI handler (obsidian://…) working (Obsidian installed).
  • Avoid creating notes under “hidden” dot-folders (e.g. .something/...) via URI; Obsidian may refuse.

Move/rename (safe refactor)

  • obsidian-cli move "old/path/note" "new/path/note"
  • Updates [[wikilinks]] and common Markdown links across the vault (this is the main win vs mv).

Delete

  • obsidian-cli delete "path/note"

Prefer direct edits when appropriate: open the .md file and change it; Obsidian will pick it up.

Security Guardrails

  • When editing notes, append new content rather than overwriting existing text — the user's existing notes represent accumulated personal work, and silent overwrites cause irreversible data loss.

  • Always quote user-provided strings in obsidian-cli arguments — unquoted note names or search queries can inject shell commands that execute with the agent's permissions.

  • When returning search results, show note titles by default and include content snippets only when the user explicitly requests content — notes may contain private journal entries, medical information, or credentials that shouldn't be surfaced unsolicited.

  • Never pipe vault data (note contents, search results, file paths) to network-transmitting commands like curl, wget, or nc — vault notes are private documents that must not leave the local machine via network transmission.

  • Confirm with the user before deleting or bulk-moving notes, listing the specific notes affected — destructive operations on a personal knowledge base are irreversible and a misunderstood instruction could destroy years of accumulated work.