LaiDub

Подкасты

Как проектировать эффективных субагентов
3:42
EN/ZH
Watch with Captions
ClaudeClaude Code subagents4 месяца назад

Как проектировать эффективных субагентов

Этот урок из серии Claude Code от Anthropic разбирает четыре конкретных паттерна, отличающих надёжных субагентов от тех, что сбиваются с курса, зависают или трогают файлы, которые трогать не должны. Ведущий разбирает каждый паттерн на примере субагентов для ревью кода и веб-поиска, показывая точно, какие настройки менять и зачем. ## [00:03] Управление поведением субагента через имя и описание Каждое сообщение, отправляемое агенту в основном контекстном окне, содержит в системном промпте имя и описание каждого зарегистрированного субагента. Это значит, что описание выполняет двойную функцию: сообщает оркестратору, *когда* запускать субагент, и служит шаблоном для составления входного промпта. В уроке это демонстрируется на субагенте для ревью кода. В исходной конфигурации оркестратор пишет обобщённый промпт, предоставляя субагенту самостоятельно выполнить `git diff`. Если обновить описание до «вы должны точно указать агенту, какие файлы нужно проверить», ответственность за выбор файлов переходит к оркестратору — при следующем запуске входной промпт становится заметно конкретнее. То же работает для субагентов веб-поиска: добавить «возвращай источники, которые можно процитировать» в описание — и основной поток автоматически включает это требование при делегировании. > *«Чтобы точнее контролировать, когда главный агент автоматически запускает субагент, нужно изменить имя и описание.»* ## [01:41] Определение форматов вывода Ведущий называет формат вывода самым весомым единственным улучшением. Без него субагент не получает чёткого сигнала о завершении работы: он продолжает работать, накапливая контекст и расходуя токены. Структурированный формат вывода создаёт естественную точку остановки. Субагент знает, что закончил, когда заполнены все обязательные поля. Практически это означает добавить явную схему непосредственно в системный промпт субагента: блок резюме, список находок, поле статуса. > *«Без определённого формата вывода субагентам трудно понять, когда достаточно исследований, и они, как правило, работают гораздо дольше субагентов, которым задан формат вывода.»* ## [02:04] Сообщение о препятствиях в итоговом отчёте Когда субагент решает какую-то проблему — конфликт зависимостей, команда с неожиданными флагами, особенность среды — основному потоку нужна эта информация, иначе на следующем шаге он упрётся в ту же стену. Решение — сделать отчёт о препятствиях обязательным элементом самого формата вывода. Ведущий перечисляет категории, которые должны всплывать всегда: встреченные препятствия, проблемы с настройкой, найденные обходные пути, команды, потребовавшие особых флагов или конфигурации, и импорты или зависимости, вызвавшие проблемы. Включив всё это в обязательную схему вывода, основной поток получает в наследство открытия субагента вместо того, чтобы делать их заново с нуля. > *«Иначе основному потоку придётся заново открывать те же решения: встреченные препятствия, проблемы с настройкой, найденные обходные пути или особенности среды, команды с особыми флагами или конфигурацией, зависимости или импорты, вызвавшие проблемы.»* ## [02:42] Ограничение доступа к инструментам по роли Контроль доступа к инструментам — не только мера безопасности, но и инструмент ясности. Субагент «только для чтения» с доступом лишь к `glob`, `grep` и `read` физически не может случайно изменить файлы, что делает его роль недвусмысленной для любого, кто читает конфигурацию. Ведущий сопоставляет три уровня доступа с тремя ролями субагентов: исследовательский субагент получает доступ только для чтения, потому что изучение кодовой базы не требует записи; ревьюер получает `bash` для `git diff`, но не инструменты редактирования; `edit` и `write` получают только субагенты, явно назначенные для изменения кода — например, применяющие обновления CSS. С несколькими субагентами в работе список инструментов становится машиночитаемым резюме того, что каждый из них должен делать. > *«Давайте edit и write только тем субагентам, которые действительно должны изменять ваш код, — например, агенту стилизации, применяющему обновления CSS.»* ## [03:27] Четыре паттерна для эффективных субагентов Урок завершается кратким резюме всех четырёх паттернов: структурированный вывод, отчёт о препятствиях, конкретные описания и ограниченный доступ к инструментам. Каждый паттерн усиливает остальные — точные описания снижают неоднозначность во входных промптах, форматы вывода создают точки остановки, отчёт о препятствиях сохраняет контекст между границами агентов, а минимальный доступ к инструментам предотвращает побочные эффекты, которые могли бы усугубить любую оставшуюся неоднозначность. > *«Эффективные субагенты используют структурированный вывод, сообщают о препятствиях, имеют конкретные описания и ограничивают доступ к инструментам.»* ## Сущности - **Anthropic Tutorial Narrator** (Персона): ведущий серии уроков Claude Code о субагентах, представляет Anthropic - **Claude Code** (Программное обеспечение): агентный инструмент для программирования от Anthropic, оркестрирующий субагенты для решения многошаговых инженерных задач - **Subagent** (Концепция): специализированный экземпляр Claude, запущенный агентом-оркестратором, с собственным системным промптом, доступом к инструментам и входным промптом - **Output format** (Концепция): обязательная схема, определённая в системном промпте субагента; создаёт условие завершения и структурирует информацию, возвращаемую основному потоку - **Obstacle reporting** (Концепция): паттерн, обязывающий субагентов включать в вывод найденные обходные пути, проблемы с зависимостями и особенности среды, чтобы оркестратор не открывал их заново - **Tool access scoping** (Концепция): ограничение каждого субагента только теми инструментами, которые требует его роль — только чтение для исследования, bash для ревью, edit/write только для агентов, меняющих файлы - **Anthropic** (Организация): создатель Claude и агентной платформы для программирования Claude Code

#claude-code#subagents#ai-agents
Что такое субагенты?
2:48
EN/ZH
Watch with Captions
ClaudeClaude Code subagents4 месяца назад

Что такое субагенты?

Субагенты — это специализированные помощники, которым Claude Code может делегировать задачи. Каждый субагент работает в собственном изолированном контекстном окне, выполняет задачу автономно, а затем возвращает краткое резюме — всё промежуточное содержимое при этом отбрасывается. В двухминутном руководстве от Anthropic объясняется, почему такая изоляция важна для поддержания работоспособности основного контекстного окна, показан конкретный сценарий исследования кода с разбором компромиссов и перечислены встроенные субагенты, которые поставляются вместе с Claude Code. ## [00:03] Что такое субагенты Субагент работает в собственном отдельном контекстном окне диалога, инициализированном с пользовательским системным промптом, который вы задаёте сами. Родительский агент (Claude Code в основном потоке) передаёт субагенту описание задачи на основе вашего запроса. Субагент выполняет её автономно, возвращает резюме в основной поток — и всё промежуточное содержимое остаётся изолированным. > *"Sub-agents are specialized assistants that Claude can delegate tasks to."* Ключевой момент проектирования: как только субагент завершает работу, его диалоговый поток полностью уничтожается. В основной диалог возвращается только итоговое резюме. ## [00:24] Управление контекстным окном Каждый вызов инструмента, который Claude делает в основном потоке — чтение файлов, поиск, трассировка функций — накапливается в основном контекстном окне. При длительной сессии оно быстро заполняется. Субагенты существуют именно для того, чтобы переносить отдельные задачи исследования или выполнения, не загружая основное окно. > *"Each sub-agent runs in its own conversation contacts window with a custom system prompt that you define."* Компромисс очевиден: основное окно сохраняет чистый контекст, но теряет видимость того, как субагент пришёл к своим выводам и что обнаружил по пути. Вы получаете ответ, но не цепочку рассуждений. ## [01:13] Конкретный пример: платёжная система Допустим, вы используете Claude Code, чтобы разобраться, какой сервис обрабатывает возвраты в незнакомой кодовой базе. Без субагента Claude может прочитать 15 файлов, выполнить несколько поисков и пройти через множество вызовов функций — и всё это заполнит основное контекстное окно, хотя вам нужен был лишь один факт. > *"With a sub-agent, you get the answer without the journey."* Субагент исследует кодовую базу, находит ответ и возвращает сфокусированное резюме — основной контекст остаётся чистым. Утраченная видимость — это и есть цена: вы не увидите, какие файлы он читал и какие пути трассировал, чтобы добраться до ответа. ## [02:00] Встроенные субагенты Claude Code Claude Code поставляется с тремя встроенными субагентами, готовыми к немедленному использованию: - **Субагент общего назначения** — для многошаговых задач, требующих как исследования, так и выполнения действий. - **Explore-субагент** — быстрый поиск по кодовым базам без накладных расходов полного цикла выполнения задачи. - **Plan-субагент** — запускается в режиме планирования, чтобы исследовать и проанализировать кодовую базу перед тем, как представить вам план. > *"And you can also create your own sub-agents with custom system prompts and tool access."* Помимо этих трёх, можно создавать собственные субагенты с индивидуальными системными промптами и списками доступных инструментов, адаптированными под конкретные рабочие процессы. ## [02:30] Когда использовать субагентов Субагенты оправдывают себя, когда есть обособленный, самодостаточный вопрос или задача, которая иначе выгрузила бы в основное окно большой объём промежуточного контекста. > *"Sub-agents like Claude Code break work into focused pieces, keep your main context window clean, and bring back just what you need, whether you're using the built-in ones or creating your own."* Наибольшую пользу они приносят в длительных сессиях Claude Code, где давление контекстного окна накапливается: перенос подзадачи на субагента вместо того, чтобы пропускать её через основной поток, напрямую продлевает эффективность сессии. ## Сущности - **Anthropic Tutorial Narrator** (Персона): ведущий серии руководств "Claude Code subagents", созданных Anthropic - **Claude Code** (Программное обеспечение): агентный ассистент для написания кода от Anthropic; среда, в которой работают субагенты - **Claude** (Программное обеспечение): базовая AI-модель, на которой работают Claude Code и его субагенты - **Субагент** (Концепция): специализированный помощник, которому Claude Code делегирует задачи; работает в изолированном контекстном окне с собственным системным промптом - **Контекстное окно** (Концепция): конечный буфер токенов, содержащий всю историю диалога, вызовы инструментов и результаты; субагенты не дают ему заполняться промежуточной работой - **Субагент общего назначения** (Программное обеспечение): встроенный субагент Claude Code для многошаговых задач исследования и выполнения - **Explore-субагент** (Программное обеспечение): встроенный субагент Claude Code, оптимизированный для быстрого поиска по кодовым базам - **Plan-субагент** (Программное обеспечение): встроенный субагент Claude Code, исследующий кодовую базу в режиме планирования перед представлением плана - **Anthropic** (Организация): создатель Claude и Claude Code; производитель данной серии руководств

#claude-code#subagents#context-window
Теренс Тао — как лучший математик мира использует ИИ
1:23:44
EN/ZH
Watch with Captions
Dwarkesh Patel4 месяца назад

Теренс Тао — как лучший математик мира использует ИИ

Тао и Дваркеш рассматривают открытие Кеплером законов движения планет как призму для понимания того, что ИИ реально меняет в науке. Тао утверждает: генерация гипотез теперь практически бесплатна, поэтому узкое место смещается к оценке, рецензированию и проверке временем. Современные ИИ выигрывают вширь (пробуют каждый стандартный метод на каждой задаче), а люди выигрывают вглубь (накапливают прогресс шаг за шагом) — поэтому гибридные конфигурации будут доминировать в математике ещё как минимум десятилетие. ## [00:00] Кеплер был высокотемпературной языковой моделью Тао рассказывает, как Кеплер пришёл к трём законам движения планет. Кеплер отправился от неверной, но красивой теории — платоновских тел, вписанных между орбитами планет, — и отказался от неё лишь после многолетней обработки похищенных наблюдений Тихо Браге невооружённым глазом. Эллипсы, закон площадей и куб-квадратичный закон возникли из многолетнего анализа данных; объяснение Ньютона пришло столетие спустя. Dwarkesh формулирует так: Кеплер похож на высокотемпературную LLM, перебирающую случайные соотношения по проверяемому набору данных. Тао соглашается с механикой, но оспаривает узкое место. Генерация идей была дешёвой уже тогда — теорий у Кеплера хватало. Ему нужны были данные Браге на порядок лучше и терпение, чтобы отбрасывать идеи, которые данные опровергали. > *Но, как вы говорите, это должно сопровождаться равным объёмом верификации, иначе это просто мусор.* ## [11:44] Как распознать новую объединяющую концепцию в море мусора, созданного ИИ? Тао: если ИИ снизил стоимость генерации идей почти до нуля, рецензирование и проверка временем становятся новым ограничением. Журналы уже тонут в статьях, созданных с помощью ИИ. Ценность любой идеи определяется тем, что с ней сделает последующая наука — Коперник уступал Птолемею в точности, пока Кеплер не завершил картину, — поэтому оценить это изнутри момента затруднительно. Dwarkesh спрашивает, как наука могла бы распознать объединяющую концепцию уровня Bell Labs (бит Шеннона, трансформер), погребённую в миллионах посредственных статей. Тао указывает на то, что может остаться за людьми: учёные не просто создают теории, они рассказывают истории, убеждающие других учёных потратить годы на дальнейшие исследования. Проза Дарвина сделала то, чего не сделали латинские уравнения Ньютона. > *ИИ снизил стоимость генерации идей почти до нуля — примерно так же, как интернет снизил стоимость коммуникации почти до нуля.* ## [26:10] Дедуктивный навес Тао о недооценённом сигнале в существующих данных. Астрономия столетиями была дисциплиной, извлекающей максимум информации из минимума данных, — именно поэтому квантовые хедж-фонды охотно нанимают выпускников астрофизических программ. Он приводит любимый пример: исследователи измеряли, как часто учёные реально читают цитируемые статьи, отслеживая, какие опечатки распространялись по цепочкам цитирования. Он предлагает применить тот же социологический подход к прогрессу ИИ — анализировать паттерны цитирования, упоминания на конференциях и другие следы, чтобы обнаружить, действительно ли результат стал прогрессом, не дожидаясь медленной проверки временем. > *Один вывод состоял в том, что дедуктивный навес во многих областях может быть значительно больше, чем люди думают.* ## [30:31] Ошибка выжившего в отчётах об открытиях ИИ ИИ решил около 50 из примерно 1100 задач Эрдёша, а затем упёрся в плато. Тао объясняет эффект селекции: эти 50 задач имели почти нулевую литературу — одного малоизвестного метода плюс одного известного результата оказалось достаточно, а инструменты ИИ превосходно справляются с перебором стандартных комбинаций. Когда 80% работы уже сделано существующими методами, ИИ закрывает задачу. Когда нужна принципиально новая техника, инструменты останавливаются, а доля успеха при систематическом переборе составляет 1-2%. Метафора Тао: инструменты ИИ — это прыгающие роботы, блуждающие в темноте по горному хребту. Они берут короткие стены, недоступные людям, но не умеют ухватиться за уступ, удержаться на нём и подтянуться с промежуточного прогресса. Оптимистичная интерпретация — как только ИИ достигает определённого уровня, можно запустить миллион параллельных копий на миллион задач, чего никакое человеческое сообщество не в состоянии сделать, — и является структурной причиной, по которой науке нужны новые парадигмы, реально использующие ширину охвата. > *Они превосходят нас вширь, а люди превосходят ИИ вглубь — по крайней мере, эксперты.* ## [46:43] ИИ делает статьи богаче и шире, но не глубже Тао о своей рабочей практике: статьи теперь содержат больше кода, больше графиков, более глубокие обзоры литературы, потому что вспомогательные задачи подешевели примерно в 5 раз. Собственно ядро — решение самой трудной части задачи — по-прежнему происходит на бумаге с ручкой. Он не решился бы назвать себя «в 2 раза продуктивнее», потому что метрика не одномерна; изменился тип статей, которые он пишет, а не скорость, с которой он отвечает на поставленный вопрос. Различие между сообразительностью и интеллектом приходит к тому же. Когда два человека совместно работают над математической задачей, каждый неудавшийся прототип становится точкой опоры для следующего. С нынешними ИИ новая сессия забывает всё, что выяснила предыдущая. Накопительный шаг подтягивания отсутствует — есть только перебор вслепую и в конечном счёте усвоение следующим обучающим запуском. > *Это сделало статьи богаче и шире, но не обязательно глубже.* ## [53:00] Если ИИ решит задачу, смогут ли люди извлечь из этого понимание? Сможет ли ИИ доказать гипотезу Римана в Lean, не дав нам ровно никакого понимания? Тао не обеспокоен. Lean обладает свойством атомарной декомпозиции любого доказательства: каждую лемму можно проверить, удалить и протестировать в отдельности. Поэтому даже сгенерированное доказательство на 3000 строк становится сырьём: другие ИИ могут переработать его ради элегантности, другие люди могут извлечь концептуальное содержание, и артефакт остаётся полезным, даже если исходный вывод был непрозрачным. Тао предсказывает возникновение целой профессии математиков, чья работа — разбирать гигантские доказательства, сгенерированные в Lean, и находить внутри них идеи: своего рода археология доказательств с участием и человеческого суждения, и инструментов ИИ для абляции. > *Вы получите гораздо больше, опираясь на взаимодействие людей, сотрудничающих с этими инструментами.* ## [59:20] Нам нужен полуформальный язык для того, как учёные на самом деле разговаривают друг с другом Dwarkesh спрашивает, как мог бы выглядеть полуформальный язык для математических стратегий в противовес математическим доказательствам. Тао прослеживает вопрос через теорему Гаусса о простых числах — первую крупную статистическую гипотезу в математике, выведенную из сырых данных до существования какого-либо доказательства, — и через гипотезу о простых числах-близнецах, в которую математики верят, потому что случайная модель простых чисел её предсказывает. В математике есть и строгие доказательства, и строгие эвристики; только доказательная сторона формализована до состояния, которое может проверить Lean. Причина, по которой эвристическая сторона не формализована: любой проверяемый критерий в рамках обучения с подкреплением становится целью для эксплуатации, а субъективная часть «этот аргумент убедителен» пока не поддаётся взломоустойчивой формализации. Тао хотел бы способа оценивать генерацию гипотез и выбор стратегий в масштабе — возможно, запуская небольшие ИИ в игрушечных математических вселенных и наблюдая, какие стратегии возникают. > *Есть какой-то субъективный аспект науки, который мы не знаем, как уловить, чтобы внедрить туда ИИ сколько-нибудь полезным образом.* ## [69:48] Как Терри распределяет своё время Тао о том, как он осваивает новые подобласти. По классификации Берлина он относит себя к лисам — знает понемногу обо всём, иногда превращаясь в ежа по необходимости. Движущая сила — маниакальная тяга к полноте: если другой математик доказывает результат с помощью метода, которого он не знает, Тао обязан разобраться, в чём трюк. По той же причине он вынужден был бросить видеоигры. Сотрудничество с другими математиками — главный инструмент, а ведение блога — система памяти, которую он выработал после того, как несколько раз проигрывал споры через полгода после того, как сам же вывел нужный результат. В своём расписании Тао намеренно оставляет место для случайных встреч. Он был бы против того, чтобы оптимизировать время до такой степени, что никогда не окажется на совещании за пределами зоны комфорта. Год в Институте перспективных исследований подтвердил эту ловушку: две недели чистых исследований были прекрасны, а потом вдохновение иссякло. Случайное открытие на соседней библиотечной полке, непринуждённый разговор в коридоре и совещание, на которое он пошёл нехотя, делали больше работы, чем казалось. > *Эти случайные взаимодействия могут не выглядеть оптимальными, но на самом деле они очень важны.* ## [77:05] Гибриды человека и ИИ будут доминировать в математике ещё долго Когда ИИ начнёт заниматься математикой самостоятельно? Тао переформулирует: ИИ уже делает математику, недоступную людям, — калькуляторы, только на другой границе. Примерно за десятилетие он ожидает, что значительная часть того, чем сейчас занимаются аспиранты — применение стандартных методов, проработка литературы, — перейдёт к ИИ, но область поднимется на уровень выше, как это произошло, когда системы компьютерной алгебры взяли на себя символьное интегрирование. Генетика не закончилась, когда секвенирование подешевело; она масштабировалась до экосистем. Математика сделает то же самое. Совет студентам, входящим в математику сейчас: принять изменения как данность, но получить квалификацию старым способом — пока замены для традиционного освоения математики нет. Одновременно нужно оставаться достаточно гибкими, чтобы использовать совершенно новые режимы исследования по мере их появления, включая те, которых ещё не существует. Примечательный факт: с инструментами ИИ и Lean старшеклассник сегодня может внести реальный вклад в математические исследования — пять лет назад это было невозможно. > *Думаю, я действительно верю, что гибриды человека и ИИ будут доминировать в математике ещё очень долго.* ## Сущности - **Теренс Тао** (Персона): лауреат Филдсовской премии (2006), математик UCLA, регулярно пишет о роли ИИ в математических исследованиях. - **Dwarkesh Patel** (Персона): ведущий Dwarkesh Podcast; интервью в длинном формате об ИИ, науке и технологиях. - **Иоганн Кеплер** (Персона): астроном (1571-1630), выведший три закона движения планет из наблюдений Тихо Браге. - **Тихо Браге** (Персона): датский астроном, чьи многолетние наблюдения за планетами невооружённым глазом стали набором данных, необходимым Кеплеру. - **Lean** (Программное обеспечение): ассистент доказательств, в котором математические доказательства формализуются и могут быть проверены, декомпозированы и протестированы атомарно. - **Задачи Эрдёша** (Концепция): около 1100 открытых задач, поставленных Полом Эрдёшем; ИИ решил около 50, почти все с почти нулевой предшествующей литературой. - **Дедуктивный навес** (Концепция): идея о том, что существующие данные уже содержат гораздо больше выводимого знания, чем было извлечено; астрономия служит образцом. - **Гипотеза Римана** (Концепция): нерешённая гипотеза о распределении простых чисел; тестовый случай для вопроса о том, продвинет ли доказательство ИИ человеческое математическое понимание.

#ai-for-math#terence-tao#kepler
Что такое скиллы?
2:54
EN/ZH
Watch with Captions
ClaudeClaude Code skills4 месяца назад

Что такое скиллы?

Скиллы Claude Code — это переиспользуемые markdown-файлы, которые один раз кодируют специализированные знания. После этого Claude автоматически активирует их при подходящем запросе, без необходимости повторять инструкции или вводить slash-команды. Этот трёхминутный туториал объясняет, что такое скиллы, где они хранятся, чем отличаются от CLAUDE.md и по какому сигналу понимать, что пора написать новый скилл. ## [00:03] Проблема повторений, которую решают скиллы Каждый раз, когда вы объясняете стандарты кода своей команды, заново описываете структуру PR-фидбека или напоминаете Claude предпочтительный формат коммита, вы повторяетесь. Нарратор открывает тремя последовательными примерами, чтобы точно назвать ту точку трения, которую устраняют скиллы. > *"Каждый раз, когда вы объясняете Claude стандарты кода своей команды, вы повторяетесь."* ## [00:20] Что такое скилл и как Claude выбирает его Скилл — это markdown-файл, который один раз учит Claude выполнять какое-то действие. Claude сохраняет инструкцию и применяет её автоматически, когда ситуация требует. В Claude Code этот файл называется SKILL.md. Поле description внутри файла — ключевой механизм: когда вы просите Claude проверить PR, он сравнивает ваш запрос с описаниями всех доступных скиллов и активирует совпавший. > *"Claude читает ваш запрос, сравнивает его с описаниями всех доступных скиллов и активирует подходящие."* ## [01:05] Где хранить скиллы: личные vs. проектные Скиллы живут в двух местах — в зависимости от того, кому они нужны. Личные скиллы хранятся в ~/.claude/skills и следуют за вами в каждый проект: стиль коммит-сообщений, формат документации, предпочтительный способ объяснения кода. Проектные скиллы размещаются в .claude/skills в корне репозитория; любой, кто клонирует репо, получает их автоматически. Именно это второе место предназначено для командных стандартов: брендовые гайдлайны, предпочтительные шрифты и цвета для веб-дизайна. > *"Любой, кто клонирует репозиторий, автоматически получает эти скиллы."* ## [01:42] Скиллы vs. CLAUDE.md: автоматика и экономия контекста Claude Code предлагает несколько уровней кастомизации, и скиллы занимают особую нишу. Файлы CLAUDE.md загружаются в каждый разговор безусловно — это подходит для правил вроде «всегда использовать TypeScript strict mode». Скиллы загружаются по требованию, только когда соответствуют текущему запросу, и в контекст попадают лишь название и описание. Полное тело скилла загружается только при срабатывании. Так чеклист для PR-ревью не занимает контекстное окно во время отладки и появляется лишь тогда, когда вы действительно просите провести ревью. Slash-команды требуется вводить вручную; скиллы — нет. > *"Скиллы уникальны тем, что они автоматические и привязаны к конкретной задаче."* ## [02:27] Когда писать скилл Скиллы лучше всего подходят для специализированных знаний, привязанных к конкретным задачам: стандарты код-ревью команды, форматы коммит-сообщений, брендовые гайдлайны. Финальное правило прямолинейное и практичное: если вы раз за разом объясняете Claude одно и то же, значит это скилл, который ждёт, чтобы его написали. > *"Если вы раз за разом объясняете Claude одно и то же, что ж, это скилл, который ждёт, чтобы его написали."* ## Упоминаемые объекты - **Anthropic Tutorial Narrator** (Личность): нарратор и ведущий серии туториалов по скиллам Claude Code - **Claude Code** (Программное обеспечение): AI-ассистент для написания кода от Anthropic; среда выполнения, в которой скиллы обнаруживаются и применяются - **SKILL.md** (Концепция): markdown-файл, определяющий скилл — содержит название, описание и инструкции для Claude - **CLAUDE.md** (Концепция): файл инструкций на уровне проекта или глобально, загружающийся в каждый разговор Claude Code безусловно; противопоставляется скиллам - **Anthropic** (Организация): создатель Claude и Claude Code

#claude-code#ai-tools#developer-productivity
Делимся skills
3:53
EN/ZH
Watch with Captions
ClaudeClaude Code skills5 месяцев назад

Делимся skills

Skill для ревью PR, которую использует один инженер, полезна; та же skill, развёрнутая на всю команду, стандартизирует код-ревью и создаёт единый опыт по всей организации. Этот туториал разбирает четыре конкретных метода распространения — коммиты в репозиторий, плагины, enterprise managed settings и custom sub-agents — и объясняет, когда применять каждый из них. В разделе про sub-agents есть неочевидный нюанс: sub-agents не наследуют skills автоматически, а встроенные агенты не могут получить к ним доступ вовсе. ## [00:01] Почему sharing умножает ценность skills Skill, которая остаётся у одного разработчика, выполняет свою работу. Та же skill, переданная команде, фиксирует стандарты, устраняет индивидуальные расхождения и делает каждое ревью одинаковым по виду и ощущению. Ведущий открывает с прямого противопоставления индивидуального и командного использования, а затем перечисляет четыре механизма обмена. > *"A PR review skill that only you use is helpful. The same skill shared across your team standardizes code review and provides a consistent experience amongst your organization which is much better."* ## [00:18] Коммит skills в репозиторий Способ с минимальным трением: разместить skills в `.claude/skills` внутри репозитория проекта. Любой, кто клонирует репозиторий, сразу получает эти skills — никаких шагов установки, никакого дополнительного инструментария. Обновления приходят через обычный цикл `git pull`. Этот путь подходит для командных стандартов кодирования, рабочих процессов, специфичных для проекта, и skills, ссылающихся на собственную структуру кодовой базы. > *"Anyone who clones the repository gets these skills automatically. No extra installation, it's just what you're doing already."* ## [00:45] Распространение skills через плагины Плагины расширяют Claude Code пользовательской функциональностью, которая предназначена для использования за пределами одного проекта. Внутри проекта плагина директория `skills/` повторяет структуру `.claude/` — название skill, `SKILL.md`. После публикации на маркетплейсе любой пользователь Claude Code может скачать и активировать плагин. Этот канал лучше всего подходит для skills, достаточно универсальных, чтобы служить широкому сообществу, а не конвенциям одной команды. > *"Think of plugins as ways to extend Claude Code with custom functionality, but designed to be shared across teams and projects."* ## [01:26] Развёртывание на всю организацию через managed settings Администраторы могут распространять skills на каждого разработчика организации через managed settings. Enterprise skills имеют наивысший приоритет: они перекрывают личные, проектные и плагинные skills с тем же именем. Предназначение — обязательные стандарты: требования безопасности, compliance-процессы, практики кодирования, которые должны быть едиными. Ведущий явно делает акцент на слове «должны»: это не рекомендации. > *"This is for mandatory standards, security requirements, compliance workflows, or coding practices that must be consistent across the organization."* ## [01:52] Custom sub-agents и явная загрузка skills Sub-agents не наследуют skills основного разговора. Встроенные агенты (explorer, planner, verify) вообще не имеют доступа к skills. Только custom sub-agents — определённые через файл `agent.md` в `.claude/agents` — могут использовать skills, и только те, что явно перечислены в поле `skills:` этого файла. Skills загружаются при запуске sub-agent, а не по запросу, поэтому список должен быть компактным: только skills, всегда актуальные для задачи агента. Туториал показывает, как создать sub-agent с помощью создателя sub-agents Claude Code и как прикрепить skills к существующему `agent.md`. > *"Built-in agents like the explorer, planner, and verify can't access skills at all. Only custom sub-agents you define can use them, and only when you explicitly list them."* ## [03:18] Итоги: как выбрать подходящий способ распространения В финале каждый метод сопоставляется со своим сценарием: директории проекта — для командного доступа, плагины — для распространения между репозиториями, enterprise-развёртывание — для обязательных стандартов на уровне организации, явные списки skills в sub-agents — для изолированного делегирования задач. Напоминание про sub-agents звучит снова: перечисляйте только те skills, которые всегда нужны для работы конкретного агента, поскольку они загружаются при старте, а не лениво. > *"Share skills through project directories for team access, plugins for cross-repository distribution, or enterprise deployment for organization-wide standards."* ## Сущности - **Anthropic Tutorial Narrator** (Человек): единственный ведущий серии туториалов по skills Claude Code - **Claude Code** (Программное обеспечение): AI-ассистент Anthropic для написания кода; среда выполнения, где skills создаются и разворачиваются - **Skills** (Концепция): наборы повторно используемых инструкций в `.claude/skills`, расширяющие поведение Claude Code - **Plugins** (Концепция): распространяемые пакеты, объединяющие skills для обмена между командами и пользователями маркетплейса - **Managed settings** (Концепция): механизм enterprise-администратора для развёртывания skills на всю организацию с наивысшим приоритетом переопределения - **Sub-agents** (Концепция): пользовательские агенты Claude Code, определённые через `agent.md` в `.claude/agents`; единственный тип агентов, способных загружать skills, и только при явном перечислении - **Anthropic** (Организация): компания, создавшая Claude Code и производящая серию туториалов по skills Claude Code

#claude-code#skills#developer-tools
Конфигурация и мультифайловые скиллы
4:04
EN/ZH
Watch with Captions
ClaudeClaude Code skills5 месяцев назад

Конфигурация и мультифайловые скиллы

Четырёхминутный туториал из серии Claude Code skills о расширенных полях конфигурации, которые превращают базовый скилл в надёжный и экономный по контексту инструмент. Нарратор проходит весь набор полей стандарта agentskills.io — `name`, `description`, `allowed_tools`, `model` — и объясняет, как структурировать крупные скиллы с помощью progressive disclosure: справочные материалы и скрипты загружаются только тогда, когда они действительно нужны, а не при каждом вызове. ## [00:02] Обзор расширенных полей скилла Открытый стандарт agentskills.io определяет несколько полей помимо обязательных `name` и `description`. `name` должен быть строчным с дефисами, не длиннее 64 символов, и совпадать с именем директории. `description` ограничен 1024 символами и служит основным сигналом для Claude при выборе скилла. Конфигурацию дополняют два необязательных поля: `allowed_tools`, ограничивающее набор инструментов, которые скилл может вызывать, и `model`, фиксирующее конкретную версию Claude. > *"A basic skill works with just a name and description, but here are some other advanced tips that can make your skills really effective in Claude Code."* ## [00:39] Написание эффективных описаний Расплывчатое описание — «помогать с собаками» — оставляет Claude гадать об области применения и триггерах. Хорошее описание отвечает ровно на два вопроса: что делает этот скилл и когда Claude должен его использовать? Подбор ключевых слов под естественную формулировку пользовательских запросов — главный способ исправить скиллы, которые не срабатывают. > *"A good description answers two questions. What does this skill do? And when should Claude use it?"* ## [01:20] Ограничение инструментов с помощью allowed_tools `allowed_tools` — механизм привязки скилла к чётко ограниченному набору возможностей: например, только чтение для workflow с повышенными требованиями к безопасности. При заданном поле Claude может вызывать только перечисленные инструменты без запроса разрешения: никакого редактирования, записи или Bash. Если поле не указано, стандартная модель прав Claude остаётся неизменной. > *"When this skill is active, Claude can only use those tools without asking permission. No editing, no writing, no bash commands."* ## [01:49] Progressive disclosure для мультифайловых скиллов Скиллы разделяют контекстное окно Claude с текущим разговором. Запихнуть всё в один `SKILL.md` на 20 000 строк — значит раздувать контекст при каждом вызове и делать файл неудобным для поддержки. Решение: держать ключевые инструкции в `SKILL.md`, а справочные материалы вынести в отдельные файлы, которые Claude читает лишь тогда, когда запрос пользователя действительно требует их. Стандарт предлагает три вспомогательные директории — `scripts/` для исполняемого кода, `references/` для документации и `assets/` для изображений и шаблонов. Ссылка в `SKILL.md` работает как запись в оглавлении: если тема не возникла, файл не загружается. Скрипты в директории скилла выполняются без загрузки исходного кода в контекст — токены расходует только их вывод. Рекомендуется держать `SKILL.md` в пределах 500 строк; превышение — сигнал разбить скилл на части. > *"It's like having a table of contents in the context window rather than fitting the whole entire document in there."* ## [03:18] Итоги: метаданные скилла и лучшие практики Туториал завершается повторением всей поверхности конфигурации: `name` и `description` обязательны; `allowed_tools` ограничивает набор инструментов; `model` фиксирует версию Claude. Описания должны содержать конкретные глаголы действия и триггерные фразы для стабильного срабатывания. Для крупных скиллов progressive disclosure удерживает `SKILL.md` в пределах 500 строк и откладывает вспомогательные файлы до реальной необходимости. Скрипты выполняются без загрузки исходников, что сохраняет контекст лёгким. > *"Scripts can execute without loading their contents, keeping context efficient."* ## Сущности - **Anthropic Tutorial Narrator** (Персона): единственный ведущий этой серии туториалов, рассказывающий о конфигурации скиллов Claude Code. - **Claude Code** (Программное обеспечение): CLI-инструмент Anthropic, который загружает и исполняет скиллы по стандарту agentskills.io. - **agentskills.io** (Организация): открытый стандарт, определяющий схему манифеста скиллов, включая `name`, `description`, `allowed_tools`, `model` и соглашения по директориям. - **SKILL.md** (Концепция): основной файл манифеста скилла Claude Code; должен оставаться в пределах 500 строк со ссылками на вспомогательные файлы. - **allowed_tools** (Концепция): необязательное поле скилла, вносящее конкретные инструменты Claude в белый список и позволяющее использовать режимы только для чтения или песочницы. - **Progressive disclosure** (Концепция): структурирование мультифайлового скилла так, чтобы справочные файлы и скрипты загружались в контекст только при реальной необходимости в рамках активного запроса. - **Context window** (Концепция): общий бюджет токенов между разговором и загружаемыми Claude файлами скиллов; ключевой ресурс, для экономии которого разработан progressive disclosure.

#claude-code#skills#configuration
Создаём первый навык
3:47
EN/ZH
Watch with Captions
ClaudeClaude Code skills5 месяцев назад

Создаём первый навык

Трёхминутный туториал показывает, как с нуля собрать персональный навык в Claude Code: создать директорию с файлом SKILL.md, убедиться, что навык загружается при старте, и понаблюдать, как Claude применяет его к реальному запросу. Вторая половина подробно объясняет, как устроен пайплайн загрузки навыков — четыре места сканирования и первичный проход только по именам, ворота подтверждения и четырёхуровневый порядок приоритетов, разрешающий конфликты имён. ## [00:03] Что строит этот туториал Ведущий начинает с конкретной цели: навык, который учит Claude объяснять код с помощью визуальных схем и аналогий. После создания навыка туториал также прослеживает, что происходит внутри, когда Claude обнаруживает и выполняет навык. > *"Этот навык научит Claude, как мы хотели бы, чтобы он объяснял код с помощью визуальных схем и аналогий."* ## [00:18] Создание файла навыка Персональные навыки хранятся в домашней директории, а не внутри проекта — поэтому первый шаг: создать новую директорию с именем навыка внутри `~/.claude/skills/`. В ней размещается единственный файл `SKILL.md`. Три раздела принципиально важны: `name` (идентификатор, который Claude сохраняет при запуске), `description` (критерии совпадения, по которым Claude решает, вызывать ли навык) и всё, что идёт после второго разделителя `---` (инструкции, которым Claude следует при срабатывании навыка). > *"Учтите, что мы создаём директорию с именем навыка внутри директории skills."* ## [00:52] Загрузка и тестирование навыка Claude Code сканирует навыки при запуске, а не по запросу — поэтому после создания файла нужно перезапустить сессию. Команда `/skills` должна показать "PR description" (или только что созданный навык). Для проверки создайте ветку с несколькими изменениями и отправьте запрос "Write a PR description for my changes." Claude сообщит, что вызывает навык PR description, прочитает diff и напишет описание по шаблону — в одном и том же формате каждый раз. > *"Тогда Claude покажет вам, что использует навык PR description."* ## [01:25] Как Claude загружает навыки изнутри При запуске Claude Code сканирует четыре места: корпоративные управляемые настройки, персональный `~/.claude/skills/`, директорию `.claude/` проекта и установленные плагины. Загружаются только `name` и `description` — не полное содержимое. Когда приходит запрос, Claude сопоставляет его с сохранёнными описаниями; "объясни, что делает эта функция" пересекается с "объяснять код с визуальными схемами", и навык совпадает. Перед чтением полного SKILL.md Claude запрашивает подтверждение, чтобы пользователь знал, какой контекст вводится. > *"Он загружает только имя и описание каждого навыка, а не полное содержимое. Это важно позже."* ## [02:02] Правила приоритетов и конфликты имён Клонирование репозитория, который поставляет собственные навыки, может создавать конфликты имён. Claude разрешает их по фиксированной иерархии приоритетов: корпоративный (высший) → персональный → проект → плагины (низший). Корпоративный навык `code-review` всегда выигрывает у персонального `code-review`. Практическое решение — описательные имена: `security-review` или `frontend-pr-review` вместо общего `review`, тогда конфликты просто не возникают. > *"Если в вашей компании есть корпоративный навык code review, а вы создаёте персональный навык code review, корпоративная версия имеет приоритет."* ## [02:52] Обновление и удаление навыков Обновить навык — значит напрямую отредактировать файл: открыть SKILL.md, внести нужные изменения, сохранить. Удалить навык — значит удалить директорию. Оба действия требуют перезапуска Claude Code для вступления в силу — список навыков строится один раз при старте сессии и не отслеживает изменения в реальном времени. > *"Отредактируйте файл skill.md, чтобы обновить навык, и перезапустите Claude Code, чтобы изменения вступили в силу."* ## Сущности - **Ведущий туториала Anthropic** (Человек): единственный хост, ведущий туториал по созданию навыков для серии Claude Code skills - **Claude Code** (Программное обеспечение): CLI Anthropic для Claude; сканирует навыки при запуске и применяет их, когда запросы пользователя совпадают с описаниями навыков - **SKILL.md** (Концепция): единственный файл, определяющий навык — содержит YAML-фронтматтер (name, description) и свободный текст инструкций после второго разделителя `---` - **Skills** (Концепция): переиспользуемые именованные наборы инструкций, обучающие Claude устойчивому паттерну поведения; хранятся как директории с файлом SKILL.md - **Enterprise Skills** (Концепция): управляемые организацией навыки, стоящие на вершине четырёхуровневой иерархии приоритетов и перекрывающие персональные, проектные и плагинные навыки - **Anthropic** (Организация): создатель Claude и Claude Code; выпускает эту серию туториалов на claude.com/resources/courses

#claude-code#skills#developer-tools
Чем skills отличаются от других функций Claude Code
3:01
EN/ZH
Watch with Captions
ClaudeClaude Code skills5 месяцев назад

Чем skills отличаются от других функций Claude Code

Claude Code предоставляет разработчикам пять отдельных инструментов настройки — Skills, CLAUDE.md, subagents, hooks и MCP-серверы. Каждый из них создан для своей задачи. Этот трёхминутный туториал показывает, какой инструмент для чего подходит, чтобы вы не тянулись к Skills там, где справится CLAUDE.md, и не настраивали hook там, где нужен subagent. ## [00:02] Пять способов настройки, одна задача выбора В Claude Code пять способов управлять поведением: Skills, CLAUDE.md, subagents, hooks и MCP-серверы. Рассказчик быстро перечисляет все пять и сразу смещает вопрос с «что это такое?» на «какой из них здесь нужен?» > *«Они решают разные задачи. Понимание того, когда что использовать, уберегает вас от создания лишнего.»* Всё остальное в туториале — по сути ответ на эту одну фразу. ## [00:18] CLAUDE.md против Skills: всегда активен vs по запросу CLAUDE.md — файл, который Claude читает в начале каждого разговора, без каких-либо активационных команд. Это правильное место для общепроектных ограничений, которые нельзя забывать: выбор фреймворка, стиль кода, правила базы данных. Skills, напротив, загружаются по запросу: чеклист для ревью PR появляется в контексте только тогда, когда вы реально просите о ревью, а не пока пишете новый код. > *«Используйте Claude MD для общепроектных стандартов, которые действуют всегда — ограничения вроде запрета на изменение схемы базы данных, предпочтения по фреймворку и стиль кода.»* Граница проходит между постоянством и уместностью. Если инструкция должна выполняться при каждом запросе в проекте — её место в CLAUDE.md. Если она нужна лишь иногда — это Skill. ## [01:03] Skills против Subagents: общий контекст vs изолированное выполнение Skills добавляют знания в текущий разговор — их инструкции вливаются в существующий контекст. Subagents работают иначе: получают задачу, создают отдельный контекст выполнения, работают независимо и возвращают результат, не затрагивая основной разговор. > *«Используйте subagents, когда хотите делегировать задачу в отдельный контекст выполнения. Когда нужен доступ к инструментам, которых нет в основном разговоре. Когда важна изоляция между делегированной работой и основным контекстом.»* Skills подходят, когда экспертиза должна направлять рассуждения Claude на протяжении всего текущего разговора. Subagents — когда нужна чёткая граница между основной сессией и делегированной единицей работы: разные инструменты, никакого смешения. ## [01:42] Hooks против Skills: событийный vs запросный подход Hooks срабатывают автоматически при событиях — запустить линтер каждый раз, когда Claude сохраняет файл, проверить входные данные перед конкретным вызовом инструмента. Их запускает не то, что вы просите, а то, что делает Claude. Skills работают наоборот: по запросу, активируясь при совпадении с вашим запросом. > *«Hook может запускать линтер каждый раз, когда Claude сохраняет файл, или проверять входные данные перед определёнными вызовами инструментов. Они все событийные, а skills — запросные. Они активируются в зависимости от того, о чём вы спрашиваете.»* Если поведение должно происходить безусловно при системном событии — это hook. Если оно должно влиять на рассуждения Claude при запросе — это Skill. ## [02:15] Совместное использование всех пяти инструментов Хорошо настроенная среда Claude Code использует каждый инструмент по назначению: CLAUDE.md для постоянных общепроектных стандартов, Skills для узкоспециализированной экспертизы, которая не должна захламлять каждый запрос, hooks для автоматических побочных действий, subagents для изолированной делегированной работы, MCP-серверы для доступа к внешним инструментам. Это не альтернативы — они дополняют друг друга. > *«Не пихайте всё в skills, если другой вариант подходит лучше. Вы можете использовать несколько инструментов одновременно.»* Skills активируются сами, когда тема становится актуальной; CLAUDE.md присутствует всегда; subagents работают в изоляции; hooks срабатывают на события; MCP предоставляет внешние инструменты. Выбирайте подходящий слой для каждой задачи и комбинируйте их свободно. ## Сущности - **Anthropic Tutorial Narrator** (Человек): Ведущий этой серии туториалов по skills в Claude Code, выступающий от имени Anthropic. - **Claude Code** (Программное обеспечение): AI-ассистент для написания кода от Anthropic; главный объект серии туториалов. - **Skills** (Концепция): Пакеты знаний, загружаемые по запросу, которые активируются, когда Claude распознаёт обращение пользователя; добавляют инструкции в текущий контекст разговора. - **CLAUDE.md** (Концепция): Файл конфигурации, автоматически загружаемый в каждый разговор Claude Code; используется для постоянных общепроектных стандартов и ограничений. - **Subagents** (Концепция): Отдельные контексты выполнения, запускаемые для решения делегированных задач в изоляции от основного разговора. - **Hooks** (Концепция): Событийная автоматизация, срабатывающая при конкретных действиях Claude — сохранении файла или вызовах инструментов — независимо от запросов пользователя. - **MCP Servers** (Программное обеспечение): Серверы Model Context Protocol, предоставляющие внешние инструменты сессиям Claude Code. - **Anthropic** (Организация): Создатель Claude Code и издатель серии туториалов по skills в Claude Code.

#claude-code#skills#claude-md