mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-27 17:58:07 +00:00
Cross-surface coverage #23768 missed (per review feedback): - tools/clarify_gateway.py: _ClarifyEntry carries a multi_select flag (register() accepts it; signature() exposes it to adapters). _coerce_text_response now parses multi-select replies — comma- or space-separated numbers ('1,3' / '1 3'), exact labels, dedup — into a JSON array string that _parse_multi_select_response decodes into a list. Out-of-range/unknown tokens reject the reply (native button UI) or fall back to custom text (awaiting_text/'Other' mode). - gateway/run.py: _clarify_callback_sync accepts multi_select and registers it on the pending entry. - gateway/platforms/base.py: default numbered-list text fallback tells the user multiple selections are allowed and how to reply. - tui_gateway/server.py: clarify_callback passes multi_select through the clarify.request payload as a hint; renderers without checkbox support ignore the field and remain single-select-compatible. - tests: 13 new gateway tests (flag storage, comma/space/single-number parsing, label matching, out-of-range rejection, dedup, end-to-end resolve, single-select regressions). |
||
|---|---|---|
| .. | ||
| qqbot | ||
| __init__.py | ||
| _http_client_limits.py | ||
| ADDING_A_PLATFORM.md | ||
| api_server.py | ||
| base.py | ||
| bluebubbles.py | ||
| helpers.py | ||
| msgraph_webhook.py | ||
| signal.py | ||
| signal_format.py | ||
| signal_rate_limit.py | ||
| webhook.py | ||
| webhook_filters.py | ||
| weixin.py | ||
| whatsapp_cloud.py | ||
| whatsapp_common.py | ||
| yuanbao.py | ||
| yuanbao_media.py | ||
| yuanbao_proto.py | ||
| yuanbao_sticker.py | ||