snens

Скиллы

Скилл — каталог с SKILL.md в skills_dir. В системный промпт едет только его название и описание; тело агент читает, когда скилл понадобился.

Формат SKILL.md

YAML front-matter и markdown-тело, как у плагинов Claude/Anthropic.

---
name: deploy
description: Как выкладывать сборку — шаги, проверки, откат
---

# deploy

1. Собери: `scripts/build.sh`
2. Проверь: `scripts/check.sh`
3. Выложи: `scripts/publish.sh`

Откат и грабли — `references/rollback.md`.

Обязательны только name и description. description — то, по чему агент решает, нужен ли скилл: «Как работать над X» полезнее, чем «про X».

Если name пуст или front-matter отсутствует, ядро берёт имя каталога, а описание останется пустым — такой скилл в оглавлении выглядит строкой без смысла и не читается никогда.

Что попадает в промпт

Оглавление: по строке на скилл, отсортировано по имени, плюс путь к skills_dir.

Скиллы (/home/me/.local/share/snens/skills) — как работать в незнакомой части
проекта: прочитай подходящий прежде чем действовать, рядом с ним могут быть
references/ с деталями и scripts/ для запуска.
- deploy: Как выкладывать сборку — шаги, проверки, откат
- harness: Как работать над snens

Тело в префикс не едет. Плата за все тела каждый ход выше, чем цена одного чтения по требованию; при этом скилл, о котором агент не знает, не существует — поэтому оглавление обязательно, а текст — нет.

Оглавление собирается при каждой сборке промпта: новый скилл виден со следующего хода, перезапуск не нужен. Пустой skills_dir не добавляет ничего.

references/ и scripts/

Разделение: в SKILL.md — маршрут и то, без чего нельзя начать; в references/ — всё, что читается по одному разу в десять сессий.

Как скилл появляется

Сначала — тикет. Первое появление неудобства (тул путает контракт, вызов пришлось повторять, вывод пришлось дочитывать) фиксируется тикетом с hits: 1, и больше ничего не происходит.

Второй раз то же самое — тикет с hits ≥ 2, и это работа snens improve: строка в подходящий скилл, процедура или грабли. По ходу разговора скиллы не пишутся: одна сессия не знает, повторяется ли проблема.

Скилл — это данные, а не код: чтобы добавить возможность, достаточно каталога с SKILL.md. Класть его можно и в git рядом с проектом, на который он ссылается, — тогда скилл версионируется вместе с кодом, который описывает.

Проверить

ls ~/.local/share/snens/skills             # что установлено
head -5 ~/.local/share/snens/skills/*/SKILL.md   # front-matter на месте

Оглавление не появилось — проверь, что файл называется ровно SKILL.md и лежит в каталоге первого уровня skills_dir.

Дальше: файлы инстанса · свои инструменты