From 1acf81fdf5e3e820805b6635a39c9befa6c8318c Mon Sep 17 00:00:00 2001 From: Teknium Date: Mon, 13 Apr 2026 23:21:25 -0700 Subject: [PATCH] docs: add QQBot to all 14 docs pages (full platform parity) - sidebars.ts: sidebar navigation entry - webhooks.md: deliver field routing table - configuration.md: platform keys list - sessions.md: platform identifiers table - features/cron.md: delivery target table - developer-guide/architecture.md: adapter listing - developer-guide/cron-internals.md: delivery target table - developer-guide/gateway-internals.md: file tree listing - guides/cron-troubleshooting.md: supported platforms list - integrations/index.md: platform links list - reference/toolsets-reference.md: toolset table (qqbot.md, environment-variables.md, and messaging/index.md were already included in the contributor's original PR) --- website/docs/developer-guide/architecture.md | 2 +- website/docs/developer-guide/cron-internals.md | 1 + website/docs/developer-guide/gateway-internals.md | 1 + website/docs/guides/cron-troubleshooting.md | 2 +- website/docs/integrations/index.md | 2 +- website/docs/reference/toolsets-reference.md | 1 + website/docs/user-guide/configuration.md | 2 +- website/docs/user-guide/features/cron.md | 1 + website/docs/user-guide/messaging/webhooks.md | 2 +- website/docs/user-guide/sessions.md | 1 + website/sidebars.ts | 1 + 11 files changed, 11 insertions(+), 5 deletions(-) diff --git a/website/docs/developer-guide/architecture.md b/website/docs/developer-guide/architecture.md index 9e1d771ae3..eec24815bb 100644 --- a/website/docs/developer-guide/architecture.md +++ b/website/docs/developer-guide/architecture.md @@ -120,7 +120,7 @@ hermes-agent/ │ └── platforms/ # 18 adapters: telegram, discord, slack, whatsapp, │ # signal, matrix, mattermost, email, sms, │ # dingtalk, feishu, wecom, wecom_callback, weixin, -│ # bluebubbles, homeassistant, webhook, api_server +│ # bluebubbles, qqbot, homeassistant, webhook, api_server │ ├── acp_adapter/ # ACP server (VS Code / Zed / JetBrains) ├── cron/ # Scheduler (jobs.py, scheduler.py) diff --git a/website/docs/developer-guide/cron-internals.md b/website/docs/developer-guide/cron-internals.md index 5d1cdc39c9..d5bd237de0 100644 --- a/website/docs/developer-guide/cron-internals.md +++ b/website/docs/developer-guide/cron-internals.md @@ -180,6 +180,7 @@ Cron job results can be delivered to any supported platform: | WeCom | `wecom` | Deliver to WeCom | | Weixin | `weixin` | Deliver to Weixin (WeChat) | | BlueBubbles | `bluebubbles` | Deliver to iMessage via BlueBubbles | +| QQ Bot | `qqbot` | Deliver to QQ (Tencent) via Official API v2 | For Telegram topics, use the format `telegram::` (e.g., `telegram:-1001234567890:17585`). diff --git a/website/docs/developer-guide/gateway-internals.md b/website/docs/developer-guide/gateway-internals.md index 997930c0a4..f3a9942c8f 100644 --- a/website/docs/developer-guide/gateway-internals.md +++ b/website/docs/developer-guide/gateway-internals.md @@ -162,6 +162,7 @@ gateway/platforms/ ├── wecom.py # WeCom (WeChat Work) callback ├── weixin.py # Weixin (personal WeChat) via iLink Bot API ├── bluebubbles.py # Apple iMessage via BlueBubbles macOS server +├── qqbot.py # QQ Bot (Tencent QQ) via Official API v2 ├── webhook.py # Inbound/outbound webhook adapter ├── api_server.py # REST API server adapter └── homeassistant.py # Home Assistant conversation integration diff --git a/website/docs/guides/cron-troubleshooting.md b/website/docs/guides/cron-troubleshooting.md index 8546b5edfa..d85a153090 100644 --- a/website/docs/guides/cron-troubleshooting.md +++ b/website/docs/guides/cron-troubleshooting.md @@ -70,7 +70,7 @@ Delivery targets are case-sensitive and require the correct platform to be confi | `local` | Write access to `~/.hermes/cron/output/` | | `origin` | Delivers to the chat where the job was created | -Other supported platforms include `mattermost`, `homeassistant`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`, and `webhook`. You can also target a specific chat with `platform:chat_id` syntax (e.g., `telegram:-1001234567890`). +Other supported platforms include `mattermost`, `homeassistant`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`, `qqbot`, and `webhook`. You can also target a specific chat with `platform:chat_id` syntax (e.g., `telegram:-1001234567890`). If delivery fails, the job still runs — it just won't send anywhere. Check `hermes cron list` for updated `last_error` field (if available). diff --git a/website/docs/integrations/index.md b/website/docs/integrations/index.md index cfc82d41d1..ccb7853702 100644 --- a/website/docs/integrations/index.md +++ b/website/docs/integrations/index.md @@ -82,7 +82,7 @@ Speech-to-text supports three providers: local Whisper (free, runs on-device), G Hermes runs as a gateway bot on 15+ messaging platforms, all configured through the same `gateway` subsystem: -- **[Telegram](/docs/user-guide/messaging/telegram)**, **[Discord](/docs/user-guide/messaging/discord)**, **[Slack](/docs/user-guide/messaging/slack)**, **[WhatsApp](/docs/user-guide/messaging/whatsapp)**, **[Signal](/docs/user-guide/messaging/signal)**, **[Matrix](/docs/user-guide/messaging/matrix)**, **[Mattermost](/docs/user-guide/messaging/mattermost)**, **[Email](/docs/user-guide/messaging/email)**, **[SMS](/docs/user-guide/messaging/sms)**, **[DingTalk](/docs/user-guide/messaging/dingtalk)**, **[Feishu/Lark](/docs/user-guide/messaging/feishu)**, **[WeCom](/docs/user-guide/messaging/wecom)**, **[WeCom Callback](/docs/user-guide/messaging/wecom-callback)**, **[Weixin](/docs/user-guide/messaging/weixin)**, **[BlueBubbles](/docs/user-guide/messaging/bluebubbles)**, **[Home Assistant](/docs/user-guide/messaging/homeassistant)**, **[Webhooks](/docs/user-guide/messaging/webhooks)** +- **[Telegram](/docs/user-guide/messaging/telegram)**, **[Discord](/docs/user-guide/messaging/discord)**, **[Slack](/docs/user-guide/messaging/slack)**, **[WhatsApp](/docs/user-guide/messaging/whatsapp)**, **[Signal](/docs/user-guide/messaging/signal)**, **[Matrix](/docs/user-guide/messaging/matrix)**, **[Mattermost](/docs/user-guide/messaging/mattermost)**, **[Email](/docs/user-guide/messaging/email)**, **[SMS](/docs/user-guide/messaging/sms)**, **[DingTalk](/docs/user-guide/messaging/dingtalk)**, **[Feishu/Lark](/docs/user-guide/messaging/feishu)**, **[WeCom](/docs/user-guide/messaging/wecom)**, **[WeCom Callback](/docs/user-guide/messaging/wecom-callback)**, **[Weixin](/docs/user-guide/messaging/weixin)**, **[BlueBubbles](/docs/user-guide/messaging/bluebubbles)**, **[QQ Bot](/docs/user-guide/messaging/qqbot)**, **[Home Assistant](/docs/user-guide/messaging/homeassistant)**, **[Webhooks](/docs/user-guide/messaging/webhooks)** See the [Messaging Gateway overview](/docs/user-guide/messaging) for the platform comparison table and setup guide. diff --git a/website/docs/reference/toolsets-reference.md b/website/docs/reference/toolsets-reference.md index 49785c255d..e941015b6a 100644 --- a/website/docs/reference/toolsets-reference.md +++ b/website/docs/reference/toolsets-reference.md @@ -106,6 +106,7 @@ Platform toolsets define the complete tool configuration for a deployment target | `hermes-wecom-callback` | WeCom callback toolset — enterprise self-built app messaging (full access). | | `hermes-weixin` | Same as `hermes-cli`. | | `hermes-bluebubbles` | Same as `hermes-cli`. | +| `hermes-qqbot` | Same as `hermes-cli`. | | `hermes-homeassistant` | Same as `hermes-cli`. | | `hermes-webhook` | Same as `hermes-cli`. | | `hermes-gateway` | Union of all messaging platform toolsets. Used internally when the gateway needs the broadest possible tool set. | diff --git a/website/docs/user-guide/configuration.md b/website/docs/user-guide/configuration.md index a27884e0c1..7332632077 100644 --- a/website/docs/user-guide/configuration.md +++ b/website/docs/user-guide/configuration.md @@ -919,7 +919,7 @@ display: slack: 'off' # quiet in shared Slack workspace ``` -Platforms without an override fall back to the global `tool_progress` value. Valid platform keys: `telegram`, `discord`, `slack`, `signal`, `whatsapp`, `matrix`, `mattermost`, `email`, `sms`, `homeassistant`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`. +Platforms without an override fall back to the global `tool_progress` value. Valid platform keys: `telegram`, `discord`, `slack`, `signal`, `whatsapp`, `matrix`, `mattermost`, `email`, `sms`, `homeassistant`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`, `qqbot`. `interim_assistant_messages` is gateway-only. When enabled, Hermes sends completed mid-turn assistant updates as separate chat messages. This is independent from `tool_progress` and does not require gateway streaming. diff --git a/website/docs/user-guide/features/cron.md b/website/docs/user-guide/features/cron.md index 5e0dd02baf..222c00827c 100644 --- a/website/docs/user-guide/features/cron.md +++ b/website/docs/user-guide/features/cron.md @@ -204,6 +204,7 @@ When scheduling jobs, you specify where the output goes: | `"wecom"` | WeCom | | | `"weixin"` | Weixin (WeChat) | | | `"bluebubbles"` | BlueBubbles (iMessage) | | +| `"qqbot"` | QQ Bot (Tencent QQ) | | The agent's final response is automatically delivered. You do not need to call `send_message` in the cron prompt. diff --git a/website/docs/user-guide/messaging/webhooks.md b/website/docs/user-guide/messaging/webhooks.md index 4c0cb751dd..bbf04bcb4f 100644 --- a/website/docs/user-guide/messaging/webhooks.md +++ b/website/docs/user-guide/messaging/webhooks.md @@ -70,7 +70,7 @@ Routes define how different webhook sources are handled. Each route is a named e | `secret` | **Yes** | HMAC secret for signature validation. Falls back to the global `secret` if not set on the route. Set to `"INSECURE_NO_AUTH"` for testing only (skips validation). | | `prompt` | No | Template string with dot-notation payload access (e.g. `{pull_request.title}`). If omitted, the full JSON payload is dumped into the prompt. | | `skills` | No | List of skill names to load for the agent run. | -| `deliver` | No | Where to send the response: `github_comment`, `telegram`, `discord`, `slack`, `signal`, `sms`, `whatsapp`, `matrix`, `mattermost`, `homeassistant`, `email`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`, or `log` (default). | +| `deliver` | No | Where to send the response: `github_comment`, `telegram`, `discord`, `slack`, `signal`, `sms`, `whatsapp`, `matrix`, `mattermost`, `homeassistant`, `email`, `dingtalk`, `feishu`, `wecom`, `weixin`, `bluebubbles`, `qqbot`, or `log` (default). | | `deliver_extra` | No | Additional delivery config — keys depend on `deliver` type (e.g. `repo`, `pr_number`, `chat_id`). Values support the same `{dot.notation}` templates as `prompt`. | ### Full example diff --git a/website/docs/user-guide/sessions.md b/website/docs/user-guide/sessions.md index fa6c0905b9..bd1007859e 100644 --- a/website/docs/user-guide/sessions.md +++ b/website/docs/user-guide/sessions.md @@ -46,6 +46,7 @@ Each session is tagged with its source platform: | `wecom` | WeCom (WeChat Work) | | `weixin` | Weixin (personal WeChat) | | `bluebubbles` | Apple iMessage via BlueBubbles macOS server | +| `qqbot` | QQ Bot (Tencent QQ) via Official API v2 | | `homeassistant` | Home Assistant conversation | | `webhook` | Incoming webhooks | | `api-server` | API server requests | diff --git a/website/sidebars.ts b/website/sidebars.ts index eb695657a4..111d70e0e2 100644 --- a/website/sidebars.ts +++ b/website/sidebars.ts @@ -118,6 +118,7 @@ const sidebars: SidebarsConfig = { 'user-guide/messaging/wecom-callback', 'user-guide/messaging/weixin', 'user-guide/messaging/bluebubbles', + 'user-guide/messaging/qqbot', 'user-guide/messaging/open-webui', 'user-guide/messaging/webhooks', ],