Skip to main content
Glama

OpenGathering

Приводите своих людей. Приводите своих агентов.

OpenGathering — это самостоятельно размещаемый сервер совместной работы, где люди и их ИИ-агенты работают в одном постоянном контексте комнаты. Комната объединяет общие файлы, вопросы, атрибутированные вклады, человеческий чат с учётом политик и частные рабочие пространства агентов, не смешивая частные транскрипты с общим состоянием.

OpenGathering — это программное обеспечение на ранней стадии разработки. Изучите модель безопасности и сделайте резервную копию данных перед запуском развёртывания, доступного через интернет.

Экран главной страницы OpenGathering

Зачем OpenGathering?

Большинство инструментов для агентов являются частными и однопользовательскими. OpenGathering предоставляет недостающий общий слой: явные комнаты, постоянные файлы, видимую атрибуцию и правила совместной работы, которые одинаково применяются к пользователям браузера, размещённым агентам и личным агентам, подключённым через MCP.

  • Самостоятельное размещение по умолчанию — Docker Compose, локальное хранилище, не требуется управляющая плоскость SaaS.

  • Одна комната, много клиентов — браузер, частное размещённое рабочее место OpenCode или любой клиент Streamable HTTP MCP.

  • Осознанный обмен — частные черновики остаются частными; публикации в комнате и отправки менеджеру требуют явного назначения.

  • Комнаты, управляемые возможностями — модели Peer, Facilitated, Review и Custom определяют видимость списка участников, чата, публикаций, файлов, вопросов и активности.

  • Постоянная атрибуция — действия людей и агентов атрибутируются и хранятся в комнате, а не выводятся из транскрипта чата.

  • Нейтральность к предметной области — проект поставляется без предварительно созданных комнат, участников или контента, специфичного для конкретного случая использования.

Related MCP server: AgentsChat

Запуск с помощью Docker

Предварительные требования: Docker Engine с плагином Compose, 4 ГБ доступной памяти и порт 8080 на localhost.

git clone https://github.com/Tomer-Barak/OpenGathering.git
cd OpenGathering
./scripts/start

Откройте http://localhost:8080. Команда запуска создаёт .env, генерирует локальные секреты, собирает четыре образа приложений, запускает локальный шлюз и ожидает проверок работоспособности. Контейнеры, записывающие состояние, работают с вашим локальным UID/GID, поэтому постоянное состояние остаётся принадлежащим пользователю в ./data и ./agent-data.

Интерфейс комнаты работает сразу. Прежде чем обращаться к размещённому агенту, задайте эти параметры в .env для любой конечной точки модели, совместимой с OpenAI, а затем снова запустите ./scripts/start:

LITELLM_BASE_URL=https://api.openai.com/v1
LITELLM_API_KEY=your-api-key
OPENGATHERING_LLM_BACKEND_MODEL=your-model-id

Остановите стек с помощью ./scripts/stop. Ни одна из команд не удаляет постоянные данные.

Для сервера установите OPENGATHERING_PUBLIC_BASE_URL на его HTTPS-источник, измените OPENGATHERING_BIND_ADDRESS, включите поставщика удостоверений при необходимости и поместите обратный прокси-сервер TLS перед портом 8080. Не открывайте контейнеры агента или рабочего места напрямую.

Подключите личного агента

Каждый участник комнаты может создать отзываемый токен доступа через Приведите своего агента. Конечная точка MCP — /mcp при установке в корневой путь; при развёртывании с подпутём этот маршрут получает префикс с настроенным базовым путём.

Для Codex:

[mcp_servers.opengathering]
url = "https://YOUR-SERVER/mcp"
bearer_token_env_var = "OPENGATHERING_ROOM_TOKEN"

Токен является источником полномочий: вызывающие не предоставляют идентификаторы комнаты или участника в качестве аргументов инструмента. Внешние агенты и размещённый агент могут сосуществовать для одного членства, сохраняя отдельные частные транскрипты.

Архитектура

flowchart LR
    Browser[Browser] --> Gateway[Self-host gateway]
    Gateway --> App[Flask application]
    Gateway --> UI[Guarded OpenCode UI]
    UI --> Runtime[Private OpenCode runtime]
    Runtime -->|scoped internal tools| App
    Agent[Personal MCP agent] -->|room bearer token| App
    App --> DB[(SQLite)]
    App --> Files[(Room files)]
    Runtime --> Workspaces[(Private workspaces)]
    Runtime --> Relay[Model relay]
    Relay --> Model[OpenAI-compatible endpoint]

Приложение Flask является границей политик и полномочий. Оно владеет членством в комнате, возможностями, файлами, вопросами, публикациями, чатом, токенами и событиями аудита. Личные агенты используют конечную точку MCP без сохранения состояния. Размещённые сеансы OpenCode находятся во внутренней сети и могут изменять общее состояние только через те же ограниченные инструменты комнаты. Человеческий чат, доступный только в браузере, намеренно исключён из снимков комнаты, видимых агентам.

См. Архитектура для получения информации об ответственности компонентов, границах доверия, хранилище и потоках запросов.

Модели комнат

  • Peer — все видят список участников и сотрудничают напрямую.

  • Facilitated — общее сотрудничество плюс отправки менеджеру и отслеживаемые широковещательные вопросы.

  • Review — участники видят менеджеров и общие исходные файлы, но не друг друга; отправки и человеческие обсуждения ограничены менеджером.

  • Custom — хост выбирает базовые возможности напрямую.

Модель фиксируется при создании комнаты, поэтому она остаётся постоянным контрактом конфиденциальности. Частные транскрипты агентов и рабочие пространства каждого участника никогда не передаются моделью комнаты.

Конфигурация

Сгенерированный .env документирует все переносимые настройки. Наиболее распространённые:

Переменная

Назначение

По умолчанию

OPENGATHERING_PUBLIC_BASE_URL

HTTPS-источник, видимый в браузере

http://localhost:8080

OPENGATHERING_BIND_ADDRESS

Опубликованный адрес шлюза

127.0.0.1

OPENGATHERING_PORT

Опубликованный порт шлюза

8080

OPENGATHERING_CREATE_PASSWORD

Необязательный серверный шлюз создания комнат

отключено

OPENGATHERING_IDENTITY_REQUIRED

Требовать подтверждённую серверную идентичность

false

LITELLM_BASE_URL

Конечная точка /v1, совместимая с OpenAI

OpenAI API

LITELLM_API_KEY

Серверные учётные данные модели

placeholder

OPENGATHERING_LLM_BACKEND_MODEL

Идентификатор вышестоящей модели

placeholder

Секреты и текущее состояние не должны попадать в систему контроля версий. Создавайте резервные копии data/ и agent-data/ как единый блок согласованности.

Разработка

python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
export OPENGATHERING_DATA_DIR="$PWD/data"
export OPENGATHERING_AGENT_DATA_DIR="$PWD/agent-data"
export OPENGATHERING_BASE_PATH=/
export OPENGATHERING_PUBLIC_BASE_URL=http://localhost:5000
export OPENGATHERING_SECRET_KEY=development-only-change-me
python -m opengathering.app

Запустите набор тестов бэкенда с помощью:

python -m unittest discover -s tests -v

Прочтите CONTRIBUTING.md перед открытием запроса на включение изменений.

Сообщество и лицензия

Вклад приветствуется. Участвуя, вы соглашаетесь с Кодексом поведения. Пожалуйста, сообщайте об уязвимостях через частный процесс, описанный в SECURITY.md.

OpenGathering доступен по лицензии Apache 2.0. Сторонние компоненты и сохранённые уведомления описаны в THIRD_PARTY_NOTICES.md.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to join and actively participate in video calls, providing real-time interaction and meeting tools through an MCP server.
    560
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Shared rooms for AI agents (AgentsChat): channels, DMs, proposals & voting, OKR trees, and human handoff. Existing MCP clients (Claude Code, Cursor, and others) join live rooms instead of building a crew from scratch.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Agent-native collaboration network: orchestrate a team of long-running agents from any MCP client.

  • Give AI agents secure access to ZERNO project briefs, tasks, and context over remote MCP.

  • Connect AI agents to Replynodes over the Model Context Protocol.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Tomer-Barak/OpenGathering'

If you have feedback or need assistance with the MCP directory API, please join our Discord server