SDK
Справочник API SDK
Полный обзор конструктора, методов и хелперов клиента.
new AistAgentClient(options)
| Опция | Тип | Назначение |
|---|---|---|
baseUrl | string | Адрес шлюза AIST Agent. |
token | string | JWT для заголовка Authorization: Bearer. |
headers? | object | Дополнительные заголовки на каждый запрос. |
timeoutMs? | number | Таймаут одиночного HTTP-запроса (0 — без таймаута). |
fetch? | function | Кастомный fetch (тесты / Node < 18). |
Низкоуровневые методы
Соответствуют эндпоинтам API один к одному.
| Метод | Эндпоинт |
|---|---|
createTask(input, signal?) | POST /api/tasks → { uuid, status } |
getTask(uuid, signal?) | GET /api/tasks/{uuid} → Task |
submitToolResults(uuid, results, signal?) | POST /api/tasks/{uuid}/tool-results |
uploadFile(file, opts?) | POST /api/files → input-ready объект |
getStorageBase(signal?) | GET /api/storage/base → string |
Высокоуровневые хелперы
waitForTask(uuid, opts?)
Опрашивает задачу, пока статус не попадёт в stopOn (дефолт: completed/failed/interrupted).
| Опция | Назначение |
|---|---|
pollIntervalMs | Интервал опроса. Дефолт 1500. |
timeoutMs | Общий таймаут ожидания (0 — без таймаута). |
stopOn | Статусы, на которых ожидание прекращается. |
onPoll | Колбэк после каждого опроса. |
signal | AbortSignal для отмены. |
runTask(input, opts?)
Создание задачи + автоматический interrupt-цикл клиентских инструментов до терминального статуса. Опции — на странице runTask и client tools.
textInput / fileInput / voiceInput
Функции-хелперы для сборки элементов массива input с корректным type.
ts
textInput('Привет') // { type: 'text', text: 'Привет' } fileInput({ id: '42', name: 'a.pdf', mime_type: 'application/pdf' }) voiceInput({ id: '7', name: 'v.ogg', mime_type: 'audio/ogg' })
Ключевые типы
| Тип | Описание |
|---|---|
TaskStatus | 'pending' | 'processing' | 'interrupted' | 'completed' | 'failed' |
Task | Ответ GET /api/tasks/{uuid}: uuid, status, turn, error, … |
Turn | output, messages, metadata, interrupt? |
InputItem | TextInputItem | FileInputItem | VoiceInputItem |
PendingToolCall | { id, name, arguments } — вызов при interrupted |