npx skills add ...
npx skills add ar9av/obsidian-wiki --skill wiki-switch
npx skills add ar9av/obsidian-wiki --skill wiki-switch
Switch between multiple Obsidian wiki vault profiles. Use this skill when the user says "/wiki-switch NAME", "switch to my work wiki", "switch vault", "change wiki", "which wiki am I on", "list my wikis", "show my vaults", "create a new vault config", or "add a new wiki profile". The skill manages named config files at ~/.obsidian-wiki/config.NAME and activates one by symlinking it to ~/.obsidian-wiki/config.
Each vault is a complete config file at ~/.obsidian-wiki/config.<name>. The active vault is
whichever file ~/.obsidian-wiki/config symlinks to. Switching vaults means re-pointing that symlink.
Switch vs. inline targeting. /wiki-switch <name> changes your persistent default (re-points
the symlink, affecting all future requests). To touch a different vault for just one request without
changing your default, use the inline @name override in any request (e.g. @work save this,
wiki-query @personal about X). The @name override is handled by the Config Resolution Protocol
in llm-wiki/SKILL.md, not by this skill — it resolves ~/.obsidian-wiki/config.<name> for that one
invocation and never re-points the symlink.
Parse the invocation and route to the right section:
| Invocation | Action |
|---|---|
/wiki-switch <name> | → Switch |
/wiki-switch list | → List |
/wiki-switch show [name] | → Show |
/wiki-switch new <name> | → New |
/wiki-switch (no args) | → List (treat as list) |
@<name> … (inline, in any request) | → Not this skill — the Config Resolution Protocol resolves that vault for one invocation without re-pointing the symlink |
Activate a named vault profile.
~/.obsidian-wiki/config.<name> exists. If not, tell the user the vault doesn't exist and list what's available (run List).OBSIDIAN_VAULT_PATH from the newly active config.Show all registered vault profiles and which is active.
~/.obsidian-wiki/config.* (exclude config itself — that's the symlink).readlink ~/.obsidian-wiki/config#) as a human description of the vault. Fall back to the file's suffix as the label if no comment exists.← active. If the symlink is broken or config doesn't exist, show (none active).Print the full config for a vault.
~/.obsidian-wiki/config.<name>.~/.obsidian-wiki/config (the active vault).API_KEY or SECRET — show *** instead of the value).Scaffold a new vault config from the current active config as a template.
~/.obsidian-wiki/config.<name> doesn't already exist. Abort if it does.# --- Section name --- comment headers to group fields into sections (e.g., # --- Vault-specific ---, # --- Vault-independent ---, # --- Secrets ---). Use these sections to determine what to ask about:
~/.obsidian-wiki/config.<name>.# Obsidian Wiki — <name> vault).