Obsidian CLI Knowledge Transport
Use Obsidian CLI to read, write, search, and maintain a Markdown vault.
The skill limits declared tools to Read and Bash and describes the CLI, filesystem, and MCP transport relationship. However, it permits direct writes, overwrites, and appends to vault content without per-operation confirmation, built-in rollback, or conflict recovery, while Bash remains broad, so points are deducted.
The detection script has a CI JSON-parse smoke check, and the document provides CLI and filesystem fallback paths. However, the key CLI recipes lack skill-specific end-to-end tests, and abnormal input, CLI syntax variation, and failure diagnostics are thin; therefore the score remains low.
Triggers, desktop CLI use, mobile, headless, cross-vault, and unavailable-Obsidian boundaries are reasonably explicit. Input constraints, output contracts, semantic false-trigger boundaries, and Chinese-user environment evidence are limited, so points are deducted. Core operation does not depend on an overseas online service.
The skill is well layered across detection, decision guidance, recipes, limitations, and cross-references; the repository supplies an MIT license, version information, CI, and a security policy. The skill itself lacks a parameter contract, FAQ, changelog, explicit maintenance owner, and update path, while some dependencies are documented elsewhere, so points are deducted.
It gives directly usable examples for reading, writing, appending, searching, daily notes, properties, backlinks, and Bases, with a filesystem fallback. But command compatibility and actual results are not verified by this skill, and users or agents must still handle paths, permissions, and failures, so the static score stays below the cap.
The repository contains CI, a transport-detection smoke check, and several tests, but the supplied tests mainly cover other scripts and shared infrastructure. Most CLI recipes, fallback behavior, and result correctness are not tested, so evidence is only limited and static.
- Before any write, overwrite, or property mutation, confirm the target vault, path, and overwrite policy; the skill has no built-in rollback.
- Verify the installed Obsidian CLI command syntax, version, and vault-argument conventions; the recipes lack end-to-end evidence.
- The filesystem fallback may bypass Obsidian consistency semantics; use caution during saves or multi-process writes and verify that locking is actually invoked.
- Optional installation from the kepano marketplace depends on GitHub; users with mainland-China network or organization-access limits should not treat it as a required dependency.
What does this skill do, and when should you use it?
wiki-cli is the default vault transport skill for claude-obsidian v1.7+, prioritizing the CLI shipped with Obsidian 1.12+. It lets Claude read, create, overwrite, append, search, and modify Obsidian notes, including daily notes, backlinks, tags, bookmarks, and resolved Bases views. When the CLI is unavailable, it falls back to direct filesystem operations. It fits desktop Obsidian users who want local Markdown workflows without MCP configuration, but is limited for mobile, headless, and cross-vault work.
At session start or vault setup, it runs bash scripts/detect-transport.sh and records CLI and filesystem availability in .vault-meta/transport.json. Later operations read that snapshot and select the preferred transport and fallback chain. CLI recipes cover reading, writing, appending, searching, setting frontmatter properties, listing backlinks, tags, and bookmarks, retrieving today's daily note, and opening a resolved Bases view. If the CLI is unavailable, Claude's Read, Write, and Edit tools or ripgrep operate on vault files directly.
- A desktop Obsidian user wants Claude to maintain a personal knowledge base through a local command-line interface.
- A user needs to batch-read, search, or append vault content without installing a Local REST API plugin or configuring MCP.
- A workflow needs daily-note updates, frontmatter property changes, or backlink lookups while Obsidian CLI is available.
- A mobile, CI, or headless user needs a filesystem fallback when the desktop-only CLI cannot run.
What are this skill's strengths and limitations?
- Uses the Obsidian CLI without requiring a Local REST API plugin, API key, or TLS workaround.
- Provides recipes for notes, search, properties, daily notes, backlinks, tags, bookmarks, and Bases views.
- Falls back to direct filesystem operations when the CLI is missing.
- Persists transport decisions in transport.json and supports a manual override.
- The CLI requires desktop Obsidian and is unavailable on mobile and headless servers.
- Cross-vault work is a poor fit for the CLI and requires filesystem traversal instead.
- The SKILL.md provides no standalone wiki-cli test results or independent release information.
- MCP requires separate configuration and is treated as an optional fallback or deferred detection tier.
How do you install this skill?
The skill is distributed with the 15 skills in AgriciDaniel/claude-obsidian. Run: git clone https://github.com/AgriciDaniel/claude-obsidian; cd claude-obsidian; bash bin/setup-vault.sh. Open the folder as an Obsidian vault, then use Claude Code in the same folder. The source does not document a standalone wiki-cli installation.
How do you use this skill?
Run bash scripts/detect-transport.sh at vault setup or session start. It writes .vault-meta/transport.json; run bash scripts/detect-transport.sh --force after installing or removing the CLI. Example operations include obsidian-cli read "$VAULT" "$NOTE", obsidian-cli search "$VAULT" "<query>", obsidian-cli append "$VAULT" "$NOTE", and obsidian-cli backlinks "$VAULT" "$NOTE". Before a non-trivial read or write, inspect transport.json and follow its preferred transport and fallback chain.
How does this skill compare with similar options?
Compared with MCP, Obsidian CLI avoids a Local REST API plugin, API keys, and TLS workarounds, while using direct subprocess calls instead of HTTP round trips; it does require Obsidian to be installed. Compared with direct filesystem access, it uses Obsidian's search ranking and exposes daily notes, backlinks, tags, bookmarks, and resolved Bases views; filesystem access remains the fallback.