🤒 Как делать агентов и скиллы?
Итак, субагент – это агент, которого запускает другой агент. А что такое скилл? Его же тоже запускает агент? Чем тогда скилл от субагента отличается? И как их вообще создавать, насколько это сложно?
📌 Во-первых – тот "чатик", в котором вы общаетесь с ллм – это тоже агент. Один большой умный агент. Иначе, как я объяснял выше, этот чатик не умел бы делать ничего, кроме как получать текст на вход и отдавать текст на выход. Даже удержание контекста между вопросами – это уже агентские штучки над ллм.
📌 Во-вторых, агент – это тупо .md -файл (текстовый файл с удобной разметкой маркдаун). Тупо текст, да. А скилл – это тоже .md-файл, но лежащий в отдельной папке вместе с другими необходимыми ему файлами.
💪 Как сделать скилл:
– Делаете текстовый файл SKILL.md, в начале которого будет (обязательно):
---
name: название-вашего-скилла
description: описание-вашего-скилла
---
А дальше в файле может быть любая текстовая инструкция, описывающая, че вы хотите от этого скилла (хоть от балды её напишите, "как вам видится").
Файл этот кладёте в папку .claude/skills/название-вашего-скилла – это и будет ваш скилл, который вы сможете вызывать через /название-вашего-скилла в чате с агентом, или же он сам будет вызывать его, когда сочтёт нужным (он будет понимать это по вашему description). В эту же папку вы можете положить любые другие файлы, которые нужны для вашего скилла, на которые вы будете ссылаться в его SKILL.md.
🎩 Как сделать агента:
Да всё то же самое, только вместо .claude/skills/название-вашего-скилла/SKILL.md создаёте файл .claude/agents/название-вашего-агента.md. Его тоже другие агенты будут находить по description.
У агента, в отличие от навыка, помимо name и description ещё можно указать model (какую ллм использовать). А ещё у них обоих можно указать tools (какие инструменты доступны: например, можно написать tools: Read и он сможет только читать, но не сможет ниче создавать или грепать или баш запускать).
❗️ Главное отличие скилла от субагента: скилл вызывается в текущем контексте агента, который его вызвал. А вот когда агент вызывает субагента – у субагента свой контекст. И важнейшее отличие ваших инструкций после name и description в скиллах и субагентах следующее: в субагентах то, что вы напишете, станет системным промптом субагента, а в скилле – это просто инструкция, применяемая в контексте текущего агента.
Post #196
627
- ❤ 5
- 🔥 5
- 👏 2