автодобавление в wiki-news

как пользоваться /wiki-news SKILL для claude

руководство по испоьлзованию

Руководство пользователя: wiki-news

Что это

Личный глобальный инструмент — публикует новости об изменениях на wiki (wiki.sociometer.ru, книга «История обновлений»). Установлен один раз на этой машине, работает из любого проекта, не привязан к конкретному репозиторию.

1. Обычный способ — попросить в чате

Из любого проекта (frontV3, APPV3 или другого) — просто:

«Опубликуй новость про [фичу] в wiki»

Claude сам соберёт данные об изменениях, покажет черновик текста на согласование и опубликует после вашего «ок». Ниже — что происходит под капотом и как вызвать вручную.

2. Куда публикуется — определяется автоматически

Wiki устроена так: книга «История обновлений», внутри неё — глава на каждый продукт, внутри главы — одна страница с новостями.

Раздел определяется по имени папки репозитория, в котором вы стоите:

Папка репозитория Раздел wiki
frontV3 Глава «Редактор анкет»
APPV3 Глава «Мобильное приложение»

Спрашивать раздел не нужно — если вы (или Claude) стоите внутри одного из этих проектов, --page можно не указывать. Список соответствий — в wiki-news/projects.json, список известных разделов и их id — в wiki-news/pages.json.

Если работаете с другим проектом, не входящим в список — нужно либо передать --page <алиас> явно, либо сначала добавить новый проект в конфиг (см. раздел «Новый проект» ниже).

3. Команды CLI (для ручного/отладочного запуска)

Все вызываются по абсолютному пути:

node "/Users/igor/Файлы и папки/_jobs/skills/wiki-news/src/cli.js" <команда> ...

gather — собрать данные об изменениях

cd <репозиторий>   # frontV3, APPV3 или любой другой
node ".../wiki-news/src/cli.js" gather --path <путь> [--page <алиас>] [--range a..b] [--since дата]
Параметр Обязателен Что делает
--path да Директория/файл в репозитории, изменения в которой анализируем
--page нет Алиас раздела wiki. Если не указан — определяется автоматически по имени папки
--range нет Явный диапазон <sha1>..<sha2>
--since нет Дата YYYY-MM-DD — взять всё после неё
--repo нет Путь к репозиторию, если не хотите/не можете cd перед вызовом

Если --range/--since не переданы — команда сама определит диапазон по дате последней публикации на wiki-странице.

Пример (из frontV3, авто-определение раздела):

cd frontV3
node "/Users/igor/Файлы и папки/_jobs/skills/wiki-news/src/cli.js" gather --path src/pages/redaktor

Вернёт JSON: page (какой раздел определился), commits, stat, matchedDocs, текущий текст wiki-страницы. Ничего не публикует — безопасно вызывать многократно.

publish — опубликовать финальный текст

node ".../wiki-news/src/cli.js" publish --file <путь-к-тексту> [--page <алиас>] [--repo <путь>]

Дописывает файл в начало существующей wiki-страницы (не затирает её). --page/--repo работают так же, как в gather — авто-определение по текущей папке, если не указаны явно.

Пример:

node "/Users/igor/Файлы и папки/_jobs/skills/wiki-news/src/cli.js" publish --file /tmp/draft.md

resolve-page — настройка нового раздела (обычно не нужна вручную)

node ".../wiki-news/src/cli.js" resolve-page [--page <алиас>]

Нужна только при добавлении нового раздела в pages.json с pageId: null. Находит главу по bookSlug/chapterSlug, ищет в ней существующую страницу с новостями — а если такой ещё нет, создаёт новую автоматически через BookStack API и сохраняет её id.

4. Добавить новый проект/раздел

  1. Добавить в wiki-news/pages.json новую запись: {"bookSlug": "istoriya-obnovlenii", "chapterSlug": "<slug-главы-в-wiki>", "pageId": null}.
  2. Если у проекта есть репозиторий с понятным именем папки — добавить строку в wiki-news/projects.json: "ИмяПапки": "новый-алиас".
  3. Один раз выполнить resolve-page --page <новый-алиас> — создаст страницу, если её ещё нет.

5. Типичный ручной цикл целиком

cd frontV3
node "/Users/igor/Файлы и папки/_jobs/skills/wiki-news/src/cli.js" gather --path src/pages/redaktor
# → пишете черновик по правилам AI_What_News/README.md (если есть в репозитории)
node "/Users/igor/Файлы и папки/_jobs/skills/wiki-news/src/cli.js" publish --file draft.md