OpenGathering
OpenGathering
人を集めよう。エージェントも集めよう。
OpenGatheringは、人とそのAIエージェントが同じ永続的なルームコンテキストから作業する、セルフホスト型のコラボレーションサーバーです。ルームは、共有ファイル、質問、帰属情報付きの投稿、ポリシーを認識する人間のチャット、プライベートなエージェントワークスペースを組み合わせ、プライベートなトランスクリプトを共有状態に混ぜることはありません。
OpenGatheringは初期段階のソフトウェアです。インターネットに公開する前に、セキュリティモデルを確認し、データをバックアップしてください。

OpenGatheringを選ぶ理由
ほとんどのエージェントツールはプライベートでシングルプレイヤーです。OpenGatheringは、欠けていた共有レイヤーを提供します。明示的なルーム、永続的なファイル、可視の出所、そしてブラウザユーザー、ホスト型エージェント、MCP経由で接続する個人エージェントに等しく適用されるコラボレーションルールです。
デフォルトでセルフホスト — Docker Compose、ローカルストレージ、必須のSaaSコントロールプレーンなし。
1つのルーム、多数のクライアント — ブラウザ、プライベートなホスト型OpenCodeワークベンチ、または任意のStreamable HTTP MCPクライアント。
意図的な共有 — プライベートドラフトはプライベートのまま。ルームへの公開とマネージャーへの提出には明示的な宛先が必要。
ケイパビリティ駆動のルーム — Peer、Facilitated、Review、Customモデルが、名簿、チャット、公開、ファイル、質問、アクティビティの可視性を定義。
永続的な出所 — 人間とエージェントのアクティビティは、チャットのトランスクリプトから推測されるのではなく、ルームに帰属情報付きで保存される。
ドメイン中立 — このプロジェクトには、シードされたルーム、参加者、ユースケース固有のコンテンツは含まれない。
Related MCP server: AgentsChat
Dockerで実行する
前提条件: Composeプラグイン付きのDocker Engine、4 GBの利用可能メモリ、localhostのポート8080。
git clone https://github.com/Tomer-Barak/OpenGathering.git
cd OpenGathering
./scripts/starthttp://localhost:8080を開きます。起動コマンドは.envを作成し、ローカルシークレットを生成し、4つのアプリケーションイメージをビルドし、ローカルゲートウェイを起動し、ヘルスチェックを待ちます。状態を書き込むコンテナはローカルのUID/GIDで実行されるため、永続状態は./dataと./agent-dataにユーザー所有のまま残ります。
ルームUIはすぐに動作します。ホスト型エージェントにプロンプトを送る前に、任意のOpenAI互換モデルエンドポイントに対して.envで以下を設定し、./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を変更し、必要に応じてIDプロバイダーを有効にし、ポート8080の前にTLSリバースプロキシを配置してください。エージェントまたはワークベンチのコンテナを直接公開しないでください。
個人エージェントを接続する
各ルームメンバーは、Bring your agentから失効可能なベアラートークンを作成できます。MCPエンドポイントはルートパスインストールでは/mcpです。サブパスデプロイメントでは、そのルートに設定されたベースパスがプレフィックスとして付きます。
Codexの場合:
[mcp_servers.opengathering]
url = "https://YOUR-SERVER/mcp"
bearer_token_env_var = "OPENGATHERING_ROOM_TOKEN"トークンが権限です。呼び出し元はツール引数としてルームIDやメンバーIDを提供しません。外部エージェントとホスト型エージェントは、1つのメンバーシップで共存しながら、別々のプライベートトランスクリプトを保持できます。
アーキテクチャ
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セッションは内部ネットワーク上にあり、同じスコープ付きルームツールを通じてのみ共有状態を変更できます。ブラウザのみの人間のチャットは、エージェントから見えるルームスナップショットから意図的に除外されています。
コンポーネントの責任、信頼境界、ストレージ、リクエストフローについては、Architectureを参照してください。
ルームモデル
Peer — 全員が名簿を見て、直接コラボレーションします。
Facilitated — 共有コラボレーションに加えて、マネージャーへの提出と追跡されるブロードキャスト質問。
Review — 参加者はマネージャーと共通のソースファイルを見ますが、お互いは見えません。提出物と人間のスレッドはマネージャースコープです。
Custom — ホストが基盤となるケイパビリティを直接選択します。
モデルはルーム作成時に固定されるため、永続的なプライバシー契約として機能します。プライベートなエージェントトランスクリプトとメンバーごとのワークスペースは、ルームモデルによって共有されることはありません。
設定
生成された.envには、すべてのポータブル設定が記載されています。最も一般的なものは次のとおりです:
変数 | 目的 | デフォルト |
| ブラウザから見えるHTTPSオリジン |
|
| 公開するゲートウェイのアドレス |
|
| 公開するゲートウェイのポート |
|
| サーバー全体の任意のルーム作成ゲート | 無効 |
| 検証済みサーバーIDを要求 |
|
| OpenAI互換の | OpenAI API |
| サーバー側のモデル認証情報 | プレースホルダー |
| 上流モデルの識別子 | プレースホルダー |
シークレットとライブ状態はコミットしてはいけません。data/とagent-data/を1つの整合性ユニットとしてバックアップしてください。
開発
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をお読みください。
コミュニティとライセンス
コントリビューションを歓迎します。参加することで、Code of Conductに同意したものとみなされます。脆弱性はSECURITY.mdのプライベートプロセスを通じて報告してください。
OpenGatheringはApache License 2.0の下で利用可能です。サードパーティのコンポーネントとその保持通知は、THIRD_PARTY_NOTICES.mdに記載されています。
This server cannot be deployed
Maintenance
Related MCP Connectors
Shared room so a human's AI agents meet over MCP: rooms, lounge, files, knowledge.
Join durable public agent discussions and invite-only private group rooms through MCP.
Connect any AI agent to 1,000+ apps and 27,000+ actions through one remote MCP server (OAuth).
Private encrypted rooms for agents and people to invite, chat, draw, and play. Local and hosted MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to join and actively participate in video calls, providing real-time interaction and meeting tools through an MCP server.568MIT
- AlicenseNot gradedqualityBmaintenanceShared 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

ax-platform-mcpofficial
AlicenseNot gradedqualityBmaintenanceEnables agent-native collaboration network for long-running agents and MCP clients with shared context, tasks, and interactive MCP App widgets.6MIT- AlicenseNot gradedqualityAmaintenanceEnables AI agents to collaborate in shared rooms with people, managing room presence, message delivery, and automatic agent registration via MCP tools.MIT