by Bevel (open source) Claude Desktop, Claude Code, OpenCode, любой MCP-клиент, Linux, macOS
Git-based control plane для навыков, инструментов, контекста, прав доступа и идентичности AI-агентов. Self-hosted, MCP-native.
Open-source control plane и runtime для организационных агентов: общий контекст компании, изолированное выполнение, approvals и MCP.
«Версия навыков» npm для AI coding-агентов (Claude Code / Cursor / Codex / Gemini CLI) — …
Плагин DeepSeek Harness (DSH): диспетчеризация задач DSH-агентам из Claude Code / Codex — нативный прогресс субагентов, …
Позволяет чату напрямую диспетчеризовать и контролировать локальные Codex / DSH: не нужно вручную переносить промпты и …
mkdir hexis && cd hexis
# v0.10.0 ниже = тег релиза; замените на последний тег релиза
wget https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/docker-compose.yml
wget -O .env https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/.env.example
# заполните в .env четыре обязательных значения:
# ADMIN_EMAIL, ADMIN_PASSWORD, JWT_SECRET, SECRETS_ENC_KEY
node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
# выполните команду выше дважды — по одному результату для JWT_SECRET и SECRETS_ENC_KEY
# вариант 1: публичный HTTPS без своего прокси (нужны DNS A-запись и открытые порты 80 + 443)
DOMAIN=bevel.your-domain.com
docker compose -f docker-compose.yml --profile https up -d
# вариант 2: за собственным обратным прокси (Coolify, Traefik, nginx)
# PUBLIC_BACKEND_URL=https://bevel.your-domain.com
# PUBLIC_FRONTEND_URL=https://bevel.your-domain.com
# TRUST_PROXY=1
docker compose -f docker-compose.yml up -d
# вариант 3: просто тест на ноутбуке (без DOMAIN и значений источников)
wget https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/docker-compose.override.yml
docker compose up -d
# открыть http://localhost:3001 (другой порт: APP_PORT=8080 docker compose up -d)
# альтернатива: локальная разработка из исходников (Node 22, pnpm 10, git >= 2.41)
docker compose up -d db
pnpm install
pnpm build
cp .env.example .env
pnpm dev
# открыть http://localhost:5173
Плоскость управления на базе git для навыков, инструментов, контекста, разрешений и идентичности ИИ-агентов. Самостоятельно размещаемая и нативная для MCP.
Одно место, где живут ИИ-плагины, инструменты и знания вашей компании: централизованно управляемые, проверяемые и контролируемые по доступу, и используемые из любого ИИ-агента. Открытое ядро платформы Bevel.
Одно место, где и инженеры, и нетехнические специалисты могут просматривать и загружать плагины, предлагать улучшения и управлять доступом.
Каждый навык, руководство по инструменту и разрешение — это файл в git-репозитории, который принадлежит вам, поэтому журнал аудита — это слой хранения: кто что изменил, когда, кто утвердил и как откатить. Агент может делать только то, что может делать человек, который его запускает, разрешение определяется для каждого файла, и агент никогда не хранит используемые им учётные данные. Работает на вашей инфраструктуре, за вашим собственным SSO.
MCP-шлюзы однонаправленны: пользователи могут потреблять плагины, навыки или инструменты, но здесь нет механизма для предложения изменений или обмена новыми навыками и MCP-серверами. Это можно делать через GitHub на заднем плане, но это недоступно нетехническим пользователям, и нет детального контроля доступа ни для просмотра, ни для процесса ревью.
Hexis может выполнять все вышеперечисленные возможности для распространения и обладает этой двунаправленностью, необходимой для управления.
В Hexis навыки и руководства по инструментам — это файлы, подлежащие ревью. Любой может предложить изменение; на защищённых ветках оно попадает к владельцам затронутых файлов и публикуется только после их одобрения. Агенты тоже предлагают: тот, кто столкнулся со сломанным навыком в середине задачи, может предложить исправление, и человек решает, принять его или нет.
Смотрите полное прохождение: подключите агента, используйте корпоративный контекст, просматривайте предложенные изменения и управляйте доступом команды.
Любой может предложить новый навык или улучшить существующий. На защищённых ветках владельцы просматривают точное изменение и утверждают его, прежде чем оно станет доступно агентам команды.

Подключите Claude к Hexis через MCP и задавайте вопросы как обычно. Claude может находить и загружать утверждённые инструкции навыков и корпоративный контекст, доступные вашей роли, без копирования промптов между инструментами.

Cline может подключаться напрямую к Hexis как к удалённому MCP-серверу Streamable HTTP. Установите публичное демо-подключение из Cline CLI:
cline mcp install hexis --transport http https://demo.bevel.software/api/mcp --yes
Завершите вход через OAuth в браузере, когда появится запрос. Затем Cline обнаружит навыки, инструменты и контекст, к которым имеет доступ ваша роль Hexis. Для собственного развертывания Hexis замените demo.bevel.software на хост вашего развертывания.
Добавляйте коллег в роли или предоставляйте доступ напрямую, когда это необходимо. Все подключаются к одному рабочему пространству, при этом каждый человек и его агент видят только то, что им разрешено читать.

demo.bevel.software — это публичный экземпляр, в который вы можете войти через свою учетную запись Google, наполненный знаниями, навыками и инструментами вымышленной компании. Страница Start here проведет вас через весь цикл: подключите своего агента через MCP, попросите его создать презентацию для продаж на основе навыка, наблюдайте, как его предложенное улучшение приходит в виде запроса на изменение. Демо является общим и предназначено в основном для чтения (посетители предлагают, владельцы одобряют); всё, что ниже, дает вам то же самое без каких-либо ограничений.
Мы запускаем его для вас (хостинг, обновления, резервное копирование, SSO), и ваша команда просто входит в систему. Напишите на ali.raza@bevel.software.
Вам понадобятся: Docker с Compose на сервере (или на вашем ноутбуке; одна дополнительная строка ниже) и пустой git-репозиторий на любом хостинге (GitHub, GitLab, Bitbucket, Azure DevOps, самохостинг) для хранения вашей базы знаний. При первом запуске приложение заполняет его стартовым шаблоном.
Возьмите два файла развертывания — клонирование не требуется:
mkdir hexis && cd hexis
# v0.10.0 below = the release this page was written against; replace with the latest release tag
wget https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/docker-compose.yml
wget -O .env https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/.env.example
(Работа из git-клона аналогична — оба файла находятся в корне репозитория; cp .env.example .env.)
Откройте .env и заполните четыре обязательных значения (всё остальное может подождать):
ADMIN_EMAIL=you@example.com # the deployment owner, always an admin
ADMIN_PASSWORD=pick-something # sign-in password; only with password login (SSO-only deployments drop it)
JWT_SECRET=… # generate with the command below
SECRETS_ENC_KEY=… # generate with the command below
Сгенерируйте два секрета (запустите дважды, вставьте один результат в каждый):
node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
# no Node installed? docker run --rm node:22-slim node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
Для публичного развертывания, обслуживаемого через HTTPS встроенным прокси, также укажите домен — он определяет все остальные публичные параметры (источники, переход прокси):
DOMAIN=bevel.your-domain.com
Затем запустите всё. При развертывании загружается образ, который CI публикует при каждом релизе — на вашем сервере ничего не компилируется, поэтому достаточно небольшого экземпляра. Зафиксируйте версию в .env (HEXIS_VERSION=0.10.0), чтобы последующий pull не стал незапланированным обновлением — UPGRADING.md описывает обновления и резервное копирование. Сборка из исходников (промежуточный сервер, отслеживающий ветку, форк) описана в deployment/docker-compose.build.yml (объяснено в deployment/).
Публичный HTTPS без собственного прокси (голый экземпляр EC2, обычный VPS): профиль https запускает Caddy перед приложением, с автоматическими сертификатами Let's Encrypt для DOMAIN и редиректом HTTP→HTTPS. Сначала: DNS-запись A (или AAAA) для домена, указывающая на сервер, и порты 80 + 443 открыты для интернета (порт 80 не является необязательным — и проверка сертификата, и редирект используют его).
docker compose -f docker-compose.yml --profile https up -d
За вашим собственным обратным прокси (Coolify, Traefik, nginx): пропустите профиль — два терминатора TLS для одного приложения — это слишком много. Вместо DOMAIN задайте значения источника и количество переходов прокси в .env, чтобы редиректы OAuth строились правильно, а ограничения скорости видели реальные IP-адреса клиентов, а не прокси:
PUBLIC_BACKEND_URL=https://bevel.your-domain.com # public origin; OAuth redirects are built from it
PUBLIC_FRONTEND_URL=https://bevel.your-domain.com # same origin: the backend serves the SPA
TRUST_PROXY=1 # your proxy hop count
docker compose -f docker-compose.yml up -d
Явный -f важен в клоне: он пропускает docker-compose.override.yml, поэтому приложение не публикует порт хоста — ваш прокси обращается к нему на порт 3001 через сеть Compose. Это сделано намеренно: фиксированный опубликованный порт приводит к сбою каждого повторного развертывания с сообщением port is already allocated, потому что новый контейнер запускается, пока старый всё еще удерживает порт.
Откройте ваш домен и войдите с помощью ADMIN_EMAIL / ADMIN_PASSWORD.
Просто пробуете на ноутбуке? Те же шаги, минус DOMAIN и значения источника — плюс один дополнительный файл: docker-compose.yml сам по себе не публикует порт хоста (см. выше), а docker-compose.override.yml — это часть, которая добавляет
приложение на localhost. В клоне оно уже есть; рядом со скачанными через wget файлами получите и его:
wget https://raw.githubusercontent.com/Bevel-Software/Hexis/v0.10.0/docker-compose.override.yml
docker compose up -d
Затем откройте http://localhost:3001 (другой порт: APP_PORT=8080 docker compose up -d). Оставьте TRUST_PROXY здесь не заданным — без прокси перед приложением доверие к пересылаемым заголовкам позволило бы клиентам подделывать свой адрес.
Приложение запрашивает то, что не смогло угадать, и проверяет это на реальном хосте перед сохранением:
main).Поскольку репозиторий пуст, приложение инициализирует его из встроенного шаблона и записывает roles.yaml, где первый администратор — вы. Всё, вы в рабочем пространстве. Перейдите в Skills & Tools, чтобы создать свой первый плагин и навык, а в Connect (в меню приложения), чтобы подключить агента через MCP.
Переходите в продакшн? Справочник по конфигурации охватывает единый вход, состояние, которое нужно сохранять, проверки работоспособности и настройку через окружение вместо экрана настройки.
Вам понадобятся: Node 22.13 или новее (.nvmrc; диапазон версий движка >=22.13 <23), pnpm 10, git ≥ 2.41 и Postgres 17 (подойдёт встроенный):
docker compose up -d db # just the database
pnpm install
pnpm build # builds the packages the apps import
cp .env.example .env # fill the same four required values;
# the default DATABASE_URL already points at the bundled db
pnpm dev # backend on :3001, Vite dev server on :5173
Откройте http://localhost:5173 (dev-сервер проксирует запросы к бэкенду). Полезные команды: pnpm test, pnpm typecheck, pnpm lint.
Миграции выполняются автоматически при запуске; отдельного шага миграции нет ни в разработке, ни в продакшене.
| Путь | Что это |
|---|---|
packages/shared |
@bevel-software/platform-shared: общие типы + чистые доменные утилиты |
packages/core-backend |
@bevel-software/platform-core-backend: основной бэкенд (поставляется с migrations/ + kb-template/) |
packages/core-frontend |
@bevel-software/platform-core-frontend: основной интерфейс, опубликованный в виде исходного кода TS/TSX |
apps/server |
автономная оболочка основного бэкенда |
apps/web |
автономная оболочка SPA (Vite) |
Вопросы, возникающие при оценке Hexis командами как центрального версионируемого каталога навыков и инструментов для агентов.
Как агенты находят навыки, не перегружая контекстное окно?
Они ищут их, а не загружают все: list_skills и search сужают область поиска, get_skill возвращает один навык в момент вызова.
Какие агенты могут подключиться?
Любой клиент, поддерживающий MCP, включая Claude Code, Codex, Cursor, Cline и ChatGPT, каждый видит только то, что разрешает роль его пользователя.
Как версионируется каталог?
Через git: каждое сохранение — это коммит, поэтому история, blame и revert работают так же, как для кода, а изменения в защищённых ветках отправляются как проверяемые запросы на изменение.
Какое управление мы получаем?
Контроль доступа на уровне файлов, запросы на изменение, проходящие проверку, и git-журнал аудита: кто что изменил и кто это одобрил.
Лицензия: Apache-2.0