obsidian について
ファイルツールで Obsidian の保管庫を扱うエージェント向けのスキルです。ノートの読み取り、検索、作成、編集に加え、Wikiリンクの追加にも対応します。
主な機能
- 01Markdown ノートの読み取りと一覧表示
- 02ファイル名とノート内容の検索
- 03ファイルツールでのノート作成と編集
- 04Obsidian Wikiリンクの追加
- 05操作前の保管庫パス解決
活用シーン
- 01ファイル名や内容からノートを検索
- 02関連リンク付きノートの作成
- 03既存ノートへのセクション追加
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nousresearch/ hermes-agent --skill obsidianインストール後、Claude Code で/obsidianを入力して読み込まれたか確認します。
詳細
Obsidian Vault
Obsidian vault をファイルシステム中心に操作する場合にこのスキルを使用します。ノートの読み取り、一覧表示、ノートファイルの検索、ノートの作成、コンテンツの追記、wikilink の追加に使用します。
Vault のパス
ファイルツールを呼び出す前に、既知または解決済みの vault パスを使用してください。
ドキュメントに記載されている vault パスの規約では、${HERMES_HOME:-~/.hermes}/.env などにある OBSIDIAN_VAULT_PATH 環境変数を使用します。設定されていない場合は、~/Documents/Obsidian Vault を使用してください。
ファイルツールはシェル変数を展開しません。read_file、write_file、patch、search_files に $OBSIDIAN_VAULT_PATH を含むパスを渡さないでください。先に vault パスを解決し、具体的な絶対パスを渡してください。vault パスにスペースが含まれる場合もあるため、シェルコマンドよりファイルツールを使用することをお勧めします。
vault パスが不明な場合は、terminal を使って OBSIDIAN_VAULT_PATH を解決したり、フォールバックパスが存在するか確認したりしてもかまいません。パスが判明したら、ファイルツールに戻してください。
ノートの読み取り
解決済みのノートの絶対パスを指定して read_file を使用してください。行番号とページネーションが表示されるため、cat よりこちらを優先してください。
ノートの一覧表示
解決済みの vault パスを指定し、target: "files" で search_files を使用してください。find や ls よりこちらを優先してください。
- すべての Markdown ノートを一覧表示するには、vault パスの下で
pattern: "*.md"を使用します。 - サブフォルダーを一覧表示するには、そのサブフォルダーの絶対パスを検索対象にします。
検索
ファイル名とコンテンツの両方の検索に search_files を使用してください。grep、find、ls よりこちらを優先してください。
- ファイル名を検索するには、
target: "files"とファイル名のpatternを指定してsearch_filesを使用します。 - ノートの内容を検索するには、
target: "content"とコンテンツの正規表現をpatternに指定してsearch_filesを使用します。Markdown ノートに限定する場合は、file_glob: "*.md"を指定します。
ノートの作成
解決済みの絶対パスと Markdown コンテンツ全体を指定して write_file を使用してください。シェルのヒアドキュメントや echo よりこちらを優先してください。シェルのクォートに関する問題を避けられ、構造化された結果が返されます。
ノートへの追記
無理のない場合は、ネイティブのファイルツールを使ったワークフローを優先してください。
read_fileで対象のノートを読み取ります。- 既存の見出しの後にセクションを追加する場合や、末尾の既知のブロックの前に追記する場合など、安定したコンテキストがあるときは、アンカー付きの追記に
patchを使用します。 - 脆弱なパッチを組み立てるよりノート全体を書き直す方が明確な場合は、
write_fileを使用します。
patch でアンカー付きの追記を行う場合は、アンカーをアンカーと新しいコンテンツの組み合わせに置き換えます。
安定したコンテキストがない単純な追記では、最も明確で安全な方法であれば terminal を使用してもかまいません。
対象を絞った編集
現在のコンテンツに安定したコンテキストがある場合は、ノートの対象を絞った変更に patch を使用してください。シェルによるテキスト書き換えよりこちらを優先してください。
Wikilink
Obsidian では [[Note Name]] 構文でノートにリンクします。ノートを作成する際は、関連するコンテンツへのリンクにこれを使用してください。