
onecli v2.0.1
Открытый исходный код песочницы для агентов для команд. Предоставление каждому сотруднику защищённого личного агента.
Каркас агентов, созданный для команд.
Профессиональный ассистент для компаний. Дайте каждому сотруднику защищённого, изолированного персонального агента.
Веб-сайт · Документация · Discord
Быстрый старт
Облачный хостинг: onecli.sh
Самостоятельное развёртывание
git clone https://github.com/onecli/onecli.git && cd onecli
pnpm install
pnpm run setup
Откройте http://localhost:10254
Что такое OneCLI v2?
OneCLI — это платформа с открытым исходным кодом для запуска ИИ-агентов в составе команды. Вы создаёте агента для каждого человека, предоставляете каждому агенту необходимый доступ, и он работает в изолированной среде, маршрутизируясь через шлюз, который внедряет учётные данные и обеспечивает соблюдение вашей политики.
Почему мы создали OneCLI?
OneCLI начинался как хранилище учётных данных для ИИ-агентов, написанное на Rust. Мы обнаружили, что большая часть спроса исходит от частных лиц и команд, запускающих автономных агентов, таких как Hermes, OpenClaw и NanoClaw. Люди хотели агентов, которые выполняют реальную работу для запускающего их человека, но не хватало двух частей:
- управления секретами и разрешениями.
- а для команд — многопользовательского управления.
Каждый существующий автономный агент создан для одного человека. И для одного человека они отличны. Как только вам нужно масштабировать это на команду, всё становится запутанным: развёртывание каждого агента, определение того, что каждый может и не может делать, их хостинг, отслеживание того, чей агент есть чей.
Поэтому мы изменили направление и создали OneCLI v2.
Создан для команд
- Ваш поставщик удостоверений, интегрированный: предоставление агентов от имени личности каждого сотрудника, напрямую из корпоративного IdP.
- Агент на человека: каждый в рабочем пространстве получает собственного изолированного агента, доступного через панель управления или Slack.
- Единая политика, применяемая везде: управляйте политикой команды в одном месте, и она будет применяться к любому агенту в рабочих пространствах.
- Детерминированные утверждения с участием человека: прямо в чате, для действий, требующих 100% контроля, таких как отправка электронного письма, удаление тикета в Linear, очистка корзины S3.
- Глобальные подключения: общие на уровне команды, например ключи LLM или сервисные учётные записи, предоставляемые каждому агенту, но никогда не передаваемые ему напрямую.
Агент
Агент — это долговечная сущность, а не отдельный промпт. Он имеет:
- Компьютер: собственную изолированную среду с файловой системой и оболочкой. Единственный путь наружу — через шлюз, поэтому он может получить доступ только к тому, что вы разрешили, и ни к чему больше.
- Разговор: собственную страницу в панели управления или в Slack. Включая изображения и файлы. Сообщение, отправленное, пока агент работает, перенаправляет его немедленно, а не ставит в очередь позади.
- Память: то, что узнаёт агент, сохраняется платформой, поэтому никогда не теряется. Вы можете читать и редактировать её в любое время.
- Навыки: инструкции и помощники, которые вы пишете один раз и которые всегда доступны агенту.
- Расписание: агент может планировать будущую работу, и платформа пробуждает его в нужное время.
- Учётные данные, которые он никогда не видит: каждый агент получает только тот доступ, который вы предоставили, и шлюз обеспечивает его соблюдение при каждом запросе. Или подключите Bitwarden или 1Password для внедрения по требованию, при этом на сервере ничего не хранится.
- Собственное приложение Slack: подключите его один раз, и он будет отвечать в каналах и личных сообщениях под своим именем и аватаром, с файлами и изображениями. Удалите агента — и его приложение Slack исчезнет вместе с ним.
Агенты работают на вашей собственной инфраструктуре. Исполнитель (runner) работает только на исходящие соединения и не имеет входящих портов, поэтому ноутбук, домашний сервер или VPC за NAT работают без входящего трафика и без туннелей.
Архитектура
- Веб-панель управления: приложение Next.js. Создавайте агентов, общайтесь с ними, редактируйте их память и навыки, управляйте подключениями, секретами и разрешениями.
- API-сервер: плоскость управления. Владеет базой данных, плоскостью разговоров и очередью задач, которую опрашивает исполнитель.
- Шлюз на Rust: перехватывает исходящие запросы (включая HTTPS, через MITM) и внедряет учётные данные. Агенты аутентифицируются с помощью токенов доступа через заголовки
Proxy-Authorization. - Исполнитель: запускает, приостанавливает и завершает песочницы агентов. Работает только на исходящие соединения и никогда не касается базы данных.
- Супервизор песочницы: работает внутри каждой песочницы, используя нейтральный к вендору интерфейс каркаса, что делает среду выполнения агента заменяемой.
- Терминатор SSH: входная дверь SSH — завершает
ssh-соединения с краткосрочными сертификатами и мостит их в песочницы агентов через подключаемый серверный бэкенд. - Адаптер каналов: демон Slack, по одному приложению на агента.
- Хранилище секретов: AES-256-GCM в состоянии покоя, расшифровывается только во время запроса, сопоставляется по шаблону хоста и пути, внедряется в виде заголовков или параметров запроса.
Локальная разработка
git clone https://github.com/onecli/onecli.git && cd onecli
mise install
pnpm install
pnpm dev
Это вся настройка: pnpm dev генерирует .env со всеми необходимыми секретами, запускает PostgreSQL, применяет миграции и запускает весь стек. Предварительные требования, справочник команд, структура проекта и конфигурация находятся в docs/development.md.
Вклад в проект
Вклад приветствуется. Прочтите Руководство по вкладу и Кодекс поведения перед началом работы. Вклад принимается на условиях Соглашения о лицензии участника.
Безопасность
Чтобы сообщить об уязвимости, пожалуйста, следуйте нашей Политике безопасности. Не открывайте публичный issue для сообщений об уязвимостях.
Лицензия
Apache-2.0, с одним исключением: каталоги ee/ содержат
корпоративные функции под Лицензией OneCLI Enterprise,
каждая из которых содержит уведомление, указывающее на неё. Эта лицензия бесплатна для разработки,
тестирования и оценки и требует подписки для производственного использования.
Всё остальное — Apache-2.0 и может быть размещено самостоятельно в производстве без
коммерческой лицензии. LICENSE-ENTERPRISE содержит
авторитетный список лицензируемых путей.