Ваши секреты живут в связке ключей ОС,
а не в промпте и не в репозитории
AgentsRoom хранит API-ключи, токены и пароли от баз данных в локальном хранилище, зашифрованном связкой ключей вашей операционной системы. Вы ссылаетесь на них по имени, а приложение подставляет значение, когда стартует команда или агент.
Хватит вставлять токен в промпт только потому, что так быстрее всего разблокировать агента. Назовите секрет один раз, дальше используйте {{secret:NAME}}, а значение пусть остаётся там, где ему место.
Как AgentsRoom оставляет секрет пригодным для ваших команд и нечитаемым для агента, который его запросил.
В любом проекте набирается горстка значений, которыми нельзя делиться : платёжный ключ, пароль от базы, токен для деплоя, API-ключ для staging-окружения. Как только в работу вступают ИИ-агенты для кодинга, эти значения начинают перемещаться худшим из возможных способов. Их вставляют в промпт, чтобы разблокировать агента, зашивают в скрипт, который написал агент, или кладут в файл, который через три коммита уезжает в репозиторий.
Менеджер секретов AgentsRoom даёт им одно место для жизни. Секрет состоит из имени и значения : вы добавляете его один раз, и AgentsRoom шифрует его связкой ключей вашей операционной системы ещё до того, как значение коснётся диска. Всё хранилище умещается в один файл в домашней папке, записанный с правами только для владельца, и оно никогда не покидает машину, на которой создано.
Дальше вы больше не имеете дела со значением. Вы пишете {{secret:NAME}} в dev-команде или в окружении агента, и AgentsRoom подставляет настоящее значение, когда эта команда или этот агент стартует. Ваши агенты могут получить список имён и попросить подставить нужное, этого достаточно для работы, и самого значения они не получают никогда.
Хранилище, рассчитанное на машину, полную ИИ-агентов
Зашифровано операционной системой, вызывается по имени, раскрывается в последний возможный момент.
Шифрование связкой ключей вашей ОС
Каждое значение шифруется через Electron safeStorage : ключ шифрования держит связка ключей вашей операционной системы, а не AgentsRoom. Приложение хранит шифротекст и просит систему его расшифровать, ровно так же, как другие приложения, которым вы уже доверяете учётные данные.
Один файл хранилища, только для владельца
Все секреты лежат в одном хранилище ~/.agentsroom/secrets.json, которое записано с правами только для владельца (0600) и заменяется атомарно при каждом изменении. Никаких недописанных файлов после сбоя, и ни одна другая учётная запись на машине его не откроет.
Ссылка по имени, никогда по значению
Сохранённый секрет используется как {{secret:NAME}} : в командной строке dev-терминала, в окружении, которое получает агент, везде, где иначе пришлось бы вписать учётные данные. На экране вы видите имя, и именно имя можно спокойно показать коллеге.
Подстановка при запуске, в основном процессе
Подстановка происходит в момент старта процесса, внутри основного процесса Electron. Готовое значение попадает в окружение запускаемой команды и больше никуда : ни в лог, ни в интерфейс, ни в файл на диске.
Агенты видят имена, а не значения
ИИ-агент может получить список имён ваших секретов и попросить подставить один из них в то, что он собирается запустить. Кода, который возвращает значение агенту, интерфейсу или наружу через MCP, просто нет. Агент работает со ссылкой, приложение работает с секретом.
Нет связки ключей: нет хранения
Если машина не может предоставить рабочую связку ключей ОС, AgentsRoom откажется сохранять секрет вместо того, чтобы записать его открытым текстом. Хранилище, которое молча вырождается в обычный файл, хуже, чем его отсутствие, поэтому такого запасного пути просто не существует.
Локально по архитектуре, а не по настройке по умолчанию
Ваши секреты никогда не отправляются на серверы AgentsRoom. Нет переключателя синхронизации, который надо проверять, нет облачного хранилища, от которого надо отказываться, и нет копии ваших ключей нигде, кроме вашего диска. Хранилище создаётся на машине, шифруется ключом, который связка ключей операционной системы держит именно для этой машины, и там же остаётся. Копия файла сама по себе на другой машине не откроется.
Разделение между «использовать секрет» и «прочитать секрет» закреплено в коде, а не в инструкции, написанной в промпте. Интерфейс, MCP-инструменты и все агенты говорят о секретах по имени. Превратить ссылку в значение может только основной процесс Electron, и только пока он собирает окружение процесса, который вы попросили запустить. Просьба к агенту быть аккуратнее с учётными данными остаётся надеждой. Отсутствие функции, которая возвращает учётные данные, уже гарантия.
Именно поэтому разумно доверить агенту работу с платным API или с настоящей базой данных. Агент знает, что существует секрет с именем STRIPE_SECRET_KEY, и может попросить подставить его в команду, которую хочет запустить. Он не может его напечатать, не может скопировать в файл, который пишет, и не может утащить в переписку, которая хранится где-то ещё.
От вставленного токена к именованному секрету
Три шага, и значение больше не появляется.
Добавьте секрет один раз
Дайте ему имя и вставьте значение в последний раз. AgentsRoom шифрует его связкой ключей ОС и записывает в хранилище ~/.agentsroom/secrets.json, атомарно и с правами только для владельца. Если на машине нет пригодной связки ключей, приложение скажет об этом и откажется, а не запишет открытый текст.
Ссылайтесь на него как {{secret:NAME}}
Используйте ссылку там, где раньше стояло значение : в команде, которая поднимает dev-сервер, или в окружении агента, которому нужен API-токен. В настройках сохраняется ссылка, и на неё можно спокойно смотреть.
Пусть AgentsRoom подставит его при запуске
Когда команда или агент стартует, основной процесс меняет ссылку на настоящее значение в окружении этого процесса. Ваши инструменты получают то, что им нужно, а агент, который всем этим управляет, по-прежнему знает только имя.
Когда менеджер секретов перестаёт быть опцией
Ситуации, в которых вставленные учётные данные превращаются в настоящий инцидент.
Dev-серверы, которым нужны настоящие ключи
Ваш dev-сервер не поднимется без платёжного ключа и пароля от базы. Поставьте в команду запуска {{secret:NAME}} вместо учётных данных, и эту команду можно спокойно оставить на экране во время созвона, без секундной паники.
Агенты, которые ходят в платный API
Агенту нужен токен, чтобы во время работы обратиться к стороннему API. Добавьте секрет в его окружение по имени : агент получает рабочее окружение, а токена нет ни в промпте, ни в переписке, ни в том, что агент напишет дальше.
Ключи, которые перестают попадать в репозиторий
Обычная авария выглядит так: учётные данные вписаны в конфиг, а следующий коммит уносит его с собой. Ссылка по имени означает, что в файле под контролем версий лежит имя, и утекать при пуше ветки просто нечему.
Одна машина, много проектов
Одно хранилище, защищённое связкой ключей ОС и доступное только вашей учётной записи, обслуживает все проекты, которые вы открываете. Каждый проект ссылается на нужные ему имена, и ни один не держит собственную разбросанную копию учётных данных.
Как агент пользуется секретом, который не может прочитать?
Потому что использовать учётные данные и читать учётные данные это две разные операции, и для агентов AgentsRoom реализует только первую. Хранилище открыто через MCP ровно одним инструментом, secrets_list, и он возвращает имена. Дальше агент пишет {{secret:NAME}} в нужной ему команде или в нужном окружении, а подстановку выполняет приложение, а не агент.
Намеренно отсутствует обратное направление. Ни один MCP-инструмент не возвращает значение секрета, интерфейс его никогда не получает, и ничто не выводит его обратно в переписку. Превращение ссылки в настоящее значение происходит внутри основного процесса Electron, в момент запуска процесса, и результат попадает в окружение этого процесса и больше никуда.
На практике это значит, что агент может прогнать ваши тесты на настоящей базе, обратиться к платному API или выкатить на staging, и ни одни учётные данные не попадут в его контекст. Потом нечего вычищать, потому что ничего и не было раскрыто.
Открыть AgentsRoom MCPЧастые вопросы
Где хранятся мои секреты?
В одном файле хранилища ~/.agentsroom/secrets.json в вашей домашней папке. Каждое значение зашифровано через Electron safeStorage, поэтому ключ шифрования держит связка ключей вашей операционной системы. Файл записывается с правами только для владельца (0600) и заменяется атомарно, так что сбой никогда не оставит его недописанным.
Может ли мой ИИ-агент прочитать мои секреты?
Нет. Агент может получить список имён ваших секретов и попросить подставить один из них в команду или окружение, и этого ему достаточно для работы. Кода, который возвращает значение агенту, интерфейсу или наружу через MCP, не существует. Подстановка происходит только в основном процессе Electron.
Синхронизируются ли мои секреты с серверами AgentsRoom?
Никогда. Хранилище локально по замыслу. Секреты не отправляются на серверы AgentsRoom, не бэкапятся в облако и не передаются в мобильное приложение. Они созданы на вашей машине, зашифрованы для вашей машины и там же остаются.
Как использовать секрет в команде?
Напишите {{secret:NAME}} там, где стояло бы значение : в команде dev-терминала или в окружении агента. AgentsRoom подставляет настоящее значение при запуске этого процесса, а в настройках остаётся ссылка.
Что будет, если на моей машине нет связки ключей ОС?
AgentsRoom откажется сохранить секрет. Запасного пути, который записывает значение на диск открытым текстом, намеренно нет : хранилище, молча выродившееся в обычный файл, даёт уверенность в шифровании без самого шифрования.
Заменяет ли это файлы окружения в моём проекте?
Это решает ту часть задачи, которая начинает болеть с приходом ИИ-агентов : держать учётные данные вне файлов, промптов и переписок. Ваш проект получает во время работы всё, что ему нужно, а само значение живёт в хранилище и подставляется при запуске, вместо того чтобы лежать в файле, который агент может прочитать, а коммит может унести с собой.
Если кто-то скопирует файл хранилища, сможет ли он его прочитать?
На другой машине не сможет. Значения зашифрованы ключом, который держит связка ключей вашей операционной системы, поэтому сам по себе файл остаётся шифротекстом. Вдобавок хранилище записано с правами только для владельца, так что другая учётная запись на той же машине его тоже не откроет.
Каким MCP-инструментом мои агенты пользуются для секретов?
secrets_list, и он единственный. Он возвращает имена секретов, хранящихся на этой машине, поэтому агент может узнать, что существует, а затем сослаться на нужный как {{secret:NAME}} в dev-команде или в окружении процесса, который он запускает. Ни один инструмент не возвращает значение, поэтому агенту нечего напечатать, нечего скопировать в файл, который он пишет, и нечему утечь в переписку. Если нужного секрета нет, он попросит вас добавить его в приложении, а не вставить в чат.
Вам также может понравиться
Подключения к базам данных
Сохраняйте подключения к MySQL и MariaDB, добирайтесь до базы в приватной подсети через SSH-туннель или сессию AWS SSM и дайте ИИ-агентам делать запросы через MCP. По умолчанию только чтение, один запрос за вызов, ограниченная выдача, и пароль до агента не доходит.
SSH-подключения
Сохраняй свои SSH-подключения, открывай встроенный терминал по SSH и запускай Claude Code, Codex или Antigravity CLI прямо на удалённом сервере или VPS. Авторизация по SSH-ключу или паролю, профили подключений для каждого проекта, отдельный SSH-клиент не нужен.
Dev-терминалы
Менеджер терминалов и запуск процессов для каждого проекта. Поднимайте бэкенд, фронтенд и воркеров в один клик, с секретами, которые подставляются при запуске, а не вводятся руками.
AgentsRoom MCP
MCP-сервер, который позволяет вашим агентам управлять самим AgentsRoom : проекты, терминалы, бэклог и подключения, вместе со всеми их ограничениями.
Дайте агентам доступ, а не свои ключи
Скачайте AgentsRoom, перенесите API-ключи и пароли в хранилище, зашифрованное связкой ключей вашей ОС, и везде дальше ссылайтесь на них по имени.
Приложение-компаньон: следите за агентами на ходу
Используйте Claude, Codex, Antigravity CLI или другого поставщика AI.
Отправляйте баги и запросы прямо в ваш публичный бэклог.
Взгляд на AgentsRoom в действии.