mcpField
W
wiki-cli

wiki-cli

github.com/agricidaniel生産性15.9k296 回インストール6 日前に更新
リポジトリ

wiki-cli について

wiki-cli は Obsidian のナレッジベース向け読み取り専用トランスポートスキルです。公式 Obsidian CLI の利用可否を確認して読み取りと検索を行い、使えない場合はファイルシステムに切り替えます。

主な機能

  1. 01CLI の利用可否検出
  2. 02Obsidian CLI でのノート読み取り
  3. 03ナレッジベース内検索
  4. 04ファイルシステムと rg へのフォールバック
  5. 05ナレッジベース内へのパス制限

活用シーン

  1. 01読み取り前の CLI 利用確認
  2. 02選択したナレッジベースのノート読み取り
  3. 03CLI 利用時のコンテンツ検索
  4. 04ファイル読み取りと rg 検索への切り替え

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/agricidaniel/claude-obsidian --skill wiki-cli

インストール後、Claude Code で/wiki-cliを入力して読み込まれたか確認します。

詳細

Obsidian CLI 読み取りトランスポート

このスキルは、トランスポートを検出し、選択した vault を読み取るか検索する場合にのみ使用してください。 公式の実行ファイルは obsidian です。バイナリが存在するだけでは、使用可能とは判断できません。

vault や現在の作業ディレクトリではなく、このスキル自体の場所を基準に、インストールされた製品のルートを特定してください。

PRODUCT_ROOT=/absolute/path/to/installed/claude-obsidian
DETECT_TRANSPORT="$PRODUCT_ROOT/scripts/detect-transport.sh"
test -f "$DETECT_TRANSPORT"

このファイル内の ../wiki/references/ へのリンクはすべて、選択した vault の wiki/ ディレクトリを基準にするのではなく、$PRODUCT_ROOT 配下にあるこのスキル自体のディレクトリを基準に解決されます。

安全な検出

ホストの状態を永続化せずにプローブします。

bash "$DETECT_TRANSPORT" --peek --vault "$VAULT"

present や終了ステータスだけでなく、available.cli.usable を信頼してください。対応している CLI でも、Obsidian アプリが起動していない、コマンドラインアクセスが無効になっている、またはエラーが返されたために使用できない場合があります。移植可能な代替手段として、ファイルシステムから読み取ってください。

ユーザーまたはセットアップワークフローからトランスポートのスナップショットを要求された場合にのみ、更新した .vault-meta/transport.json を永続化してください。

bash "$DETECT_TRANSPORT" --force --vault "$VAULT"

このファイルは派生したランタイム設定であり、ナレッジコンテンツではありません。検出器によって記録された有効な manual_override は保持してください。

読み取りと検索

Obsidian が正しいワークスペースを解決できるよう、選択した vault から公式 CLI コマンドを実行してください。オプションのコマンドを利用する前に、インストール済み CLI で対応する構文を確認してください。一般的な読み取り専用形式は次のとおりです。

(cd "$VAULT" && obsidian read path="$NOTE")
(cd "$VAULT" && obsidian search query="$QUERY")

検出器が CLI の準備完了を報告した場合にのみ、バックリンク、タグ、または Bases の結果に読み取り専用コマンドを使用してください。それ以外の場合は、$VAULT 配下のファイルを直接読み取り、検索には rg を使用してください。絶対パスのノート引数、パストラバーサル、シンボリックリンク、または解決後のパスが選択した vault の外部にある場合は拒否してください。

変更の境界

CLI の作成、書き込み、追記、プロパティ設定、日次ノートへの追記、移動、名前変更、削除の各コマンドは使用しないでください。これらのコマンドを直接のファイルシステム書き込みで置き換えないでください。ナレッジまたは設定の変更は、移植可能なコアを通じたレビュー済みのトランザクションとして表現する必要があります。詳しくは操作トランザクションを参照してください。

トランスポートの選択によって、変更のセマンティクスが変わることはありません。CLI は任意の読み取り手段であり、ロックマネージャー、トランザクションエンジン、または Git チェックポイントの仕組みではありません。

チェックポイント

実際の機能を確認し、最も複雑でない読み取りトランスポートを検討し、解決されたすべてのパスが vault 内に留まることを検証してください。CLI の準備ができていない場合は、ファイルシステムへのフォールバックを受け入れてください。

コメント