Справочник команд CLI

Правильно разбирайте вывод команд CLI, подтверждения, структурированные ошибки и коды выхода.

Обзор

Используйте установленный исполняемый файл после проверки и установки. Справочник различает обнаружение команд, результаты выполнения, подтверждения предварительной проверки и ответы сервисов.

Манифест действий

При успехе записывается один массив JSON. Каждая запись содержит name, description, inputSchema, executes, а также class. Встроенный пользовательский манифест имеет 25 действий, из которых 22 имеют executes: true. altifigence.analyze.run, altifigence.evolve.launch, а также altifigence.verify.run предназначены только для планирования. Нативные подкоманды CLI имеют собственную конечную справку сверх пользовательского манифеста. Ответ сервера определяет, авторизована и готова ли сервисная операция.

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

Bash
alti commands
Bash
alti xls upstream run --help
alti compute rtl-evolve --help
alti ide workspace hierarchy-plan --help
alti ide cloud search --help
alti ide service workspace replace --help

Офлайн-проверка задания

Подготовьте исходный код и конверт в Первом успехе CLI, затем выполните:

Схема успеха — altifigence.cli.engine-job-preflight.v1. submitted: false и server_authority_verified: false обязательны: хэш исходного кода и форма задания проверены локально, но задание не отправлено и не выполнено. Запрошенный в конверте execution_placement этого не меняет.

Bash
alti --json job validate \
  --job "$ALTI_WORKSPACE/job.json" \
  --workspace-root "$ALTI_WORKSPACE" \
  --source rtl/top.sv

Контракт ошибок JSON

Неудачный --json job validate не записывает подтверждение успеха в stdout и выводит объект altifigence.cli.error.v1 в stderr:

Используйте error.code, когда он доступен. Другие семейства команд имеют собственные схемы ошибок; не предполагайте, что этот конверт применим к любой команде CLI.

JSON
{
  "schema": "altifigence.cli.error.v1",
  "error": {
    "code": "ENGINE_JOB_JSON_INVALID",
    "message": "The engine job JSON is invalid.",
    "retryable": false
  }
}

Код выхода

Код

Толкование

0

Выбранная команда завершилась; прочитайте результат, чтобы понять, сообщает ли он готовность, предварительную проверку, план или выполнение

1

Сбой среды CLI, проверки, транспорта или установки; сервисные сбои могут включать HTTP-ответ

2

Недопустимые аргументы или запрос, отклоненный до транспорта/запуска движка; движок тоже может вернуть этот код

3

Зарезервированное отклонение класса в пути пользовательского манифеста; движок может использовать тот же номер иначе

4

Отказ пользовательского манифеста, включая недоступный вход/идентичность верхнего уровня или отсутствие согласия на загрузку исходного кода

126

Сбой запуска движка или аутентификации установки

127

Необходимый исполняемый файл движка недоступен

Другой ненулевой

Может быть собственным кодом дочернего движка, переданным без изменения

Всегда проверяйте код выхода перед разбором stdout и сохраняйте stderr отдельно. Пустой или частичный выходной файл не является успешным результатом. Сохраненный план — не примененная транзакция, а принятие сервером — не завершение задания.

Команды движка: что выполняется фактически

Адаптеры XLS, compute и нативного DDS используют фиксированные упакованные соседние файлы. Установленное выполнение аутентифицирует соответствующий исполнитель по подписанной записи выпуска; добавление другого исполняемого файла в PATH не исправит отсутствие обязательного соседнего файла. Некоторые старые команды совместимости сохраняют описанное поведение разрешения. См. Поверхность команд.

Без --json stdout движка передается напрямую, чтобы непрозрачный нативный план можно было сохранить. С --json вызов движка обычно создает altifigence.local-engine-execution.v1; его поля stdout и stderr содержат потоки дочернего процесса как строки. Разбирайте внутренний результат отдельно.

Для планов файлов и иерархии передавайте весь нативный результат плана подходящей команде применения. Не передавайте внешний конверт CLI или только дайджест плана. Нативный бэкенд проверяет текущие хэши файлов и условия транзакции.

Вывод сервисов и потоков

ide service возвращает altifigence.dds.service-receipt.v1 с operation, ok, httpStatus, а также ограниченным ответом body. HTTP 409 при замене остается конфликтом и не повторяется. Пустой успешный ответ DELETE остается пустым; из него не создается вымышленный серверный объект JSON.

Нативный поиск DDS и поиск Cloud предоставляют собственные свидетельства совпадений и содержимого. Используйте идентичность бэкенда, в который будете писать; хэш другого бэкенда поиска автоматически не становится допустимым токеном CAS.

ide cloud terminal передает поток байтов терминала в stdout и состояние соединения в stderr. Это не одно подтверждение JSON, даже с глобальным --json. Ограничьте время подключения и сохраните курсор, если планируете переподключение.

--json release install и --json release uninstall выводят altifigence.cli.release-bootstrap.v1 с operation, ok, а также exitCode. Диагностика установщика идет в stderr. Сбои проверки или привилегий могут произойти до появления конверта успеха.

Сохраните результат для автоматизации

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

Для процесса планирования/применения сохраняйте полный необработанный нативный план и используйте тот же проект. Перед применением проверяйте затронутые файлы и текущие хэши. Конфликт требует нового чтения и проверенного плана; это не причина отказаться от проверки хэшей. См. Автоматизация и CI для воспроизводимой локальной проверки.