Agent Skills — коллекция навыков для AI-агентов от Jane Street

· 6 мин чтения
ai-agents skills agent-skills llm education
📂 Исходный код на GitHub

Коллекция навыков для AI-агентов и чат-ботов от Jane Street. Каждый навык — каталог с файлом SKILL.md; первый навык socratic-tutor превращает LLM в строгого персонального репетитора, который учит сократическим методом — вопросами, а не лекциями. MIT-лицензия.

Agent Skills — коллекция навыков для AI-агентов от Jane Street

Jane Street — американская торговая фирма, известная в том числе своими открытыми библиотеками на OCaml. В начале ноября 2026 года компания опубликовала небольшой репозиторий agent_skills: коллекцию навыков для AI-агентов и чат-ботов. Репозиторий крошечный — два коммита и всего один навык, — но за несколько дней собрал более 5000 звёзд на GitHub. Код там вообще отсутствует: вся ценность упакована в текстовые инструкции для LLM.

Что такое Agent Skills

Формат простой. Каждый навык — это каталог с файлом SKILL.md, внутри которого лежат инструкции для агента. Никаких скриптов, зависимостей и сборки: навык — это чистый текст, который объясняет модели, как вести себя в определённой задаче.

Пока в коллекции один навык:

Навык Что делает
socratic-tutor Превращает LLM в строгого персонального репетитора, который учит сократическим методом: через вопросы, а не лекции

Репозиторий распространяется под лицензией MIT. Вклад принимается через pull request; коммиты нужно подписывать согласно правилам Developer Certificate of Origin.

socratic-tutor: суть

Задача навыка сформулирована жёстко: не отвечать на вопросы, а доводить пользователя до настоящего мастерства в выбранной теме. Метод — майевтика, он же сократический метод: учить в первую очередь вопросами, которые заставляют человека рассуждать, предсказывать и объяснять, а не пассивно читать лекцию.

В описании навыка прописаны фразы-триггеры: «teach me», «tutor me», «quiz me», «drill me», «help me master». И отдельно оговорено, когда навык включать не надо: при разовых вопросах вида «explain X» или «what is X».

Отдельного внимания заслуживает защита от ложного старта. Если пользователь задал вопрос между делом, навык отвечает на него как обычно и не запускает цикл обучения. Если намерение неоднозначно, репетитор задаёт один короткий вопрос: «Хотите быстрый ответ — или научить вас этому как следует?» Авторы объясняют логику так: ложный старт обойдётся пользователю навязанной викториной, а уточнение стоит одного слова.

Как начинается занятие

Первый этап — диагностика, и учить до её окончания запрещено:

  1. Тема разбивается на 4–10 конкретных поднавыков. Для широких тем строится дерево из двух уровней, и работа начинается с первой ветки.
  2. Репетитор предупреждает, что сначала задаст несколько вопросов по одному за раз, чтобы понять, что вы уже знаете.
  3. Диагностика: 3–5 зондирующих вопросов от простых к сложным. По ответам определяется стартовый уровень каждого поднавыка.
  4. Репетитор показывает карту навыков и предлагает точку старта. Пользователь может выбрать другую.

Карта навыков

Прогресс по каждому поднавыку измеряется шкалой из шести уровней:

  • 0 — не слышал о понятии
  • 1 — слышал, но не разбирался
  • 2 — могу следить за разговором
  • 3 — могу сделать с помощью
  • 4 — могу сделать самостоятельно
  • 5 — могу научить других и разобрать граничные случаи

Карта рисуется в ASCII после каждого изменения уровня и по запросу «show progress»:

Topic: <topic>                          overall: ######.... 58%
-----------------------------------------------------------------
subskill A            [########..]  4/5  * independent
subskill B            [######....]  3/5  <- current focus
subskill C            [##........]  1/5
-----------------------------------------------------------------

Требование к оформлению прописано вплоть до юникод-символов: сплошные и светлые блоки (U+2588 / U+2591) для столбиков прогресса.

Цикл обучения

Ядро навыка — цикл, который повторяется для каждого поднавыка. Правила здесь конкретные и местами неожиданно жёсткие:

  • Один вопрос за раз. Сообщение заканчивается сразу после вопроса — без подсказок, примеров ответов и обучающего текста следом.
  • Типы вопросов. Предсказать результат, объяснить почему, найти ошибку в правдоподобном, но неверном утверждении, применить идею к новому случаю, связать две идеи между собой.
  • Неправильный ответ — не повод давать правильный. Вместо этого репетитор задаёт более узкий вопрос, который обнажает противоречие в рассуждениях ученика. Прямое объяснение допускается только после 2–3 неудачных попыток — и сразу за ним следует повторная проверка той же идеи с другого угла.
  • Правильный ответ тоже не гарантия. Время от времени репетитор играет адвоката дьявола: «Вы уверены? А что насчёт X?» Ученик должен уметь защищать верные ответы под давлением.
  • Объяснения — только для действительно нового. Короткий текст из нескольких предложений допустим, лишь когда материал нельзя вывести из уже известного. Дальше снова вопросы.
  • Практика с инструментами. Если инструменты доступны и уместны, задания практические: «напишите запрос, который...», «предскажите, что напечатает этот код». Проверяется реальный вывод, а не пересказ ученика.

Строгие правила оценки

Уровни здесь зарабатываются, а не раздаются. Правила повышения:

  • Уровень растёт только после подтверждённого результата как минимум в двух независимых проверках, причём хотя бы одна — воспроизведение по памяти, без подсказки и не сразу после объяснения.
  • Расплывчатый или частично верный ответ — неверный. Пока непонятно, понимает ли ученик на самом деле, репетитор продолжает спрашивать. Приписывать ученику понимание, которое он не выразил сам, запрещено.
  • Интервальное повторение: старые поднавыки периодически проверяются без предупреждения. Провалил повторение — уровень понижается, тема возвращается в работу.
  • Уровень 5 требует двух вещей: справиться с граничным случаем или каверзным вопросом и объяснить концепцию настолько ясно, чтобы ей можно было доверить преподавание.
  • Льстить запрещено. В тексте навыка это сформулировано с примером: «Не совсем — почему X случилось бы, если бы Y было верно?» работает лучше, чем «Отличная попытка!».

Последний пункт выглядит как прямой выпад против подхалимства LLM — склонности моделей хвалить любой ответ пользователя.

Завершение курса и команды

Курс заканчивается, только когда все поднавыки достигли целевого уровня. По умолчанию это 4/5; 5/5 — если пользователь просил полное мастерство. Затем идёт финальная смешанная аттестация: минимум один вопрос по каждому поднавыку, плюс одна интегральная задача. Сдали — получаете финальную карту и список слабых мест. Не сдали — возвращаетесь в цикл обучения.

В любой момент работают команды:

  • «show progress» — показать карту навыков
  • «harder» / «easier» — изменить сложность
  • «just tell me» — на один вопрос отключить сократический режим и просто ответить
  • «save state» — выдать компактный блок: тема, карта навыков с уровнями, заметки о заблуждениях и пройденном. Блок можно вставить в новую сессию
  • «resume from:» — восстановить сохранённое состояние и продолжить с того же места

Пара «save state» / «resume from» решает проблему, знакомую всем, кто учился с помощью чат-бота: длинный курс живёт дольше одной сессии, а контекст между сессиями по умолчанию не переносится.

Как подключить

Путь зависит от того, чем вы пользуетесь:

  • Кодинг-агент с поддержкой формата SKILL.md — скопируйте каталог навыка в папку навыков вашего агента и попросите агента использовать навык («teach me X»).
  • Обычный чат-бот — вставьте тело SKILL.md в чат или в системный промпт, а следом — что вы хотите изучить.

Файл с навыком весит около пяти килобайт, так что вставка в системный промпт почти не занимает контекстное окно.

Почему это интересно

Репозиторий показателен в двух отношениях. Во-первых, он демонстрирует, что навык — это просто инструкция: чтобы получить инструмент уровня «персональный репетитор с диагностикой и аттестацией», хватило пяти килобайт текста без единой строки кода. Во-вторых, инструкции написаны с редкой для промптов строгостью: где именно запрещено льстить, когда разрешено объяснять, какими символами рисовать прогресс-бар. Именно эта конкретность и делает поведение модели предсказуемым. Если Jane Street будет пополнять коллекцию — формат уже задан, и новые навыки появятся в том же виде: каталог, SKILL.md, ничего лишнего.

Источник: https://github.com/janestreet/agent_skills