К основному содержанию
скилл CX Codex

wiki-switch — скилл для Claude Code: профили хранилищ Obsidian

Переключает именованные профили хранилищ Obsidian, показывает активный и создаёт новые. Нужен, когда проектов несколько и надо менять хранилище по умолчанию.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Ar9av/obsidian-wiki --skill wiki-switch -a claude-code
Открыть на GitHub

Что делает wiki-switch

Скилл работает с глобальной папкой конфигов $XDG_CONFIG_HOME/obsidian-wiki (по умолчанию ~/.config/obsidian-wiki), а если на диске уже есть старая ~/.obsidian-wiki, берётся она. Каждое хранилище — это отдельный файл config.<name>, а активное определяется тем, на какой файл указывает симлинк config. Переключение — это переустановка симлинка, поэтому смена действует на все последующие запросы.

Команда /wiki-switch <name> проверяет, что файл профиля существует, переводит симлинк и читает OBSIDIAN_VAULT_PATH из нового конфига, чтобы показать путь. /wiki-switch list выводит все профили и помечает активный, /wiki-switch show печатает конфиг целиком, а /wiki-switch new <name> копирует текущий конфиг как шаблон и спрашивает значения для полей, зависящих от хранилища. Секреты при показе заменяются на ***.

Если нужно заглянуть в другое хранилище разово, симлинк трогать не надо: инлайн-переопределение @name в любом запросе разрешает config.<name> только для этого вызова. Обрабатывает его не этот скилл, а Config Resolution Protocol из llm-wiki/SKILL.md. Новый профиль после создания не активируется сам — сначала запустите /wiki-switch <name>, потом wiki-setup для инициализации.

Какие задачи решает

  • переключить активное хранилище Obsidian на другой профиль
  • посмотреть, какие профили хранилищ заведены и какой из них активен
  • создать новый профиль хранилища на основе текущего конфига
  • вывести конфиг хранилища, не показывая значения ключей и секретов
  • обратиться к другому хранилищу в одном запросе, не меняя значение по умолчанию

Примеры запросов агенту

  • /wiki-switch work
  • /wiki-switch list
  • /wiki-switch new personal

Как установить wiki-switch

1Через Skills CLI (Vercel)

npx skills add Ar9av/obsidian-wiki --skill wiki-switch -a claude-code

2Вручную: положить файлы

~/.claude/skills/wiki-switch/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/wiki-switch/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о wiki-switch

Как установить wiki-switch в Claude?

Выполните npx skills add Ar9av/obsidian-wiki --skill wiki-switch -a claude-code. Скилл встанет в ~/.claude/skills/wiki-switch/SKILL.md.

Что делает wiki-switch?

Перечисляет, создаёт и переключает именованные профили хранилищ Obsidian в глобальной папке конфигов. Активное хранилище задаётся симлинком config.

Чем переключение отличается от @name?

/wiki-switch <name> меняет постоянное хранилище по умолчанию и переводит симлинк. Инлайн-@name в запросе подставляет config.<name> только на один вызов и симлинк не трогает.

Исходный текст

SKILL.md · MIT
---
name: wiki-switch
description: >
  List, create, or switch named Obsidian wiki vault profiles under the global config directory. Use when changing the active vault, checking which vault is active, or managing multi-vault profiles.
---

# Wiki Switch — Manage Multiple Vault Profiles

**Global config dir.** Every path below is relative to the global config dir, resolved per the
Config Resolution Protocol in `llm-wiki/SKILL.md`: `$XDG_CONFIG_HOME/obsidian-wiki` (default
`~/.config/obsidian-wiki`), or the legacy `~/.obsidian-wiki` if that already exists on disk. Resolve
it once per invocation with:

```bash
CONFIG_DIR="$( [[ -d "$HOME/.obsidian-wiki" && ! -e "${XDG_CONFIG_HOME:-$HOME/.config}/obsidian-wiki" ]] && echo "$HOME/.obsidian-wiki" || echo "${XDG_CONFIG_HOME:-$HOME/.config}/obsidian-wiki" )"
```

Each vault is a complete config file at `$CONFIG_DIR/config.<name>`. The active vault is
whichever file `$CONFIG_DIR/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 `$CONFIG_DIR/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.

1. Verify `$CONFIG_DIR/config.<name>` exists. If not, tell the user the vault doesn't exist and list what's available (run **List**).
2. Run:
   ```bash
   ln -sf "$CONFIG_DIR/config.<name>" "$CONFIG_DIR/config"
   ```
3. Read `OBSIDIAN_VAULT_PATH` from the newly active config.
4. 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.

1. Find all files matching `$CONFIG_DIR/config.*` (exclude `config` itself — that's the symlink).
2. Resolve the current symlink target: `readlink "$CONFIG_DIR/config"`
3. 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.
4. Display:
   ```
   Vaults:
     personal   My personal research wiki    ← active
     work       Work projects wiki
   ```
   Mark the active one with `← active`. If the symlink is broken or `config` doesn't exist, show `(none active)`.

---

## Show

Print the full config for a vault.

- If a name is given, read `$CONFIG_DIR/config.<name>`.
- If no name given, read `$CONFIG_DIR/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_KEY` or `SECRET` — show `***` instead of the value).

---

## New

Scaffold a new vault config from the current active config as a template.

1. Check `$CONFIG_DIR/config.<name>` doesn't already exist. Abort if it does.
2. Copy the active config:
   ```bash
   cp "$CONFIG_DIR/config" "$CONFIG_DIR/config.<name>"
   ```
3. 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
4. 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.
5. Write the updated values into `$CONFIG_DIR/config.<name>`.
6. Update the top comment line to describe the new vault (e.g., `# Obsidian Wiki — <name> vault`).
7. Confirm:
   ```
   Created: $CONFIG_DIR/config.<name>
   Run `/wiki-switch <name>` to activate it, then run `wiki-setup` to initialise the new vault.
   ```
   Do not switch automatically — let the user decide when to activate.

© Ar9av · MIT · Ar9av/obsidian-wiki

Похожие скиллы

Все скиллы по теме «Настройка агента: память, контекст, субагенты» →
wiki AgriciDaniel Инициализирует и подключает отдельное хранилище Obsidian, а также маршрутизирует задачи между специализированными вики-скиллами. Пригодится для ведения базы знаний прямо из агента. CX Codex +1 539установок wiki-query AgriciDaniel Отвечает на вопрос по выбранному хранилищу Obsidian и не меняет в нём ни одного файла. Полезен, когда источником доказательств назначена сама вики. CX Codex +1 462установок obsidian-canvas-creator axtonliu Скилл собирает из текста файл JSON Canvas, который Obsidian открывает как доску: узлы, связи, группы. Раскладка на выбор — радиальная карта или свободная схема. CX Codex +1 2 000установок second-brain coreyhaines31 Скилл превращает папку с заметками в вики: складывает источники в raw/, компилирует их в связанные страницы и отвечает на вопросы по ним. CX Codex +1 355установок obsidian-source-ingestion Galaxy-Dawn Скилл складывает внешние материалы в проектную базу Obsidian как заметки-источники: статьи, веб-страницы, данные, интервью. Пригодится, когда источники надо не пересказывать, а хранить по полкам. CX Codex +1 320установок vault-optimizer davila7 Субагент Claude для оптимизации хранилища Obsidian: находит тяжёлые файлы, разбирается с вложениями и ускоряет поиск. 727установок

Из того же набора38

hermes-history-ingest Собирает знания из памяти и истории Hermes в Obsidian. Нужен для регулярного импорта сессий и поиска устойчивых выводов. CX Codex +1 2 400установок daily-update Скилл обновляет Obsidian-вики: проверяет свежесть источников, синхронизирует индекс и hot.md, а также настраивает ежедневный запуск. CX Codex +1 2 300установок openclaw-history-ingest Переносит знания из истории OpenClaw в Obsidian, выделяя решения, контекст проектов и повторяющиеся приёмы. Пригодится для разбора сессий и файлов памяти. CX Codex +1 2 200установок impl-validator Независимо проверяет, совпадает ли сделанная работа с заявленной целью, и возвращает PASS, WARN или FAIL со списком проблем. CX Codex +1 2 200установок wiki-digest Собирает читаемый отчёт о том, что вы узнали и обновили в вики за день, неделю или месяц. Пригодится для регулярного разбора заметок. CX Codex +1 2 100установок copilot-history-ingest Разбирает прошлые сессии GitHub Copilot и складывает выжимку в Obsidian-вики. Пригодится, когда нужно вернуть решения из старых чатов. CX Codex +1 1 800установок wiki-dedup Находит и объединяет заметки в Obsidian-хранилище, описывающие одну сущность под разными именами. Помогает навести порядок в базе знаний. CX Codex +1 1 700установок wiki-context-pack Вырезает фрагмент заметок из хранилища Obsidian под лимит токенов с цитатами. Пригодится, когда нужно передать агенту точечный контекст по теме без чтения всей базы. CX Codex +1 1 600установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой