mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-30 19:09:28 +00:00
Same class of bug as the LINE adapter (NS-603): defaulting the webhook bind to "0.0.0.0" (or hardcoding it) binds IPv4 ONLY, so the listener is unreachable over IPv6-only private networks such as Fly.io 6PN. - wecom callback_adapter: DEFAULT_HOST None; config.py env seed no longer forces 0.0.0.0 when WECOM_CALLBACK_HOST is unset. - msgraph_webhook: DEFAULT_HOST None; the allowed_source_cidrs requirement still fires for the all-interfaces default (host=None is treated as network-accessible). - whatsapp_cloud: DEFAULT_WEBHOOK_HOST None. - teams: hardcoded 0.0.0.0 TCPSite bind → _DEFAULT_HOST=None with new TEAMS_HOST / extra.host override (mirrors LINE_HOST pattern). - telegram: hardcoded listen="0.0.0.0" → default "" (tornado bind_sockets opens one socket per address family; verified against PTB 22.6/tornado) with new TELEGRAM_WEBHOOK_HOST / extra.webhook_host override. Explicit host overrides everywhere are preserved; empty/unset collapses to the dual-stack default. "::" remains a bad substitute on bindv6only=1 hosts (see LINE adapter comment).
52 lines
2 KiB
YAML
52 lines
2 KiB
YAML
name: teams-platform
|
|
label: Microsoft Teams
|
|
kind: platform
|
|
version: 1.0.0
|
|
description: >
|
|
Microsoft Teams gateway adapter for Hermes Agent.
|
|
Connects to Microsoft Teams via the Bot Framework and relays messages
|
|
between Teams chats (personal DMs, group chats, channel posts) and
|
|
the Hermes agent. Supports Adaptive Card approval prompts.
|
|
author: Aamir Jawaid
|
|
# ``requires_env`` entries are surfaced in ``hermes config`` UI via the
|
|
# platform-plugin env var injector in ``hermes_cli/config.py``.
|
|
requires_env:
|
|
- name: TEAMS_CLIENT_ID
|
|
description: "Azure AD application (Bot Framework) client ID"
|
|
prompt: "Teams / Azure AD client ID"
|
|
url: "https://portal.azure.com/"
|
|
password: false
|
|
- name: TEAMS_CLIENT_SECRET
|
|
description: "Azure AD application client secret"
|
|
prompt: "Teams / Azure AD client secret"
|
|
url: "https://portal.azure.com/"
|
|
password: true
|
|
- name: TEAMS_TENANT_ID
|
|
description: "Azure AD tenant ID hosting the bot application"
|
|
prompt: "Teams / Azure AD tenant ID"
|
|
password: false
|
|
optional_env:
|
|
- name: TEAMS_PORT
|
|
description: "Webhook listen port (Bot Framework default: 3978)"
|
|
prompt: "Webhook port"
|
|
password: false
|
|
- name: TEAMS_HOST
|
|
description: "Webhook bind host (default: unset → dual-stack, all interfaces IPv4+IPv6)"
|
|
prompt: "Webhook host"
|
|
password: false
|
|
- name: TEAMS_ALLOWED_USERS
|
|
description: "Comma-separated Teams user IDs / UPNs allowed to talk to the bot"
|
|
prompt: "Allowed users (comma-separated)"
|
|
password: false
|
|
- name: TEAMS_ALLOW_ALL_USERS
|
|
description: "Allow any Teams user to trigger the bot (dev only)"
|
|
prompt: "Allow all users? (true/false)"
|
|
password: false
|
|
- name: TEAMS_HOME_CHANNEL
|
|
description: "Default chat/channel ID for cron / notification delivery"
|
|
prompt: "Home channel (or empty)"
|
|
password: false
|
|
- name: TEAMS_HOME_CHANNEL_NAME
|
|
description: "Display name for the Teams home channel"
|
|
prompt: "Home channel display name"
|
|
password: false
|