Операционная система, которой управляют разговором, а не кнопками. Человек говорит машине, что нужно — «что за обновления», «почисти кэш сборки», «где у меня файл про бюджет», «поставь ripgrep» — а система это делает сама: пакеты, службы, сеть, диски, журналы, файлы. Кнопок и меню нет, лицо системы — разговор.
Под разговором — обычный Linux (тот же apt, тот же systemd). Модель по умолчанию локальная (Ollama, qwen3.5:9b) ради независимости от интернета; облако (OpenRouter) подключено с первого дня, переключение — словом. Ставка не на ум модели, а на устройство вокруг неё: безопасность держится на правах, корзине и обратных операциях, а не на подтверждениях; агент дёшево переспрашивает вместо того, чтобы угадывать.
WSL — только площадка для разработки. Цель — самодостаточная система, которая ставится на железо или VM и грузится прямо в разговор.
- Управление системой: пакеты (apt), службы (systemd), правка
/etc, сеть, диски, журналы — через инструменты классов D0–D3. - Безопасность и обратимость:
rm/dd/mkfsи запуск через оболочку отсутствуют как класс; корзина и обратная операция готовятся ДО действия; снимок/etc+ слепок пакетов перед каждым системным действием, «отмена» откатывает и файлы, и пакеты; неизменяемый журнал с цепочкой SHA-256 под отдельным uid; песочница на пустом network namespace + Landlock; «пятно недоверия» — прочитанные недоверенные данные требуют подтверждения на дальнейшие действия. - Поиск файлов и памяти по смыслу (RAG на PostgreSQL + pgvector): «найди файл про…», «что ты помнишь обо мне» — по смыслу, а не по имени.
- Чтение из интернета (
net_fetch) через карантин: страница уходит в отдельную сессию без инструментов, инъекции внутри неё бессильны. - Память и правила: агент запоминает факты о хозяине и правила «всегда делай X», следует им всегда.
- MCP-клиент: подключение внешних инструментов из
~/.agent/mcp.toml. - Голос: озвучка ответов и распознавание речи (через помощника вне песочницы).
- Лицо: веб-оболочка (React + Tailwind), на приборе — во весь экран в режиме киоска; в терминале — клиент
agentsh.
Пять программ на Go, каждая под systemd:
agentd— демон: цикл агента, инструменты, политика, память, RAG, веб-оболочка (HTTP + SSE); uidagent, в жёсткой песочнице.agentsh— терминальный клиент; режим--plainработает без модели.agent-opd— привилегированный демон (root) для системных действий D2 со снимком; заменяет sudo (NoNewPrivilegesего блокирует).agent-journald— приёмник журнала под uidagentlog, файлы только на дозапись.agent-voiced— голосовой помощник вне песочницы (тяжёлые ffmpeg/vosk не работают под seccomp agentd).
flowchart TB
subgraph face["Лицо системы"]
web["веб-оболочка (React+Tailwind), киоск во весь экран"]
sh["agentsh (терминал)"]
end
subgraph core["agent-os"]
d["agentd — цикл, инструменты, RAG, веб; uid agent, песочница"]
opd["agent-opd (root) — пакеты/службы/etc + снимок"]
jd["agent-journald (agentlog) — журнал, SHA-256"]
vd["agent-voiced — TTS/ASR вне песочницы"]
pg[("PostgreSQL + pgvector — эмбеддинги файлов и памяти")]
end
llm["Ollama qwen3.5:9b (локально) / OpenRouter (облако)"]
web <-->|HTTP + SSE| d
sh <-->|unix-сокет| d
d -->|заявка D2| opd
d -->|только запись| jd
d <-->|сокет| vd
d <-->|поиск по смыслу| pg
d <-->|чат + эмбеддинги| llm
Разработка (WSL): дистрибутив wsl --import agent-os …, внутри sudo scripts/install.sh. Модель — Ollama на хосте (адрес шлюза берётся автоматически). Аварийные выходы: AGENT_SKIP=1 wsl -d agent-os, wsl -d agent-os -u root, agentsh --plain.
Прибор (железо/VM): sudo scripts/install.sh --with-model --with-rag --with-kiosk — поставит демоны, автологин в разговор, локальную модель, поиск файлов и графическую оболочку. Машина грузится прямо в разговор.
Раздача: самодостаточный релиз-архив под amd64/arm64 (готовые бинарники + фронт, Go на целевой машине не нужен), cloud-init для облачной VM, автоустановка для железа — см. configs/autoinstall/README.md.
- docs/plan/ПЛАН.md — мастер-план: архитектура, ядро, безопасность.
- docs/plan/дорожная-карта.md — что сделано, чеклистами.
- docs/adr/ — решения: архитектура, модель, стек, безопасность.
- docs/architecture/ — разбор вариантов и стек экосистемы.
- docs/research/ — 17 исследований с замерами на этой машине.
- docs/codebase/ — разбор соседних проектов (единый стек).
- scripts/voice/README.md — настройка голоса.
- docs/ИНДЕКС.md — карта всех документов.