agenteye) — это терминальный клиент для вашего развёртывания AgentEye. Он запрашивает ваши данные (сеансы, журналы событий, оценки) и управляет организацией (ключи API, пользователи, параметры, оповещения, инциденты, сохранённые запросы) — всё, что делает панель управления, из скрипта или кодирующего агента. Каждая команда поддерживает флаг --json, поэтому она одинаково хорошо работает как для человека в терминале, так и для кодирующего агента (Claude Code, Cursor), который её вызывает и обрабатывает результат.
Это CLIagenteye, отличный от коллектора (agenteye-collector). CLI общается с вашей панелью управления; коллектор отправляет события на сервер. См. Установка коллектора для коллектора.
Установка
CLI опубликован в публичном PyPI какagenteye. Поскольку Python SDK AgentEye также использует имя дистрибутива agenteye, установите CLI в изолированной среде (pipx или uv tool), чтобы эти два инструмента никогда не конфликтовали в одном virtualenv:
pip install agenteye также работает, если вы не устанавливаете Python SDK в ту же среду. CLI требует Python 3.10+ и не нуждается в токене GitHub; это публичный пакет.
Установленная команда — agenteye:
Аутентификация
CLI аутентифицируется на панели управления с помощью отправленного по почте одноразового кода:~/.agenteye/cli.json (доступен только вам, права 0600) и по умолчанию действителен 24 часа. По истечении срока действия снова запустите agenteye login.
whoami никогда не вызывает ошибку при отсутствующем или истёкшем сеансе — вместо этого сообщает logged_in: false, поэтому скрипт или агент может безопасно проверить состояние аутентификации (но может завершиться с ненулевым кодом, если базовый URL не установлен или панель управления недоступна).
Требования: ваша электронная почта должна быть разрешена для входа на панель управления (обратитесь к администратору AgentEye), и панель управления должна быть доступна по своему базовому URL (см. Конфигурация). Если вы запросили код и он не пришёл, ваша почта, вероятно, ещё не включена для доступа к панели управления.
Выбор организации (мультитенантность)
Если ваша учётная запись принадлежит нескольким организациям, выберите активную при входе — она будет сохранена и использоваться для всех последующих команд:--org. Если вы принадлежите нескольким и не выбираете одну, CLI их список и просит переиспользовать --org <slug>. Активная организация отправляется на панель управления при каждом запросе, и ваши права решаются для каждой организации — agenteye whoami показывает активную организацию, ваши права в ней и все ваши членства.
Конфигурация
| Параметр | Флаг | Переменная окружения | По умолчанию |
|---|---|---|---|
| Базовый URL панели управления | --base-url | AGENTEYE_DASHBOARD_URL | обязателен (нет значения по умолчанию) |
| Активная организация/тенант | --org | AGENTEYE_ORG | выбирается при входе; сохраняется в ~/.agenteye/cli.json |
| Токен сеанса | --token | AGENTEYE_CLI_TOKEN | из ~/.agenteye/cli.json |
| Вывод JSON | --json | AGENTEYE_CLI_JSON | выключен |
| Пропустить проверку TLS | --insecure / --secure | AGENTEYE_INSECURE | выключен (сохраняется при входе) |
| Тайм-аут запроса (секунды) | --timeout | — | 30 |
| Отключить телеметрию использования | (нет) | AGENTEYE_ANALYTICS_DISABLED (или DO_NOT_TRACK) | выключен (телеметрия включена) |
--base-url https://agenteye.example.com), либо один раз через окружение (она также сохраняется после первого login):
AGENTEYE_HOME (то же соглашение, используемое SDK и коллектором); если задано, cli.json находится в $AGENTEYE_HOME/cli.json.
Самоподписанные или внутренние сертификаты TLS
Если ваша панель управления обслуживается по HTTPS с самоподписанным или внутренним сертификатом (например, имя хоста сырого load-balancer’а), проверка TLS его отклонит с ошибкойCERTIFICATE_VERIFY_FAILED. Передайте --insecure для пропуска проверки сертификата:
--insecure сохраняется в cli.json при входе, поэтому более поздние команды автоматически пропускают проверку; вам не нужно повторять флаг. Передайте --secure для единоразового проверяемого вызова или для повторного включения проверки при следующем входе. CLI выводит предупреждение в stderr перед любой командой, которая обращается к панели управления с отключённой проверкой. Пропуск проверки устраняет защиту от атак «человек посередине»; убедитесь, что вы доверяете сетевому пути к вашей панели управления (VPN, приватная подсеть и т.д.), прежде чем на неё полагаться.
Телеметрия и конфиденциальность
CLI отправляет анонимную аналитику использования на сервис аналитики Exosphere (PostHog): какие команды запускаются (например,sessions, keys create), прошли ли они успешно и сколько времени заняло. Этот сигнал использования информирует о приоритизации функций.
- Данные агента, сеанса или события никогда не покидают вашу инфраструктуру. Сообщается только использование CLI: имя команды и подкоманды (например,
keys create), имена используемых флагов (никогда не их значения), статус успеха/выхода и длительность — плюс событие за действие для мутаций (например,api_key_created,query_run), содержащее только статические имена/перечисления и приблизительные счёты. Ваш URL панели управления, токен сеанса, почта, slug организации, идентификаторы ресурсов, SQL, секреты ключей и фильтры запросов никогда не отправляются. Операторы идентифицируются только по непрозрачному внутреннему id, никогда по почте. - Телеметрия включена по умолчанию. Чтобы её отключить, установите
AGENTEYE_ANALYTICS_DISABLED=1в окружении CLI (CLI также учитывает кроссутильное соглашениеDO_NOT_TRACK=1). - CLI отправляет напрямую на PostHog (
https://us.i.posthog.com). Машине, на которой работает CLI, нужен исходящий доступ к этому хосту; если он заблокирован, телеметрия молча ничего не делает (отправка ограничена по времени, поэтому никогда не задерживает и не ломает команду) и CLI не затронут.
Глобальные опции и соглашения
Прочитайте это один раз; это применяется к каждой команде.- Глобальные опции идут ДО команды.
agenteye --json sessionsверно;agenteye sessions --json— ошибка использования. Глобальные — это--json,--base-url,--org,--token,--insecure/--secure,--timeout,--quietи--no-color. --jsonвыводит чистый JSON в stdout и больше ничего. Строки статуса человека, предупреждения и ошибки идут в stderr, поэтому захват stdout--jsonостаётся чистым для передачи вjqдаже когда показана строка статуса. Без--jsonвы получаете оформленный, раскрашенный вид для человеческих глаз.- Открывайте с помощью
--help. Каждая команда и подкоманда имеет--help(и псевдоним-h):agenteye -h,agenteye sessions -h,agenteye keys create -h. Справка верхнего уровня также перечисляет коды выхода и глобальные опции. Нет глобального машиночитаемого дампа поверхности; используйте для каждой команды--help, плюс специфичные для доменаagenteye query schemaиagenteye settings schema. - Подтверждения автоматически пропускаются для скриптов и агентов. Команды create/update/delete подсказывают «вы уверены?» в интерактивном терминале, но автоматически пропускают подсказку при
--jsonили когда stdin — не TTY — поэтому скрипты и агенты никогда не зависают. Передайте--yes/-yдля явного пропуска. Поскольку подсказка не сработает для агента, агент должен сначала подтвердить деструктивные действия с человеком. - Постраничный вывод: результаты новые первые и курсор-постраничные.
--limit N(псевдоним-n) ограничивает строки и по умолчанию 50;--allавтопостраничивает (порциями по 200 строк) вплоть до--limit— поэтому простой--allвсё равно останавливается в 50. Для полного сканирования передайте высокий явный лимит:--all --limit 1000.--page-size Nконтролирует порцию на запрос (максимум 200);--cursor <id>возобновляет сnext_cursorпредыдущей страницы. - Фильтры времени:
--sinceпринимает относительное окно —15m,1h,6h,24h,7d,30dилиall(предустановки панели управления).--from/--toпринимают явные временные метки ISO-8601 UTC сTи временной зоной (например,2026-06-01T00:00:00Z) для пользовательского диапазона и переопределяют--since; разделённое пробелом или без временной зоны значение — ошибка использования. --fields a,b,c(наevents,sessions,evals,errors) ограничивает вывод этими ключами, для таблицы и--json. Неизвестные имена отклоняются с действительным списком — дешёвый способ открыть имена полей.--file payload.json(или--file -для чтения stdin) поставляет полное тело JSON запроса где ресурс имеет сложную форму — наalerts create/update,settings setиusers create/update. SQL сохранённого запроса использует--sql @file.sql.- Фильтры с несколькими значениями разделены запятыми → сопоставлены как набор (объединение в одном фильтре, AND через фильтры):
--event-type tool_use,tool_result. Опции Click не вариадичны, поэтому--add a bломает — используйте--add a,b, повторите флаг (--add a --add b) или кавычки (--add "a b").
Справочник команд
CLI имеет 18 команд верхнего уровня. Все команды чтения принимают--json и глобальные опции выше; запустите agenteye <command> -h (или <command> <subcommand> -h) для исчерпывающего списка флагов и формы JSON любой из них.
Идентификация — login · logout · whoami · orgs · version · help
orgs проверяет и переключает активного тенанта:
Наблюдение (только чтение) — events · sessions · evals · errors · list
Ни один из них не нуждается в подтверждении. Общие фильтры: --session-id, --agent-id, --env (не --environment) и временной диапазон (--since / --from / --to).
--score KEY:MIN..MAX (на evals, не sessions) повторяется и AND-комбинируется; граница опциональна (..0.5 означает ≤ 0.5, 0.9.. означает ≥ 0.9). До 20 фильтров оценок на запрос. evals --scores-full возвращает полный объект оценки вместо сводки. Для чтения одного сеанса конец-в-конец, объедините тропу события с его оценкой:
Управление (ограничено правами) — keys · users · settings · alerts · incidents
keys — ключи API. Секрет генерируется локально, отправляется на сервер (который хранит только хэш) и показывается один раз на create/regenerate — захватите его тогда. При --json он появляется только в поле key. На что ссылаются по имени.
(permission-set ∪ --add) − --remove. Токены — это slug:action (например, events:read) или slug:action.action для расширения нескольких на одном ресурсе (events:read.add → events:read, events:add). Предустановки: read-only, standard, admin. Права только для человека (keys:update) не могут быть выданы ключу.
users — члены организации, на которых ссылаются по почте (UUID id также принимается).
settings — фиксированный реестр (вы читаете и изменяете существующие ключи; вы не можете создавать новые).
alerts — определения оповещений, на которые ссылаются по имени. create принимает позиционное ИМЯ плюс флаги или полное тело JSON через --file.
incidents — инциденты оповещений, на которые ссылаются по id (короткие id приняты). show выводит полный журнал активности — прочитайте его перед действием.
Аналитика и помощник — query · agent
query — сохранённый SQL ClickHouse плюс ad-hoc runner. Сохранённые запросы на которые ссылаются по имени; SQL проверяется на стороне сервера (только SELECT/WITH, тайм-аут оператора, ограничение строк).
agent — встроенный помощник панели управления (тот же аналитик только для чтения, с которым вы можете общаться в панели управления). Чаты на которые ссылаются по короткому chat-id (разрешение префиксом).
Коды выхода
| Код | Значение |
|---|---|
| 0 | Успех |
| 1 | Неожиданная ошибка (например, панель управления вернула 5xx) |
| 2 | Ошибка использования (неправильные аргументы, неизвестная команда/флаг, коллизия имён) |
| 3 | Невозможно достичь панель управления |
| 4 | Не вошли или сеанс истёк; запустите agenteye login |
| 5 | Аутентифицированы, но вашей учётной записи не хватает требуемого права (сообщение его называет) |
| 6 | Запрошенный ресурс не найден (например, неизвестный id сеанса или инцидента) |
4 для подсказки вам переаутентифицироваться, или на 5 для поверхности отсутствующего права. См. CLI рецепты для агентов для обработки кодов выхода и форм вывода JSON.
См. также
- CLI рецепты для агентов — скопируйте-вставьте шаблоны запросов, одноразовые
jq, проекции--fields, обработка кодов выхода и формы вывода JSON, написанные для кодирующих агентов, управляющих CLI. - Навык CLI AgentEye — упакуйте этот CLI как устанавливаемый навык Claude Code / Codex, чтобы кодирующий агент управлял AgentEye из запросов на простом английском.
- Ключи API — модель прав за
keys create --add …. - ИИ помощник — включение помощника, с которым общается
agent ask.

