---
summary: 'Як OpenClaw структурує вбудоване середовище виконання агента: організація коду, межі, маніфести ресурсів і вибір середовища виконання.'
title: Архітектура середовища виконання агента
x-i18n:
    generated_at: "2026-07-16T17:26:56Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 071a0cb076230ce02f2c2c1c21971379cf617f24faa8a9733570aae30a062019
    source_path: agent-runtime-architecture.md
    workflow: 16
---

OpenClaw володіє вбудованим середовищем виконання агента. Код середовища виконання розташований у `src/agents/`, транспорт моделей/провайдерів — у `src/llm/`, а контракти для плагінів надаються через модулі-агрегатори `openclaw/plugin-sdk/*`.

## Структура середовища виконання

| Шлях                                | Відповідає за                                                                                                                                                                                                                      |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `src/agents/embedded-agent-runner/` | Вбудований цикл спроб (`run.ts`, `run/`), вибір моделі та нормалізацію провайдера (`model*.ts`), параметри запитів для кожного провайдера (`extra-params.*`), Compaction, підключення транскриптів і сеансів.                            |
| `src/agents/sessions/`              | Збереження сеансів (`session-manager.ts`), виявлення ресурсів (`package-manager.ts`, `resource-loader.ts`), завантаження `extensions` у межах сеансу, шаблони запитів, навички, теми та засоби візуалізації інструментів на основі TUI (`tools/`). |
| `packages/agent-core/`              | Багаторазово використовуване ядро агента (`@openclaw/agent-core`): цикл агента, типи середовища, повідомлення, допоміжні засоби Compaction, шаблони запитів, навички та контракти сховища сеансів.                                                           |
| `src/agents/runtime/`               | Фасад OpenClaw, який з’єднує `@openclaw/agent-core` із середовищем виконання LLM у SDK плагінів і повторно експортує його разом із локальними проксі-утилітами.                                                                                             |
| `src/agents/agent-tools*.ts`        | Визначення інструментів, що належать OpenClaw, схеми параметрів, політику інструментів, адаптери до та після виклику інструментів, а також інструменти редагування на хості й у пісочниці.                                                                                            |
| `src/agents/agent-hooks/`           | Вбудовані перехоплювачі середовища виконання: запобіжник Compaction, інструкції Compaction, скорочення контексту.                                                                                                                                   |
| `src/agents/harness/`               | Реєстр середовищ, політику вибору та життєвий цикл вбудованих і зареєстрованих плагінами середовищ.                                                                                                                       |
| `src/llm/`                          | Реєстр моделей/провайдерів, допоміжні засоби транспорту та реалізації потокового передавання для окремих провайдерів (`src/llm/providers/`).                                                                                                          |

## Межі

Ядро викликає вбудоване середовище виконання через модулі OpenClaw і модулі-агрегатори SDK; зовнішніх пакетів фреймворків агентів більше немає. Плагіни використовують документовані точки входу `openclaw/plugin-sdk/*` і не імпортують внутрішні компоненти `src/**`.

`@earendil-works/pi-tui` залишається сторонньою залежністю: це набір термінальних компонентів, який використовується локальним TUI та засобами візуалізації інструментів сеансу. Його перенесення до внутрішнього коду потребувало б окремої роботи з включення залежності до репозиторію.

## Маніфести

Пакети ресурсів оголошують ресурси OpenClaw у метаданих `package.json`. Записи є шляхами до файлів або шаблонами пошуку відносно кореня пакета:

```json
{
  "openclaw": {
    "extensions": ["extensions/index.ts"],
    "skills": ["skills/*.md"],
    "prompts": ["prompts/*.md"],
    "themes": ["themes/*.json"]
  }
}
```

Для типів ресурсів, не зазначених у маніфесті, використовується виявлення стандартних каталогів `extensions/`, `skills/`, `prompts/` і `themes/`.

## Вибір середовища виконання

- Ідентифікатор вбудованого середовища виконання — `openclaw`. Застарілий псевдонім `pi` нормалізується до `openclaw`; `codex-app-server` нормалізується до `codex`.
- Середовища плагінів реєструють додаткові ідентифікатори середовища виконання (наприклад, `codex`).
- Політика середовища виконання визначається конфігурацією `agentRuntime.id` у межах моделі/провайдера (запис моделі має пріоритет над записом провайдера). Невстановлене значення або `default` перетворюється на `auto`.
- `auto` вибирає зареєстроване середовище плагіна, яке підтримує ефективний маршрут провайдера, а інакше — вбудоване середовище виконання OpenClaw. Самого лише префікса провайдера або моделі ніколи не достатньо для вибору середовища.
- OpenAI може неявно вибрати `codex` лише для точного офіційного HTTPS-маршруту Platform Responses або ChatGPT Responses без явно заданого перевизначення запиту. Адаптери Completions, власні кінцеві точки та маршрути з явно заданою поведінкою запитів залишаються на `openclaw`; офіційні кінцеві точки зі звичайним HTTP відхиляються. Див. [Неявне середовище виконання агента OpenAI](/uk/providers/openai#implicit-agent-runtime).

## Пов’язані матеріали

- [Робочий процес середовища виконання агента OpenClaw](/uk/openclaw-agent-runtime)
- [Середовища виконання агентів](/uk/concepts/agent-runtimes)
