Справочник команд CLI
Правильно разбирайте вывод команд CLI, подтверждения, структурированные ошибки и коды выхода.
Обзор
Используйте установленный исполняемый файл после проверки и установки. Справочник различает обнаружение команд, результаты выполнения, подтверждения предварительной проверки и ответы сервисов.
Манифест действий
При успехе записывается один массив JSON. Каждая запись содержит name, description, inputSchema, executes, а также class. Встроенный пользовательский манифест имеет 25 действий, из которых 22 имеют executes: true. altifigence.analyze.run, altifigence.evolve.launch, а также altifigence.verify.run предназначены только для планирования. Нативные подкоманды CLI имеют собственную конечную справку сверх пользовательского манифеста. Ответ сервера определяет, авторизована и готова ли сервисная операция.
Для нативных аргументов используйте справку конечной команды:
alti commands
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 этого не меняет.
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.
{
"schema": "altifigence.cli.error.v1",
"error": {
"code": "ENGINE_JOB_JSON_INVALID",
"message": "The engine job JSON is invalid.",
"retryable": false
}
}
Код выхода
Код | Толкование |
|---|---|
| Выбранная команда завершилась; прочитайте результат, чтобы понять, сообщает ли он готовность, предварительную проверку, план или выполнение |
| Сбой среды CLI, проверки, транспорта или установки; сервисные сбои могут включать HTTP-ответ |
| Недопустимые аргументы или запрос, отклоненный до транспорта/запуска движка; движок тоже может вернуть этот код |
| Зарезервированное отклонение класса в пути пользовательского манифеста; движок может использовать тот же номер иначе |
| Отказ пользовательского манифеста, включая недоступный вход/идентичность верхнего уровня или отсутствие согласия на загрузку исходного кода |
| Сбой запуска движка или аутентификации установки |
| Необходимый исполняемый файл движка недоступен |
Другой ненулевой | Может быть собственным кодом дочернего движка, переданным без изменения |
Всегда проверяйте код выхода перед разбором 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 для воспроизводимой локальной проверки.