@openclaw/ai — це придатна для публікації бібліотечна форма рівня виконання моделей OpenClaw: незалежні від провайдера контракти повідомлень, інструментів і потоків, валідація, діагностика, потоки подій, ізольований реєстр середовища виконання та адаптери з відкладеним завантаженням для восьми вбудованих сімейств API (Anthropic Messages, OpenAI Completions, OpenAI Responses, Azure OpenAI Responses, ChatGPT/Codex Responses, Google Generative AI, Google Vertex, Mistral Conversations).
Вона публікується разом із кореневим пакетом openclaw у кожному випуску, прив’язана до тієї самої версії та має власний npm-shrinkwrap.json, щоб дерево транзитивних залежностей фіксувалося під час установлення. Установлення openclaw автоматично встановлює відповідну версію @openclaw/ai; споживачі бібліотеки можуть залежати від неї безпосередньо, не використовуючи код застосунку OpenClaw.
Швидкий початок
examples/ai-chat.
Контракт проєктування
- За замовчуванням область дії обмежена екземпляром. Імпортування пакета нічого не реєструє глобально.
createApiRegistry()/createLlmRuntime()повертають ізольовані екземпляри;registerBuiltInApiProviders(registry)явно підключає вбудовані транспорти до одного реєстру. Модулі SDK провайдерів завантажуються відкладено під час першого використання. - Політика хоста впроваджується, а не вбудовується. Захист запитів
fetch(наприклад, політика SSRF), приховування секретів у тексті повторного відтворення результатів інструментів, стандартні налаштування строгого режиму інструментів OpenAI та журналювання діагностики — це портиAiTransportHost, налаштовані за допомогоюconfigureAiTransportHost. Стандартні реалізації бібліотеки неактивні; OpenClaw установлює власні робочі реалізації у своєму потоковому фасаді. - Єдина ідентичність потоку подій.
@openclaw/ai/event-stream— це канонічний конструкторEventStream, спільний для ядра OpenClaw, agent-core і зовнішніх споживачів. - Підшляхи
internal/*не є API. Вони існують для самого застосунку OpenClaw і не мають гарантій семантичного версіонування. - Ідентифікатори провайдерів, облікові дані, каталоги моделей, повторні спроби та перемикання після відмови залишаються відповідальністю застосунку. OpenClaw додає ці рівні навколо цього пакета; споживач бібліотеки безпосередньо надає об’єкт
Modelі параметри.