Инженерия

Kronos Agent OS: операционный слой для AI-агентов в open source

Что такое Agent OS?

Agent OS — операционный слой между LLM и пользователем. В отличие от агентских фреймворков, которые оптимизируют отдельный разговор, Agent OS управляет полным жизненным циклом агента: персистентная память, навыки, аудит инструментов, задачи по расписанию, координация нескольких агентов и дашборд для оператора.

TL;DR

  • -KAOS — self-hosted Python-рантайм для AI-агентов с 5-слойной памятью (сессии, FTS5, векторы, граф знаний, shared facts), progressive disclosure навыков и 12+ автоматизациями по расписанию
  • -Собственный ReAct-движок без LangGraph — 200 строк, полный контроль над tool calling, таймауты, аудит-трейл
  • -5-слойная безопасность: prompt injection shield (28 паттернов), sanitizer, loop detector, output validator, cost guardian ($5/день)
  • -Swarm Mode: 6 независимых агентов координируются через SQLite IMMEDIATE-транзакции — детерминированный арбитраж без pub/sub
  • -Сравнение с Hermes Agent (100K+ stars, learning loop, но flat-file память) и OpenClaw (347K stars, 50+ интеграций, но 9 CVE за 4 дня)
  • -MIT-лицензия, pip install, офлайн-демо без API-ключей

Kronos Agent OS: операционный слой для AI-агентов в open source

Self-hosted Python-рантайм для AI-агентов с памятью, навыками, автоматизациями, мультиагентной координацией и дашбордом. Сравнение с Hermes Agent и OpenClaw.


Зачем ещё один агентский фреймворк

Агентских фреймворков много: OpenClaw (~347K звёзд), Hermes Agent (100K+), LangGraph, CrewAI, AutoGen. Большинство из них сфокусированы на разговоре — промпты, tool calling, ретривал. Это нужная работа, но она закрывает только часть задачи.

Когда агент работает неделями, а не минутами, появляются другие требования: инспектируемое состояние, аудит tool-вызовов, задачи по расписанию, контроль безопасности, координация нескольких агентов. Существующие фреймворки оставляют эти задачи разработчику.

KAOS (Kronos Agent OS) — операционный слой вокруг агента: память, навыки, инструменты с аудитом, автоматизации, мультиагентная координация, дашборд и capability gates из коробки.


Что такое KAOS

KAOS — self-hosted Python-рантайм для долгоживущих AI-агентов. «Долгоживущий» значит: агент сохраняет состояние между сессиями, выполняет задачи по расписанию, использует инспектируемую память и управляется через локальный дашборд — всё без облачного сервиса.

pip install kronos-agent-os
kaos demo

Демо работает офлайн, без API-ключей.

Ментальная модель:

Пользователь / Cron / Коннектор → KAOS Runtime
                                     ├── Память (сессии, FTS5, векторы, граф знаний)
                                     ├── Навыки (workspace-процедуры)
                                     ├── Tool Gateway (MCP, кастомные, браузер, динамические)
                                     ├── Автоматизации (12+ задач по расписанию)
                                     ├── Координация суб-агентов (опциональный swarm)
                                     └── Dashboard Control Room

KAOS — не фреймворк для создания агентов. Это операционная система для их запуска.


Ландшафт: Hermes, OpenClaw и все остальные

Hermes Agent (Nous Research)

100 000+ звёзд на GitHub, 140+ контрибьюторов. Главная фича — learning loop: агент создаёт навыки из опыта, улучшает их при использовании и строит модель пользователя между сессиями. Чекпоинт самооценки — каждые 15 вызовов инструментов.

Сильные стороны:

  • Самообучающиеся навыки с progressive disclosure — библиотека растёт, стоимость токенов нет
  • Диалектическое моделирование пользователя (Honcho)
  • 6 бэкендов: локальный, Docker, SSH, Daytona, Singularity, Modal (serverless persistence)
  • Встроенная миграция с OpenClaw
  • Любой LLM-провайдер без lock-in

Слабые стороны:

  • Память — плоские Markdown-файлы с жёстким лимитом символов. Превысил лимит — получи ошибку, чисти руками. Нет семантического поиска, нет графа связей, нет автоочистки устаревших фактов. Structured memory с typed nodes и graph edges — только в планах (GitHub Issue #346, март 2026)
  • Только один провайдер памяти одновременно. Нельзя комбинировать Qdrant + FTS5 + flat files
  • Нет multi-agent ledger. Сабагенты работают параллельно, но без координации: нет арбитража, нет общего состояния, нет anti-flood
  • Нет автоматизаций по расписанию. Hermes ждёт, пока ты заговоришь. Не дайджестит новости, не консолидирует память ночью, не делает еженедельную аналитику
  • Нет дашборда и аудит-трейла. Учится — а что именно делал, не видно
  • Безопасность имплицитна. Нет capability gates, нет редактирования tool-вызовов, нет cost guardian

OpenClaw

~347 000 звёзд — один из самых быстрорастущих open-source проектов в истории GitHub. TypeScript/Node.js. Gateway-first архитектура. 50+ интеграций с мессенджерами.

Сильные стороны:

  • Экосистема интеграций без конкурентов: WhatsApp, Telegram, Discord, Slack, Signal, iMessage, Matrix, Teams и ещё 40+
  • Workspace на Markdown-файлах (SOUL.md, MEMORY.md, TOOLS.md) — человекочитаемо и редактируемо
  • Canvas — живой UI, которым управляет агент
  • ClawHub — маркетплейс навыков
  • openclaw onboard — пошаговый онбординг из терминала

Слабые стороны:

  • 9 CVE за 4 дня в марте 2026. Включая CVE-2026-25253 (CVSS 8.8) — небезопасный WebSocket, утечка auth-токенов
  • Supply chain атака на ClawHub: из 2857 навыков 341 оказались вредоносными (аудит Koi Security). Маркетплейс навыков стал вектором атаки, а не преимуществом
  • Multi-agent — недетерминирован. LLM решает, когда запускать ревьюера, когда ретраить. sessions_spawn создаёт дочерних агентов через LLM-сессию — flow-control непредсказуем
  • Память — плоские файлы. Нет FTS5, нет семантического поиска, нет графа. Для простых случаев работает; для агента, который должен помнить тысячи фактов месяцами — нет
  • Навыки статичны. Агент не учится — навыки работают одинаково в день 1 и в день 100
  • Нестабильность обновлений. Reddit-треды регулярно упоминают breaking changes между версиями

Архитектура KAOS: технический разбор

1. Собственный ReAct-движок (без LangGraph)

KAOS использует кастомный ReAct-цикл (engine.py), построенный напрямую на langchain_core messages и tools. Без LangGraph. Без фреймворковой зависимости кроме протокола сообщений.

result = await react_loop(
    model=model,
    messages=history,
    tools=tools,
    system_prompt=system_prompt,
    max_turns=25,
)

LangGraph хорош для прототипирования. Но когда нужно контролировать выполнение tool-вызовов, распространение ошибок и терминацию цикла — нужен цикл, который читается за 200 строк, а не граф-абстракция.

Движок обеспечивает:

  • Асинхронное выполнение инструментов с таймаутами (120 секунд по умолчанию)
  • Классификацию ошибок и восстановление
  • Коллбэки для аудит-трейла на каждый tool-вызов
  • Корректное завершение при исчерпании итераций

2. Пятислойная память

Здесь KAOS принципиально расходится с конкурентами.

СлойХранилищеНазначениеПоиск
СессииSQLite по потокамНедавняя история диалогаПоследовательный
Извлечённые фактыFTS5 (SQLite)Точный recall — имена, ID, даты, URL, решенияПолнотекстовый
Векторная памятьMem0 + Qdrant (локально)Семантический recall — концепции, темы, похожий контекстВекторное сходство
Граф знанийSQLiteСущности и связи — люди, компании, проектыОбход графа
Общие фактыSwarm SQLite (FTS5)Кросс-агентный профиль пользователяПолнотекстовый

У Hermes — 4 слоя (session, persistent, skill, user model), но все на плоских файлах с лимитом символов. Нет семантического поиска, нет графа. У OpenClaw — Markdown-файлы без структурированного поиска.

Жизненный цикл памяти KAOS:

  1. Retrieve — перед каждым LLM-вызовом FTS5 + Mem0 + граф знаний инжектируются как транзиентный контекст
  2. Store — после ответа факты извлекаются в фоне (DeepSeek lite, ~$0.001/ход)
  3. Consolidate — ночной sleep-compute дедуплицирует факты, извлекает сущности в граф знаний, генерирует actionable insights, чистит устаревшее
  4. Share — факты из пользовательских сообщений зеркалятся в shared_user_facts, чтобы все агенты в swarm видели одинаковый профиль

Sleep-compute вдохновлён биологической памятью: кратковременные воспоминания (сессии) консолидируются в долговременные структуры (граф знаний) во время «сна» (ночной крон).

3. Навыки: Progressive Disclosure

И Hermes, и KAOS поддерживают навыки, но философия разная.

Hermes создаёт навыки автоматически из успешных выполнений. Learning loop улучшает их. Мощный подход для повторяющихся персональных рабочих процессов.

KAOS использует workspace-локальные процедуры с progressive disclosure:

УровеньСодержаниеСтоимость токенов
L1 КаталогИмя + описание в 1 строкуВсегда в промпте (~50 токенов/навык)
L2 ПротоколПолный SKILL.md с шагами и правиламиГрузится через load_skill() по необходимости
L3 РеференсыФайлы поддержки, примеры, фикстурыГрузится через load_skill_reference() по запросу

Агент с 20 навыками платит ~1000 токенов в базовом промпте (каталог), а не 20 000. Полный протокол грузится, только когда агент решает, что он релевантен.

KAOS поставляется с 5 паками навыков (research, productivity, ops, content, finance-lite) и 5 шаблонами агентов (Personal Operator, Research Agent, Ops Assistant, Founder Strategy, Analyst Reporter).

kaos templates list
kaos templates install personal-operator my-agent --force
kaos skills packs
kaos skills install-pack productivity --agent my-agent --force

4. Tool Gateway: MCP с аудитом

Все три фреймворка поддерживают инструменты. Разница KAOS — слой аудита и безопасности.

Каждый tool-вызов генерирует два события в tool_calls.jsonl:

  • tool_call — имя инструмента, отредактированные аргументы, контекст сессии
  • tool_result — успех/ошибка, отредактированный результат, латенси

Секретные значения (token, secret, password, api_key, bearer-токены, sk-* ключи) автоматически редактируются перед записью.

Capability gates контролируют, что агент может делать:

ENABLE_DYNAMIC_TOOLS=false          # Может ли агент создавать Python-инструменты?
REQUIRE_DYNAMIC_TOOL_SANDBOX=true   # Обязателен ли Docker для динамических инструментов?
ENABLE_MCP_GATEWAY_MANAGEMENT=false # Может ли агент добавлять/удалять MCP-серверы?
ENABLE_DYNAMIC_MCP_SERVERS=false    # Загружать ли сохранённые динамические MCP-серверы?
ENABLE_SERVER_OPS=false             # Может ли агент подключаться к серверам по SSH?

Свежая установка консервативна по умолчанию. Осознанное решение. Агент, который может создавать произвольные Python-инструменты и подключаться к продакшен-серверам по SSH, должен требовать явного включения, а не неявного доверия.

Контекст: OpenClaw — 9 CVE за 4 дня и 341 вредоносный навык в ClawHub. Когда экосистема растёт быстрее безопасности — пользователи платят.

5. Пятислойная безопасность

СлойЧто делаетКак
L1: Input ShieldБлокирует prompt injection до LLM28 regex-паттернов (EN + RU), rate limiter (10 запросов/мин)
L2: SanitizerНейтрализует инъекции во внешнем контентеUnicode homoglyph folding, скрытые HTML-элементы, boundary markers
L3: Loop DetectorПредотвращает бесконечные циклы инструментов3 детектора (repeat, ping-pong, poll), 3-ступенчатая эскалация (WARNING → CRITICAL → CIRCUIT_BREAKER на 30 вызовах)
L4: Output ValidatorРедактирует секреты из ответовПаттерны API-ключей, строки подключения, системные пути, утечки промпта
L5: Cost GuardianПредотвращает неконтролируемые траты$5/день, $1/сессия, предупреждение на 80%

Ни Hermes, ни OpenClaw не поставляются с таким defense-in-depth. KAOS проектировался для работы 24/7 на VPS без постоянного надзора.

6. Автоматизации: агент работает, пока ты спишь

Именно это делает KAOS «Agent OS», а не чат-враппером.

ЗадачаРасписаниеЧто делает
heartbeatКаждые 30 минПроверяет задачи в workspace и Notion, уведомляет только если есть actionable
news-monitorЕжедневно 08:30Сканирует watchlist через Brave Search, отправляет HTML-дайджест
group-digestЕжедневно 09:00Собирает сообщения из Telegram-групп, ранжирует по engagement, дайджест
sleep-computeЕжедневно 11:00Ночная консолидация памяти: дедупликация, извлечение сущностей, инсайты
self-improveЕжедневно 22:00Анализирует последние 24ч взаимодействий, предлагает ОДНО конкретное улучшение
expense-digestЕженедельноСуммирует расходы из Notion: категории, тренды, рекомендации
skill-improveЕженедельноАвтоулучшение навыков на основе паттернов использования
user-modelЕженедельноДиалектическое моделирование пользователя: валидация и обновление гипотез
market-reviewЕженедельноАгрегация новостей по тикерам, анализ сентимента
people-scoutЕженедельноLinkedIn-discovery: ротация фокуса (US founders → EU → AI engineers → Indie)
email-expensesЕжедневно 08:00Авто-извлечение расходов из Gmail-чеков через MCP
swarm-retentionЕженедельноОчистка устаревших сообщений в swarm-ledger (90 дней)

Планировщик — чистый asyncio, без внешних зависимостей. Задачи работают в главном event loop вместе с Telegram bridge и дашбордом. Состояние переживает перезагрузки.

У Hermes планировщика нет. У OpenClaw — базовая поддержка cron через HEARTBEAT.md, но без сопоставимого набора предустановленных пайплайнов.

7. Swarm Mode: мультиагентная координация без pub/sub

KAOS запускает 6 независимых агентских процессов, каждый со своим Telegram-аккаунтом, персоной, workspace и памятью — координация через один общий SQLite-файл.

Все агенты видят каждое сообщение в группе. Каждый независимо решает, отвечать ли, по 3-уровневой системе маршрутизации:

УровеньТриггерЗадержкаОбходит арбитраж?
Tier 1Явное @упоминание или reply на моё сообщение1-5 секДа — всегда отвечает
Tier 2Релевантность темы >= 7/10 (LLM-проверка)5-20 секНет — подчиняется лимиту
Tier 3Реакция на пира (значимое несогласие)15-45 секНет — лимит + cooldown

Anti-flood:

  • Жёсткий лимит: максимум 2 неявных ответа на одно пользовательское сообщение от всех агентов
  • Tier 3: 5-минутный cooldown на агента, протокол “PASS” для молчаливого отказа
  • Повторная проверка после задержки (другой агент мог ответить, пока мы ждали)

Арбитраж через SQLite IMMEDIATE-транзакции:

# Агент вставляет claim перед ответом
swarm.claim_reply(agent_name="kronos", tier=2, eta_ts=time.time() + 12)

# Перед отправкой — атомарная проверка:
outcome = swarm.can_send_claim(agent_name="kronos", tier=2)
# Правило победителя: tier ASC, eta_ts ASC, agent_name ASC

Проще и дебажнее pub/sub или протоколов консенсуса. Один SQLite-файл, шесть конкурентных писателей, WAL mode, IMMEDIATE-транзакции. Всё состояние координации инспектируется через sqlite3 data/swarm.db.

У OpenClaw мультиагентность — LLM-orchestrated: модель сама решает, когда запустить ревьюера, когда ретраить. Flow-control недетерминирован. У Hermes сабагенты изолированы и работают параллельно, но без централизованного ledger’а.

Peer-реакции в KAOS эфемерны по дизайну:

  • Текст пира передаётся через транзиентный extra_system_context (не персистится в историю)
  • Нет записи в Mem0 — peer-реакции не загрязняют долговременную память
  • Если агенту нечего содержательно добавить — “PASS” — claim отменяется молча

Так решается «баг попугая», когда агенты повторяют текст друг друга, потому что он попал в историю сессии.

8. Dashboard Control Room

Дашборд — операторская поверхность KAOS. Не чат-UI — контрольная комната.

ВидЧто показывает
OverviewЗдоровье, аптайм, активность агентов, аномалии
Memory ExplorerФакты с поиском, общие факты, сущности графа знаний, сессии — с удалением и ресетом
Audit TrailКаждый tool-вызов: аргументы, результаты, латенси, статус
JobsРасписание крона, недавние запуски, ошибки
SwarmИстория арбитрации, исходы claim’ов, метрики по агентам
SkillsWorkspace-навыки с тогглами
MCP ServersСтатические и управляемые серверы
SettingsCapability gates, состояние провайдеров, конфигурация

Когда capability заблокирована политикой, дашборд показывает имя gate и переменную окружения для включения — вместо молчаливого скрытия.

9. LLM-роутинг: экономия по умолчанию

KAOS использует двухуровневую стратегию:

УровеньДля чегоПровайдер по умолчанию
LiteПроверки релевантности, парсинг, массовые операции, извлечение фактовDeepSeek V3
StandardОркестрация, анализ, сложные рассуждения, tool callingKimi K2.5

KAOS не привязан к моделям. Настрой OpenAI, OpenRouter, Groq, Together, LiteLLM, Ollama или любой OpenAI-совместимый эндпоинт в .env. Без изменений кода.


Матрица сравнения

ФичаKAOSHermes AgentOpenClaw
GitHub starsНовый (v0.1.0)~100 000~347 000
ЯзыкPythonPython + TS (TUI)TypeScript/Node.js
ЛицензияMITMITMIT
Self-hostedДа (core design)ДаДа
Слои памяти5 (сессии, FTS5, векторы, граф, shared)4 (flat files с char limit)Markdown-файлы
Граф знанийДа (SQLite, сущности + связи)Нет (в планах)Нет
Sleep-time консолидацияДа (ночной пайплайн)НетНет
НавыкиProgressive disclosure (L1/L2/L3)Auto-created learning loopSOUL.md + статичные skills
Автоулучшение навыковДа (еженедельный крон)Да (built-in loop)Нет
Моделирование пользователяДа (диалектическое, еженедельно)Да (Honcho)Базовые предпочтения
Tool аудит-трейлДа (редактированный, persistent)НетНет
Capability gates5 env-based gatesНетНет
Слои безопасности5 (shield, sanitize, loop, output, cost)Базовая9 CVE за 4 дня (март 2026)
Cost guardianДа ($5/день, $1/сессия)НетНет
Автоматизации12 базовых + 6 agent-specificНетБазовый HEARTBEAT.md
ДашбордControl Room (8 видов)НетБазовый web UI
Мультиагентность6-агентный swarm, SQLite-арбитражИзолированные сабагентыLLM-orchestrated (недетерминизм)
МессенджерыTelegram, Discord, CLI, webhook6+ каналов50+ каналов
Офлайн-демоДа (kaos demo)НетНет

Для кого KAOS

KAOS подойдёт, если:

  • Хочешь владеть рантаймом агента, а не арендовать у облачного сервиса
  • Нужно инспектируемое состояние — память, tool-вызовы, решения — а не чёрный ящик
  • Нужны автоматизации по расписанию — дайджесты, мониторинг, аналитика, самоулучшение — работающие без человеческого ввода
  • Нужна мультиагентная координация для задач, где помогают разные перспективы
  • Важны безопасные дефолты — capability gates, аудит инструментов, контроль затрат
  • Предпочитаешь Python и экосистему LangChain/Mem0/Qdrant

KAOS не подойдёт, если:

  • Нужно 50+ интеграций с мессенджерами из коробки (бери OpenClaw)
  • Хочешь learning loop, который создаёт навыки с нуля (бери Hermes)
  • Нужно самое большое комьюнити (OpenClaw по звёздам, Hermes по quality контрибьюторов)
  • Хочешь хостинговое решение с нулём ops (KAOS — self-hosted by design)

Быстрый старт

30-секундное демо

pip install kronos-agent-os
kaos demo

Без API-ключей. Без Docker. Без конфигурации.

Полная установка

git clone https://github.com/spyrae/kronos-agent-os.git
cd kronos-agent-os
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

kaos doctor                    # валидация setup
kaos init personal-operator    # создать первого агента
# отредактируй .env: добавь FIREWORKS_API_KEY или DEEPSEEK_API_KEY
kaos chat                      # начать диалог

Dashboard

kaos demo-seed --reset
kaos dashboard
# Открой http://127.0.0.1:8789

Шаблоны и навыки

kaos templates list            # 5 шаблонов агентов
kaos skills packs              # 5 паков навыков
kaos skills install-pack productivity --agent my-agent --force

Строите AI-агентов и хотите сохранить контроль над рантаймом? Я помогаю стартапам и инженерным командам проектировать агентские системы — belov.works

pip install kronos-agent-os
kaos demo

GitHub: github.com/spyrae/kronos-agent-os Лицензия: MIT Python: 3.11+

Часто задаваемые вопросы

Чем KAOS отличается от LangGraph?

LangGraph — библиотека для построения граф-агентов. KAOS — рантайм для их запуска и эксплуатации. LangGraph отвечает за оркестрацию внутри одного вызова; KAOS добавляет вокруг этого память, навыки, аудит, автоматизации, дашборд и мультиагентную координацию. Их можно использовать вместе — ASO-модуль KAOS использует LangGraph для своего пайплайна.

Можно ли использовать KAOS с локальной моделью (Ollama, llama.cpp)?

Да. KAOS поддерживает любой OpenAI-совместимый эндпоинт. Настрой URL и модель в .env — и работай с Ollama, LM Studio, vLLM или любым другим локальным провайдером без изменений кода.

Обязательно ли использовать Swarm Mode?

Нет. Swarm Mode — опциональная подсистема. По умолчанию KAOS работает как single-agent runtime с полным набором функций: память, навыки, инструменты, автоматизации, дашборд. Мультиагентная координация нужна только когда задача выигрывает от нескольких независимых перспектив.

Насколько KAOS безопасен для запуска на VPS 24/7?

KAOS проектировался именно для этого. 5 слоёв защиты (input shield, sanitizer, loop detector, output validator, cost guardian), 5 capability gates по умолчанию отключены, tool-вызовы логируются с редактированием секретов. Бюджет по умолчанию — $5/день, $1/сессия.

Какие LLM-провайдеры поддерживаются?

Из коробки: Fireworks (Kimi K2.5), DeepSeek, OpenAI, OpenRouter, Groq, Together, LiteLLM, Ollama. Любой OpenAI-совместимый API подключается через переменные окружения без изменения кода.