Obsidian Skills: что внутри и как поставить
Коротко
Obsidian Skills — набор из пяти Agent Skills от Steph Ango (kepano), CEO Obsidian. Это не плагин для самого Obsidian: устанавливается он не в приложение, а в ИИ-агента и объясняет ему, как не ломать форматы хранилища при редактировании заметок. Лицензия MIT, репозиторий kepano/obsidian-skills — 43,5 тыс. звёзд и 3,1 тыс. форков по данным GitHub API на 28 июля 2026.
Внутри пять скиллов: obsidian-markdown (wikilinks, embeds, callouts, properties), obsidian-bases (файлы .base — фильтры, формулы, представления), json-canvas (файлы .canvas), obsidian-cli (управление запущенным Obsidian из терминала), defuddle (чистый markdown из веб-страницы вместо мусорного HTML).
Скиллы написаны по спецификации Agent Skills, поэтому ставятся в любой совместимый агент. Claude Code — через маркетплейс плагинов или npx skills add. Codex — копированием папки skills/ в ~/.codex/skills. opencode — клонированием всего репозитория в ~/.opencode/skills/obsidian-skills и перезапуском.
Два скилла требуют внешних зависимостей: obsidian-cli работает только с Obsidian 1.12.7+ при включённом CLI и запущенном приложении, defuddle — при глобально установленном npm-пакете. Остальные три работают сразу после установки.
В чём задача
Проблема, которую закрывает этот набор, звучит одинаково у всех, кто пускал агента в своё хранилище: агент пишет валидный markdown — и абсолютно неправильный Obsidian.
Типичные симптомы. Вместо [[Заметка]] появляется [Заметка](Заметка.md) — ссылка формально рабочая, но Obsidian перестаёт вести её при переименовании файла и не показывает в графе. Вместо > [!warning] пишется обычная цитата с эмодзи. Frontmatter оформляется как попало: теги строкой через запятую вместо списка, даты в произвольном формате. .base-файл агент сочиняет по аналогии с чем-то виденным раньше — и Obsidian показывает YAML-ошибку. .canvas получается синтаксически валидным JSON, в котором рёбра ссылаются на несуществующие узлы.
Обычный агент не знает всего этого не потому, что глупый, а потому, что Obsidian Flavored Markdown — надстройка над CommonMark и GFM, описанная в справке Obsidian, а не в его весах. Скиллы и есть способ донести до агента эту надстройку без раздувания CLAUDE.md на тысячу строк: метаданные скилла (name + description, примерно 100 токенов) висят в контексте всегда, а полное тело подгружается только когда агент реально взялся за .base-файл. Механику загрузки мы разбирали в гайде по Claude Skills — здесь она работает ровно так же.
Отдельный смысл: это официальный набор от CEO продукта, а не реверс-инжиниринг стороннего энтузиаста. Синтаксис в нём совпадает с тем, что реально ест парсер.
Что внутри: разбор пяти скиллов
| Скилл | Что даёт агенту | Зависимости | Размер SKILL.md |
|---|---|---|---|
obsidian-markdown |
Wikilinks, block ID (^id), embeds ![[...]], callouts, типы properties. Отдельные справочники по CALLOUTS, EMBEDS, PROPERTIES подгружаются по требованию |
нет | 5,4 КБ + 3 файла references |
obsidian-bases |
Схема .base: filters, formulas, properties, summaries, виды table/cards/list/map. Плюс справочник функций |
нет | 13 КБ + 7,5 КБ функций |
json-canvas |
JSON Canvas Spec 1.0: узлы, рёбра, группы, генерация 16-символьных hex-id, проверка ссылок | нет | 7,6 КБ + примеры |
obsidian-cli |
Команды obsidian create/read/search/tasks/daily, адресация file= и path=, работа с несколькими хранилищами, отладка плагинов и тем |
Obsidian 1.12.7+, CLI включён, приложение запущено | 3,2 КБ |
defuddle |
defuddle parse <url> --md вместо WebFetch: со страницы срезаются навигация и реклама, экономятся токены |
npm install -g defuddle |
1,1 КБ |
Размеры взяты из дерева репозитория (ветка main, последний коммит 8 июня 2026). Они полезны для оценки: obsidian-bases — самый тяжёлый скилл набора, и при активации он съест заметный кусок контекста. Если Bases вы не используете, этот скилл спокойно удаляется, остальные от этого не сломаются.
Про сами Bases и то, зачем они нужны, есть отдельный разбор Obsidian Bases — скилл экономит время именно тем, кто уже строит на них дашборды.
Пошагово: установка в свой агент
Сначала определитесь, куда ставить: скиллы можно положить в конкретное хранилище (тогда они видны только в нём) или глобально в домашнюю директорию агента (видны везде). Для второго мозга правильнее первое — агент не будет предлагать wikilinks в рабочем репозитории с кодом.
Claude Code, через маркетплейс. Самый короткий путь, две команды в сессии:
/plugin marketplace add kepano/obsidian-skills
/plugin install obsidian@obsidian-skills
Через npx skills. Работает независимо от агента и удобен, когда нужен именно локальный, привязанный к папке набор. Запускается из корня хранилища:
npx skills add https://github.com/kepano/obsidian-skills
В README первым идёт SSH-вариант (git@github.com:...); HTTPS-строка выше — официальная альтернатива из того же README, и из России она обычно проходит там, где SSH к GitHub закрыт.
Claude Code, вручную. Содержимое репозитория кладётся в папку .claude в корне хранилища. Имя каталога должно быть именно .claude — с точкой; это самая частая причина «скиллы не подхватились». Ориентир — официальная документация по Agent Skills.
Codex. Копируется только внутренняя папка skills/ в путь скиллов Codex, обычно ~/.codex/skills:
git clone https://github.com/kepano/obsidian-skills.git /tmp/obs-skills
cp -r /tmp/obs-skills/skills/* ~/.codex/skills/
opencode. Здесь наоборот — клонируется весь репозиторий целиком:
git clone https://github.com/kepano/obsidian-skills.git ~/.opencode/skills/obsidian-skills
README прямо предупреждает: не копируйте только внутреннюю папку skills/. Итоговая структура должна быть ~/.opencode/skills/obsidian-skills/skills/<имя-скилла>/SKILL.md. opencode сам находит все SKILL.md под ~/.opencode/skills/, править opencode.json не нужно, но перезапустить приложение обязательно.
Включение Obsidian CLI (нужно только для пятого скилла). По официальной справке: обновиться до 1.12.7 или новее, открыть Settings → General, включить опцию Command line interface, пройти регистрацию CLI по подсказкам и перезапустить терминал, чтобы подхватился PATH. Подписка не требуется. Проверка — obsidian help.
Проверка результата
Установка прошла, если выполняются три вещи.
Первое: агент видит скиллы в списке. В Claude Code — /plugin покажет установленный плагин; в opencode и Codex список скиллов виден после рестарта.
Второе — рабочая проверка, она честнее любого списка. Попросите агента: «создай в хранилище заметку с двумя ссылками на существующие заметки и callout-предупреждением». Правильный результат — [[Имя заметки]] и блок, начинающийся с > [!warning]. Если пришли markdown-ссылки вида [Имя](Имя.md) — скилл не активировался.
Третье: obsidian --version и defuddle --help в терминале отвечают, если вы рассчитываете на эти два скилла.
Не подхватилось — проверяйте в таком порядке: имя каталога (.claude, .codex, .opencode — с точкой), уровень вложенности (для opencode структура должна быть двухуровневой), рестарт агента, и только потом всё остальное.
Подводные камни
Скиллы срабатывают не всегда. Агент решает подгружать скилл по полю description. Формулировка «поправь тут форматирование» может не попасть ни в одно описание — и агент отработает по-старому. Лечится явным упоминанием: «используй obsidian-markdown». Это не баг набора, это устройство механизма Agent Skills.
Obsidian CLI требует запущенного приложения. Скилл obsidian-cli управляет живым экземпляром Obsidian, а не файлами на диске. Закрытое приложение — команды не работают. На сервере без GUI этот скилл бесполезен, оставшиеся четыре — вполне рабочие, они оперируют обычными файлами.
Версия 1.12.7 отсекает часть пользователей. Если Obsidian у вас старее или стоит из репозитория дистрибутива с задержкой обновлений, сначала обновление — иначе пункта Command line interface в настройках просто не будет.
Bases съедают контекст. 13 КБ самого скилла плюс 7,5 КБ справочника функций — заметная доля окна. При работе с длинной сессией и большим хранилищем это ощущается.
Приватность. Второй мозг — обычно самое личное, что есть на диске: рабочие проекты, финансы, медицинские заметки, черновики. Агент отправляет содержимое читаемых файлов в облако провайдера модели. Если в хранилище лежат персональные данные третьих лиц, к ним применимы требования 152-ФЗ, и трансграничная передача через американского провайдера — это то, что нужно оценить до, а не после. Практический минимум: держать чувствительные папки вне рабочей директории агента и не запускать его из корня хранилища «на всякий случай».
Агент пишет в ваши заметки. Обязательный шаг — git внутри хранилища или включённая история версий Obsidian Sync. Без отката один неудачный массовый рефакторинг тегов разбирается вручную неделю. Остальные скиллы из нашей подборки лучших скиллов Claude Code требуют того же.
Набор не наводит порядок сам. Он учит агента синтаксису — и только. Структуру хранилища, конвенцию именования и систему тегов вы придумываете сами, скилл их не подскажет. Карточка obsidian-skills в арсенале держит краткую версию этого списка в актуальном состоянии.
Частые вопросы
Это плагин для Obsidian?
Нет, и это главная путаница. В самом Obsidian ничего не появится: ни новых команд, ни панели, ни пункта в настройках. Скиллы ставятся в ИИ-агента и меняют поведение агента. Единственная точка, где вы трогаете сам Obsidian, — включение CLI в Settings → General, и то только ради одного скилла из пяти.
Работает ли с Codex и opencode или только с Claude Code?
Работает со всеми тремя: набор написан по спецификации Agent Skills, а не под конкретный продукт. Разница только в путях установки — ~/.codex/skills для Codex, ~/.opencode/skills/ для opencode, .claude в корне проекта для Claude Code. Логика скиллов при этом одна и та же.
Сколько стоит?
Ноль. Репозиторий открыт под MIT — можно использовать в личных и коммерческих проектах, форкать и править. Платите вы только за токены своего агента, и здесь defuddle даже экономит: чистый markdown вместо сырого HTML на длинных статьях заметно короче.
Можно поставить не все пять скиллов?
Да. Скиллы независимы, каждый — отдельная папка с SKILL.md. Удалите каталог obsidian-bases, если не пользуетесь Bases, или obsidian-cli, если работаете с файлами напрямую. Ничего не сломается: перекрёстных зависимостей между ними нет, а контекст освободится.
Агент всё равно ставит обычные markdown-ссылки. Что делать?
Три причины по частоте. Скилл не установился — проверьте имя каталога и рестарт агента. Скилл установился, но не активировался — назовите его в запросе явно. Либо агент правит файл вне хранилища: скилл рассчитан на работу внутри vault, и в произвольной папке с .md он про wikilinks не вспомнит.