Хост-функции
Хост-функции -- это API-поверхность, предоставляемая PRX WASM-плагинам. Они обеспечивают контролируемый доступ к возможностям хоста: HTTP-запросам, файловым операциям и состоянию агента.
Доступные хост-функции
HTTP
| Функция | Описание | Разрешение |
|---|---|---|
http_request(method, url, headers, body) | Выполнение HTTP-запроса | net.http |
http_get(url) | Сокращение для GET-запроса | net.http |
http_post(url, body) | Сокращение для POST-запроса | net.http |
Файловая система
| Функция | Описание | Разрешение |
|---|---|---|
fs_read(path) | Чтение файла | fs.read |
fs_write(path, data) | Запись файла | fs.write |
fs_list(path) | Список содержимого каталога | fs.read |
Состояние агента
| Функция | Описание | Разрешение |
|---|---|---|
memory_get(key) | Чтение из памяти агента | agent.memory.read |
memory_set(key, value) | Запись в память агента | agent.memory.write |
config_get(key) | Чтение конфигурации плагина | agent.config |
Журналирование
| Функция | Описание | Разрешение |
|---|---|---|
log_info(msg) | Журналирование на уровне info | Всегда разрешено |
log_warn(msg) | Журналирование на уровне warn | Всегда разрешено |
log_error(msg) | Журналирование на уровне error | Всегда разрешено |
Манифест разрешений
Каждый плагин объявляет требуемые разрешения в своём манифесте:
toml
[permissions]
net.http = ["api.example.com"]
fs.read = ["/data/*"]
agent.memory.read = true