Agno (в поиске его часто пишут «Agno ai») — фреймворк с открытым кодом для построения агентов на Python: вы описываете модель, инструменты и память, а затем запускаете агента как сервис со своим API. Документация делит продукт на три слоя: SDK для сборки агентов, команд и рабочих процессов, среду выполнения AgentOS и панель управления AgentOS UI. Если у задачи есть ответственный сотрудник и набор примеров для проверки, Agno даёт аккуратный каркас; если ни того ни другого нет, начинать лучше с постановки задачи, а выбор фреймворка отложить.
Три слоя Agno
Agno состоит из SDK для сборки агентов, среды выполнения AgentOS, которая отдаёт их как API и MCP-сервер, и панели управления; код опубликован под лицензией Apache-2.0.
Репозиторий agno-agi/agno активен: на 5 октября 2026 последний коммит датирован этим же днём, свежий выпуск вышел 2 октября. Документация на docs.agno.com описывает продукт как платформу для агентов, шире одной библиотеки: SDK собирает агента, AgentOS запускает его с хранилищем сессий, трассировкой и ролевым доступом, панель показывает запуски. Шаблоны развёртывания лежат отдельными репозиториями для Docker и облаков.
От конструктора вроде n8n фреймворк отличается тем, что агент здесь пишется кодом, тогда как в конструкторе он собирается схемой. Разбор конструкторской ветки есть в материале про агента в n8n; код выбирают, когда нужны своя логика проверки, свой формат хранения и версионирование в репозитории. Вызов инструментов моделью описан в статье про function calling, а Agno собирает вокруг этого механизма остальное.
Фреймворк подходит команде, где есть разработчик на Python. Если собирать некому, разумнее начать с конструктора или готового агента, а решение о коде отложить до появления повторяемой задачи. Отдельно оцените, кто будет сопровождать сервис после запуска: обновления версий, ключи моделей, копии базы и разбор сбоев ложатся на команду, и эту нагрузку закладывают в план заранее.
Инструменты агента
Инструмент в Agno — функция либо готовый набор, который агент может вызвать. README называет более ста интеграций: GitHub, Slack, Postgres и другие. Для рабочего процесса важнее обратное: какие инструменты вы вообще подключаете. Каждый инструмент расширяет то, что агент способен сделать с вашими системами, поэтому список составляют от задачи, и каталог интеграций для этого вторичен.
| Тип инструмента | Пример задачи | Правило допуска |
|---|---|---|
| Чтение данных | Найти заявку или документ | Узкие права, фильтрация полей на стороне функции |
| Расчёт | Сверить суммы или сроки | Считает код, модель получает результат |
| Запись во внешнюю систему | Создать задачу, изменить статус | Только после подтверждения человека |
| Опасные операции | Удаление, оплата, массовая рассылка | Вне набора агента |
Принцип остаётся прежним: полные данные обрабатывает функция, модель объясняет и предлагает, человек сверяет, а права проверяет сервер. Функция инструмента получает идентификатор, сама ходит в систему и возвращает короткий результат. Модель в любой момент может запросить лишнее, поэтому фильтр полей и проверка права вызова живут внутри функции. Описание инструмента для модели пишите коротко и однозначно: что делает, что принимает, что возвращает.
Память и сессии
README описывает хранение сессий, памяти, знаний и трассировок в вашей собственной базе, а шаблоны поднимают Postgres. Это важное свойство: история разговоров и накопленная память лежат у вас, а их содержимое можно просмотреть, экспортировать и удалить по запросу. Что именно агент запоминает, решаете вы. Для рабочего процесса полезно хранить договорённости и предпочтения сотрудника, а персональные данные клиентов в память складывать нельзя.
Память требует правил. Запись в неё проходит так же, как запись в любую систему: что допустимо хранить, кто видит, как долго живёт, как удаляется. Устаревший факт в памяти опаснее пустой памяти, поскольку модель повторяет его уверенно. Поэтому у записей есть дата и источник, а раз в квартал владелец процесса просматривает накопленное. Для сравнения: память на уровне MCP-сервера разобрана в материале про память для ИИ-агента.
Условный пример: отдел поддержки хранит в памяти агента формулировки, которые ему одобрил руководитель, и ссылки на справочные страницы. Карточки клиентов в памяти отсутствуют, они читаются инструментом из учётной системы в момент запроса и в хранилище сессии попадают только в виде идентификатора. Благодаря этому очистка памяти затрагивает лишь рабочие формулировки, а аудит видит, откуда взят каждый факт.
Отдельный вопрос — многопользовательский режим. Среда выполнения заявляет ролевой доступ на токенах JWT и изоляцию пользователей и команд. Проверьте это на тестовых учётных записях: сотрудник отдела продаж видит только свои сессии, чужие сессии бухгалтерии ему закрыты, и проверку проводят до запуска, задолго до первой жалобы.
Какие данные вашему агенту нужно помнить, а какие читать заново?
Пределы выполнения
Агент в цикле вызывает инструменты, пока модель считает задачу нерешённой. Без пределов такой цикл опасен: он тратит токены, нагружает внешние системы и способен повторять одно действие. Пределы задают на нескольких уровнях: число шагов и вызовов инструментов за запуск, время запуска, список разрешённых инструментов и потолок расхода по токенам. Названия параметров сверяйте в документации Agno для вашей версии: интерфейс развивается быстро.
Среда выполнения умеет приостанавливать запуск до подтверждения пользователя и блокировать инструменты, которые требуют согласования администратора. Эту возможность используйте для всякой записи. Серверная проверка прав стоит над подтверждением: даже одобренный запрос выполняется, только если у пользователя есть право на операцию.
Расход ограничивайте и деньгами. Модель вызывается на каждом шаге цикла, поэтому потолок по токенам на запуск и на сутки задаётся в вашем коде или на стороне провайдера модели. Актуальные тарифы читайте на странице цен выбранного вендора, а превышение потолка превращайте в остановку запуска с сообщением сотруднику. Серия повторяющихся вызовов одного инструмента с одинаковыми параметрами служит сигналом петли: такой запуск прерывают и передают человеку.
README также сообщает о телеметрии: Agno отправляет событие на каждый запуск агента, причём тексты запросов и ответов, по README, остаются вне события, и отключается она переменной окружения AGNO_TELEMETRY со значением false. Для корпоративного контура отключение задают в конфигурации развёртывания сразу, а список исходящих соединений ограничивают.
Рабочий набор
Журнал прогона хранит версию кода, модель, версию набора, список вызванных инструментов с параметрами и итог сверки. Среда выполнения ведёт трассировки, но расхождения между ожидаемым и фактическим результатом фиксирует ваш скрипт проверки, поскольку критерий «верно» принадлежит процессу. Результат пилота оценивает владелец задачи по тому же журналу.
Тест агента строят на наборе реальных, но обезличенных задач: двадцать-тридцать типовых запросов с известным правильным результатом и несколько запросов-ловушек, где правильный ответ звучит как отказ. Набор хранится в репозитории рядом с кодом, версия набора записывается в журнал каждого прогона. Любое изменение модели, инструкции или инструмента требует повторного прогона всего набора.
- Опишите одну задачу и её результат: что агент возвращает и кто проверяет.
- Подключите минимальный набор инструментов чтения и проверьте, что список в панели совпадает с задуманным.
- Прогоните рабочий набор и отметьте промахи: неверный инструмент, лишний вызов, выдуманный факт.
- Установите пределы по шагам и времени и повторите прогон с ловушками.
- Включите запись только через подтверждение и проведите пилот на одной группе сотрудников.
От библиотек, которые дают только цикл агента, Agno отличает ориентир на платформу: готовая среда выполнения, хранилище и панель. Выбор между ними делают на вашем тестовом наборе, а описания возможностей второстепенны. Другие фреймворки агентов, например CrewAI, разобраны в статье про CrewAI для команды; общий путь к агентам в компании описывает страница про ИИ-агентов для бизнеса.
Соберите из Agno агента-читателя с одним инструментом и десятком вопросов с известными ответами. Записью и памятью занимайтесь после того, как чтение работает без промахов.