wiki-switch
Skill3 starsChanged 11 days agoMITView on GitHub
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 ~/.llm-wiki/config.NAME and activates one by symlinking it to ~/.llm-wiki/config.
- Reads credentials
1 other project uses a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- Ar9av/obsidian-wikiedited, first seen Nov 8, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 1
- Ar9av/obsidian-wiki★ 3.7k74% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository30 other files it gives its agents.
- claude-history-ingestSkill
- cross-linkerSkill
- daily-updateSkill
- graph-colorizeSkill
- hermes-history-ingestSkill
- impl-validatorSkill
- llm-wikiSkill
- memory-bridgeSkill
- skill-creatorSkill
- tag-taxonomySkill
- vault-skill-factorySkill
- wiki-agentSkill
- wiki-captureSkill
- wiki-context-packSkill
- wiki-dashboardSkill
- wiki-dedupSkill
- wiki-digestSkill
- wiki-exportSkill
- wiki-history-ingestSkill
- wiki-importSkill
- wiki-ingestSkill
- wiki-lintSkill
- wiki-querySkill
- wiki-rebuildSkill
- wiki-researchSkill
- wiki-setupSkill
- wiki-stage-commitSkill
- wiki-statusSkill
- wiki-synthesizeSkill
- wiki-updateSkill
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 4 are distinctive, and 8 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 42
Verify ~/.llm-wiki/config.<name> exists.
- Very specific: line 47
Read OBSIDIAN_VAULT_PATH from the newly active config.
- Very specific: line 77
If a name is given, read ~/.llm-wiki/config.<name>.
- Very specific: line 78
If no name given, read ~/.llm-wiki/config (the active vault).
- Distinctive: line 79
If the file doesn't exist, tell the user and list what's available.
- Very specific: line 88
Check ~/.llm-wiki/config.<name> doesn't already exist.
- Very specific: line 93
Read the copied config. Config files use # --- Section name --- comment headers to group fields into sections (e.g., # --- Vault-specific …
- Distinctive: line 97
If there are no section headers, present all fields and let the user decide which to change
- Distinctive: line 98
Ask the user for updated values for the vault-specific fields.
- Very specific: line 99
Write the updated values into ~/.llm-wiki/config.<name>.
- Very specific: line 100
Update the top comment line to describe the new vault (e.g., # Obsidian Wiki — <name> vault).
- Distinctive: line 106
Do not switch automatically — let the user decide when to activate.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Wiki Switch — Manage Multiple Vault Profiles
Each vault is a complete config file at ~/.llm-wiki/config.<name>. The active vault is
whichever file ~/.llm-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 ~/.llm-wiki/config.<name> for that one
invocation and never re-points the symlink.
Dispatch
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 |
Switch (default action)
Activate a named vault profile.
- Verify
~/.llm-wiki/config.<name>exists. If not, tell the user the vault doesn't exist and list what's available (run List). - Run:
ln -sf ~/.llm-wiki/config.<name> ~/.llm-wiki/config - Read
OBSIDIAN_VAULT_PATHfrom the newly active config. - Confirm to the user:
Switched to vault: <name> Vault path: <value of OBSIDIAN_VAULT_PATH from the config>
List
Show all registered vault profiles and which is active.
- Find all files matching
~/.llm-wiki/config.*(excludeconfigitself — that's the symlink). - Resolve the current symlink target:
readlink ~/.llm-wiki/config - For each config file, read the first non-empty comment line (lines starting with
#) as a human description of the vault. Fall back to the file's suffix as the label if no comment exists. - Display:
Mark the active one withVaults: personal My personal research wiki ← active work Work projects wiki← active. If the symlink is broken orconfigdoesn't exist, show(none active).
Show
Print the full config for a vault.
- If a name is given, read
~/.llm-wiki/config.<name>. - If no name given, read
~/.llm-wiki/config(the active vault). - If the file doesn't exist, tell the user and list what's available.
- Print the file contents verbatim (redact any lines containing
API_KEYorSECRET— show***instead of the value).
New
Scaffold a new vault config from the current active config as a template.
- Check
~/.llm-wiki/config.<name>doesn't already exist. Abort if it does. - Copy the active config:
cp ~/.llm-wiki/config ~/.llm-wiki/config.<name> - Read the copied config. Config files use
# --- 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:- Fields in sections labeled "vault-specific", "paths", or similar → ask the user for new values
- Fields in sections labeled "vault-independent", "global", "shared" → keep as-is (copy over unchanged)
- Fields in sections labeled "secrets" → ask if the new vault uses the same credentials or different ones
- If there are no section headers, present all fields and let the user decide which to change
- Ask the user for updated values for the vault-specific fields. Use the current values as visible defaults — the user only needs to supply what differs.
- Write the updated values into
~/.llm-wiki/config.<name>. - Update the top comment line to describe the new vault (e.g.,
# Obsidian Wiki — <name> vault). - Confirm:
Do not switch automatically — let the user decide when to activate.Created: ~/.llm-wiki/config.<name> Run `/wiki-switch <name>` to activate it, then run `wiki-setup` to initialise the new vault.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

