Команда CLI

datarim

CLI для внешних AI-агентов — программный доступ ко всему pipeline через HTTP webhook (AAL 3 opt-in)

Обзор

CLI datarim — это автономный неинтерактивный интерфейс командной строки, предназначенный для внешних AI-агентов и систем автоматизации. Он предоставляет доступ ко всему конвейеру Datarim — от приёма задачи до доставки артефакта — через HTTP webhook. CLI использует JSON-формат запросов и поддерживает все этапы рабочего процесса Datarim: /dr-init, /dr-cowork, /dr-approve, /dr-exit и /dr-status.

Представлен в v2.18.0 (TUNE-0271). CLI применяет AAL 3 (адаптивный уровень аутентификации) для каждого запроса, требуя проверки цифровой подписи, защиты от повторного использования nonce и токенов с ограниченным временем действия.

Когда использовать вместо слэш-команд

СценарийСлэш-командаCLI datarim
Интерактивные сессии (оператор-человек)РекомендуетсяНе подходит
Автоматизированные / CI / агентные конвейерыНе поддерживаетсяРекомендуется
Неинтерактивный вызов из скриптаНе поддерживаетсяОбязателен
AAL 3 аутентифицированные операцииОпциональноОбязательно
Пакетная обработка (несколько задач)Не поддерживаетсяПоддерживается через --batch

Установка

Дистрибутив CLI — это один PHP-скрипт без внешних зависимостей. Запустите автоматический установщик:

curl -sSL https://datarim.club/cli/install.sh | bash

Скрипт установит команду datarim в /usr/local/bin и создаст конфигурационный каталог ~/.config/datarim/. Проверьте установку:

datarim version

Подкоманды

ПодкомандаОписание
runВыполнить этап конвейера Datarim. Принимает JSON-тело запроса из stdin или через --request. Возвращает JSON-ответ.
auditПоказать журнал аудита для конкретной задачи или сессии. Обязательный аргумент: --task-id.
haltПриостановить выполняемый конвейер. Обязательный аргумент: --task-id.
resumeВозобновить приостановленный конвейер. Обязательный аргумент: --task-id.
purgeУдалить все артефакты и логи завершённой задачи. Обязательный аргумент: --task-id. Требует подтверждения, если не указан --force.
statsПоказать агрегированную статистику конвейера: количество задач, активные сессии, средняя длительность, частота ошибок.
versionВывести версию CLI и завершить работу.
helpПоказать эту справочную информацию.

Механизмы защиты AAL 3

Каждый запрос CLI datarim должен удовлетворять шести требованиям AAL 3:

  1. Цифровая подпись — полезная нагрузка запроса подписывается зарегистрированной парой ключей Ed25519. Открытый ключ предоставляется при регистрации агента.
  2. Защита от повторного использования nonce — каждый запрос содержит уникальный nonce. Сервер отклоняет уже использованные nonce.
  3. Токены с ограниченным временем — каждый токен действителен не более пяти минут. Просроченные токены отклоняются.
  4. Привязка к сессии — подпись привязана к идентификатору текущей сессии. Повторное воспроизведение через разные сессии невозможно.
  5. Журнал аудита — каждое изменение записывается в неизменяемый журнал аудита с идентификатором отправителя, меткой времени и дайджестом запроса.
  6. Ограничение частоты — не более 60 аутентифицированных запросов в минуту на одного отправителя. Действуют лимиты на всплески.

Коды возврата

КодЗначение
0Успех
17Неверный формат запроса (некорректный JSON)
18Ошибка аутентификации (неверная или отсутствующая подпись)
21Обнаружено повторное использование nonce
22Срок действия токена истёк
23Превышен лимит запросов
24Задача не найдена
25Этап конвейера недопустим в текущем состоянии
26Внутренняя ошибка сервера
27Ошибка конфигурации клиента

Связанные ссылки

Подробное описание всех опций, примеры использования и руководство по настройке AAL 3 приведены в файле docs/cli.md.