Безопасность
Meta изолировала Muse от ключей и передала сетевые действия отдельному Sentinel
Персональный агент работает в ограниченном runtime cell, получает вместо настоящих credentials суррогатные токены, а connector actions и весь network egress разрешает отдельный host-side Sentinel. Meta также открыла bug bounty с выплатами до $300 000.

Агент с почтой, календарём и shell считается потенциально скомпрометированным
Meta описала защитную архитектуру Muse — персонального агента, который работает в фоне, запускает subagents, создаёт собственные tools и может пользоваться подключёнными сервисами. Такой набор возможностей означает доступ одновременно к частным данным, внешнему контенту и действиям за пределами системы. Поэтому исходная модель угроз у команды жёсткая: даже сильная базовая модель иногда ошибается и может подчиниться prompt injection, а инфраструктура должна ограничить ущерб независимо от поведения агента.
Muse размещается в выделенной для пользователя облачной virtual machine. Внутри неё агентский harness, workspace, binaries и выполняемые tools находятся не на host напрямую, а в `systemd-nspawn` runtime cell. Root внутри этой среды отображается на непривилегированного host user; у cell отдельная root filesystem, виртуальный сетевой интерфейс, урезанные system calls и capabilities. Meta подчёркивает: правильная модель — два изолированных security domains на одной машине, а не LLM-агент с полноценным root-доступом.
Credentials вынесены за границу агентского процесса
Security-sensitive компоненты работают вне runtime cell как отдельные systemd units. `hatch-authd` хранит OAuth tokens и другие credentials, `privsep` workers исполняют встроенные connector operations с ограниченными правами, а `hatch-safety` независимо проверяет запросы и ответы на prompt injection и другие угрозы. Долговременное состояние приложения хранится в отдельной PostgreSQL database. Обмен между cell и host-side services идёт через Unix domain sockets с SO_PEERCRED и peer ACLs.
Основной агент не получает настоящие секреты. Когда сетевому запросу нужен token, код внутри cell использует суррогат, выданный authd. После разрешения конкретного запроса Sentinel заменяет суррогат реальным credential только на сетевой границе. Для встроенных connectors бизнес-логика, способная обращаться к credentials, также выполняется в sandboxed worker, а CLI внутри cell лишь разбирает arguments и передаёт типизированные данные через socket.
Sentinel отдельно решает, что можно отправить наружу
Sentinel — отдельный host-side agent и единственный permission authority для connector actions и network egress. Muse формирует предложение действия, но Sentinel сопоставляет connector, method, класс операции, scope и пользовательский контекст с policy. Результат — allow, deny или ask. Для сети проверяются hostname, итоговый IP, port, protocol, HTTP method, path и декодированное содержимое запроса; отдельные SSRF restrictions должны остановить домен, который после DNS resolution указывает во внутреннюю инфраструктуру.
Meta дополняет это kernel-level отслеживанием потока данных, названным tainted egress. Новый tool process стартует чистым и становится tainted после чтения пользовательских данных. Только чистый запрос, который уже подходит под узкую auto-allow policy, может пройти без дополнительного вопроса; tainted или непроверяемый процесс возвращается к обычному approval flow. Для перехвата сети и атрибуции процессов используются eBPF cgroup programs, а для переноса taint — hooks Linux Security Module.
Подтверждение пользователя не передаётся через разговор с агентом
Если решение Sentinel — ask, выполнение останавливается, а запрос подтверждения поступает непосредственно в клиент Muse. Диалог показывает точное действие и передаёт ответ пользователя обратно Sentinel, минуя разговорный канал с основным агентом. Одобрение оформляется как capability, привязанная к конкретному connector или destination и use case, а не как фраза, которую модель может свободно интерпретировать.
Поддерживаются one-time, session-scoped, task-scoped, time-bounded и perpetual permissions, но именно Sentinel определяет допустимые варианты и проверяет последующие вызовы на точное соответствие scope. Meta не предлагает спрашивать пользователя о каждом чтении: read-only, ранее разрешённые и явно low-risk операции могут идти без паузы. Смысл механизма — добавить трение там, где важны согласие и последствия, не превращая routine automation в цепочку постоянных окон.
Browser лишён прямого DOM и JavaScript-доступа
Chromium в Muse находится за отдельным broker. Browser sub-agent получает accessibility tree snapshot, а не raw DOM; у него нет возможности исполнять JavaScript в контексте страницы, пользоваться script verbs или Chrome DevTools. Credentials из password manager вводятся через специальный интерфейс прямо в authd и подставляются в browser без показа агенту. Во время ручного takeover или безопасного заполнения формы агент приостанавливается.
Дополнительные classifiers ищут утечку нерелевантных персональных данных, prompt injection в DOM и изображениях, опасные downloaded files и отправку high-risk forms. Покупки получают отдельную защиту: checkout требует human-in-the-loop approval с деталями каждой операции. Для новых магазинов Meta использует wallet с single-use card number, ограниченным конкретным merchant, суммой и временем действия; на старте партнёром назван Stripe Link, а Shop Pay заявлен позже.
Meta не называет prompt injection решённой задачей
Defense in depth включает обучение модели распознавать injection, маркировку внешних данных как untrusted input, ансамбль независимых classifiers и approvals для действий, выводящих данные из VM. Даже при обходе модельного слоя остаются детерминированные границы runtime cell, `privsep`, ACL в authd и проверка Sentinel. При этом Meta прямо признаёт, что Muse не неуязвима, prompt injection остаётся открытой проблемой, а ошибки продолжат происходить.
Компания открыла публичную bug bounty program для Muse. Максимальная выплата за действительный отчёт указана на уровне $300 000; в начальном описании отдельно фигурирует до $130 000 за успешную prompt injection, затрагивающую одного пользователя. Архитектура на старте также не исключает доступ Meta к данным VM для поддержки, защиты и эксплуатации сервиса. Обещанная Muse Confidential VM должна криптографически ограничить такой доступ, но её выпуск заявлен на более поздний срок, поэтому эту возможность нельзя считать частью доступного сегодня контура.