Урок 9 из 13•10 мин

Создание первого агента

Цели урока

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

  • 1Сконфигурировать персонального AI-агента
  • 2Настроить системный промпт и набор инструментов
  • 3Определить монтируемые директории
  • 4Понять жизненный цикл агента в контейнере

Создаём персонального ассистента

В этом уроке мы создадим персонального AI-агента, который управляет папкой Downloads: сортирует файлы, даёт сводку по новым документам, и отвечает на вопросы о содержимом файлов. Весь процесс настройки происходит через конфигурационный файл.

Конфигурация агента

Каждый агент в NanoClaw описывается в конфигурационном файле. Ключевые параметры: имя, системный промпт, доступные инструменты и монтированные директории.

json
{
  "agents": [
    {
      "name": "download-manager",
      "display_name": "Менеджер загрузок",
      "system_prompt": "Ты — персональный ассистент для управления папкой загрузок. Ты можешь: 1) Просматривать список файлов, 2) Перемещать файлы в папки по категориям, 3) Давать сводку по содержимому PDF и текстовых документов, 4) Удалять дубликаты. Всегда спрашивай подтверждение перед удалением файлов.",
      "tools": [
        "list_files",
        "move_file",
        "read_file",
        "delete_file",
        "create_directory"
      ],
      "mounts": [
        {
          "host": "~/Downloads",
          "container": "/workspace/downloads",
          "mode": "rw"
        },
        {
          "host": "~/Documents/sorted",
          "container": "/workspace/sorted",
          "mode": "rw"
        }
      ],
      "container": {
        "engine": "auto",
        "memory_limit": "512m",
        "network": false
      }
    }
  ]
}

Разбор конфигурации

ПараметрНазначениеПример
nameУникальный идентификатор агентаdownload-manager
display_nameИмя для отображения в WhatsAppМенеджер загрузок
system_promptИнструкции для ClaudeТы — персональный ассистент...
toolsДоступные инструментыlist_files, move_file...
mountsМонтированные директории хоста~/Downloads → /workspace/downloads
container.memory_limitЛимит оперативной памяти512m
container.networkДоступ к интернетуfalse (отключён)

Жизненный цикл агента

1

Пользователь отправляет сообщение в WhatsApp

2

NanoClaw создаёт изолированный контейнер для агента

3

Указанные директории монтируются в контейнер

4

Claude получает системный промпт и сообщение пользователя

5

Агент выполняет задачу, используя доступные инструменты

6

Результат отправляется обратно в WhatsApp

7

Контейнер сохраняется для продолжения диалога (или уничтожается после таймаута)

Тестовый диалог

Вы: «Что у меня в загрузках?»
Агент: «В папке Downloads 47 файлов: 12 PDF, 8 изображений, 15 ZIP-архивов, 7 документов Word, 5 прочих. Хотите, чтобы я рассортировал их по категориям?»
Вы: «Да, рассортируй»
Агент: «Создал папки: Documents, Images, Archives, Other. Переместил 47 файлов. Детали: Documents/ — 19 файлов (12 PDF + 7 DOCX), Images/ — 8 файлов, Archives/ — 15 ZIP, Other/ — 5 файлов. Всё готово!»

Обратите внимание: агенту намеренно отключён доступ к сети (network: false). Это дополнительная мера безопасности — агент, управляющий локальными файлами, не должен иметь возможности отправлять данные в интернет.

Начните с минимального набора инструментов и монтируемых директорий. Добавляйте новые возможности постепенно, когда убедитесь в стабильной работе агента.

*Meta признана в РФ экстремистской организацией и запрещена.

Источник: Qwibit. © 2026 Reymer AI