Level 6 · 2–3 часа

Meeting 6: Инструменты расширения

🎯 Цели встречи

📋 Предварительные требования


📡 Claude Code: Always-On агент

Ключевой сдвиг: от "спросил — ждёшь" к always-on агенту.

Claude Code поддерживает двусторонний чат-мост через Telegram и Discord: проверяй работу агента с телефона, получай уведомления о CI-ошибках, одобряй действия — без открытия терминала.

Зачем:


🤖 Таксономия агентов: 5 уровней

Прежде чем погружаться в инструменты — важно понять, на каком уровне ты строишь.

| Уровень | Тип | Что умеет | Примеры | | :---: | :--- | :--- | :--- | | 1 | Basic Responder | Отвечает на вопросы, генерирует текст | ChatGPT с базовым промптом | | 2 | Router Pattern | Классифицирует запрос, направляет к нужному агенту/функции | Поддержка с авторотером | | 3 | Tool-Calling | Использует внешние инструменты: API, файлы, поиск, код | Claude Code с MCP-серверами | | 4 | Multi-Agent | Несколько специализированных агентов работают вместе | CrewAI, Superpowers | | 5 | Autonomous Agent | Ставит цели, планирует, помнит, действует без участия человека | Claude computer use |

Ключевой вопрос: на каком уровне твоя задача?

💡 Claude Code — это Уровень 3 из коробки, с MCP и Skills легко доходит до Уровня 4. Тебе не нужен Уровень 5 для большинства реальных задач.


🔌 MCP: Model Context Protocol

MCP — стандарт интеграции внешних инструментов в LLM-агентов. Три примитива:

| Примитив | Кем управляется | Что это | | --- | --- | --- | | Tools | Модель | Функции, которые LLM может вызывать: API-запросы, файлы, выполнение кода | | Resources | Приложение | Источники данных (как GET-эндпоинты): файлы, записи БД | | Prompts | Пользователь | Шаблоны и best practices для оптимального использования |


⚠️ MCP: Частые проблемы

Ошибки подключения (~60% проблем):

Окружение:

💡 Проверь статус серверов командой /mcp — показывает все подключённые серверы, их статус и источник конфига.


🔍 MCP: Tool Search

Проблема: 50+ инструментов = 10–55К токенов сразу. Opus 4 при 30+ инструментах → точность падает до 4%.

Решение — динамическая загрузка:

| | До | После | | --- | --- | --- | | Инструментов в контексте | Все сразу | Только нужные | | Токены (58 инструментов) | 55К | 8.5К (−85%) | | Точность (Opus 4.6) | ~4% | 90%+ |

Как работает:

  1. Инструменты помечаются как отложенные
  2. Claude видит только search tool
  3. Ищет нужные инструменты по запросу
  4. Загружает 3–5 релевантных
  5. Использует их

Два режима: Regex (точный поиск по паттернам) и BM25 (семантический поиск).

Включается автоматически при >10% контекста на инструменты, или явно: defer_loading: true.


🌐 MCP: Рекомендуемые серверы

Официальные (Anthropic):

Продуктивность:

Каталоги:


⚙️ MCP: Как подключить сервер

Три способа:

1. CLI (рекомендуется):

claude mcp add github \
  --transport stdio \
  -- npx @modelcontextprotocol/server-github

2. Через settings.json:

// .claude/settings.json или ~/.claude/settings.json
{
  "mcpServers": {
    "github": { ... }
  }
}

3. Через Plugin Marketplace:

/plugin marketplace add <name>

Проверка:

claude mcp list

Удаление:

claude mcp remove <name>

🧩 Agent Skills: Что это

Agent Skills — модульные возможности, расширяющие функциональность Claude Code. Это объединение Software 1.0 (скрипты, логика) и Software 2.0 (LLM) в одном модуле.

Где живут:

Что дают:


📊 Skills: Трёхуровневая загрузка

Прогрессивная модель — загружается только то, что нужно:

| Уровень | Что загружается | Когда | | --- | --- | --- | | 1. Метаданные | YAML frontmatter | При старте Claude | | 2. Инструкции | Основное тело SKILL.md | При триггере навыка | | 3. Ресурсы | Скрипты, шаблоны, данные | Только по требованию |

💡 Навык может содержать десятки файлов, но если задаче нужен один — загрузится только он. Без потерь контекста.


📦 Skills: Официальные навыки Anthropic

Установка коллекции:

/plugin marketplace add anthropics/skills

Document Skills:

Creative:


📚 Skills: Каталоги и ресурсы

Стандарт: все навыки используют формат SKILL.md.


🪝 Claude Code Hooks

Hooks — shell-команды, которые запускаются автоматически в определённые моменты работы Claude Code.

Конфигурация: ~/.claude/settings.json или .claude/settings.json в проекте. Настройка через /hooks.

Типы событий:

| Событие | Когда срабатывает | Пример использования | | --- | --- | --- | | PreToolUse | Перед выполнением инструмента | Логирование, блокировка опасных операций | | PostToolUse | После выполнения инструмента | Автоформатирование кода, запуск тестов | | Notification | Когда Claude ждёт ввода | Звуковое уведомление, сообщение в Slack | | Stop | Когда Claude закончил работу | Статистика сессии, итоговый отчёт | | SessionStart | При старте сессии | Загрузка конфигурации, проверка окружения |


🪝 Hooks: Практические кейсы

1. Уведомления:

2. Автоформатирование:

3. Логирование:

4. Валидация кода:

5. Контроль доступа:

6. CI/CD интеграция:


🪝 Hooks: Примеры конфигурации

Звук + уведомление при ожидании ввода:

"hooks": {
  "Notification": [{
    "matcher": "",
    "hooks": [
      {
        "type": "command",
        "command": "afplay /System/Library/Sounds/Glass.aiff"
      },
      {
        "type": "command",
        "command": "osascript -e 'display notification \"Claude ждёт\" with title \"Claude Code\" sound name \"Glass\"'"
      }
    ]
  }]
}

Автоформатирование TypeScript после редактирования:

"hooks": {
  "PostToolUse": [{
    "matcher": "Edit|Write",
    "hooks": [{
      "type": "command",
      "command": "if echo '$TOOL_INPUT' | grep -q '\\.ts\\|\\.tsx'; then npx prettier --write '$FILE_PATH'; fi"
    }]
  }]
}

Блокировка опасных операций:

"hooks": {
  "PreToolUse": [{
    "matcher": "Bash",
    "hooks": [{
      "type": "command",
      "command": "if echo '$TOOL_INPUT' | grep -qE 'rm -rf|drop table|git push -f'; then echo 'BLOCKED' && exit 1; fi"
    }]
  }]
}

⚡ Superpowers: Дисциплинированный workflow

github.com/obra/superpowers — коллекция из 20+ навыков, которые превращают Claude Code из помощника в систему с дисциплиной.

Философия: не просто инструменты — это процессы, которым Claude следует автоматически.

/plugin marketplace add obra/superpowers

Ключевые workflow:


⚡ Superpowers: Полный цикл разработки

Brainstorm → Plan → Execute → Verify → Review → Finish Branch
  1. Brainstorm — исследование и выбор подхода
  2. Write Plan — пошаговый план: файлы, зависимости, порядок
  3. Execute Plan — реализация с чекпоинтами после каждого шага
  4. Verification — автоматическая проверка: тесты, build, lint
  5. Code Review — структурированный ревью изменений
  6. Finish Branch — решение: merge, PR или cleanup

Что важно:

💡 Дисциплина встроена в процесс, а не зависит от памяти разработчика.


🐍 Multi-Agent Python: CrewAI

Когда нужен Уровень 4 с кастомным Python-кодом — CrewAI даёт минималистичный способ собрать команду агентов.

Три строительных блока:

from crewai import Agent, Task, Crew
from crewai_tools import DuckDuckGoSearchTool

# 1. Агент = роль + цель + бэкстори
researcher = Agent(
    role="Research Analyst",
    goal="Find current trends in AI tooling",
    backstory="You are a senior analyst who finds accurate, up-to-date information",
    tools=[DuckDuckGoSearchTool()],
    verbose=True
)

writer = Agent(
    role="Content Writer",
    goal="Write clear, concise summaries for non-technical readers",
    backstory="You translate complex research into actionable insights",
    verbose=True
)

# 2. Задача = описание + агент + ожидаемый результат
research_task = Task(
    description="Research the top 5 AI coding tools in 2025 with market data",
    agent=researcher,
    expected_output="Bullet list of 5 tools with description and use case"
)

write_task = Task(
    description="Write a 300-word summary of the research for a product manager",
    agent=writer,
    expected_output="A 300-word report in Markdown"
)

# 3. Crew = команда + задачи + запуск
crew = Crew(agents=[researcher, writer], tasks=[research_task, write_task])
result = crew.kickoff()

Когда CrewAI, когда Claude Code + Superpowers?

| | Claude Code + Skills | CrewAI (Python) | | :--- | :--- | :--- | | Языки | Любой (через CLI) | Python | | Контроль | CLAUDE.md, hooks, MCP | Код | | Кастомизация | Markdown skill-файлы | Полная свобода кода | | Лучше для | Рабочего ноутбука, IDE | Production-pipeline, API |

💡 Начни с Claude Code + Superpowers. CrewAI — следующий шаг, когда задача переросла в production-систему.


🏋️ Практика

Выбери одно из заданий:

Задание 1: Настроить MCP-сервер

Задание 2: Создать свой Skill

Задание 3: Настроить Hook


✅ Чеклист


📊 Feedback после Meeting 6

Перед переходом к EXERCISES — заполни my-experiments/feedback-m6.md (скопируй из my-templates/feedback-template.md, 3–5 мин).

Это делает курс самосовершенствующимся: твой сигнал (опционально, анонимно) идёт в course-feedback/ и помогает автору улучшать модули.


Время: 2–3 часа

⬡ Практика

Подключи один MCP-сервер на выбор (GitHub, Notion, или любой другой). Напиши skill-файл для задачи из своей работы и протестируй его через /skill.

Meeting 5: Audio-to-Text Pipeline