hermes-agent/gateway/platforms
Teknium b8b45bfb77
feat(discord): add /thread command, auto_thread config, and media metadata fix (#1178)
- Add /thread slash command that creates a Discord thread and starts a
  new Hermes session in it. The starter message (if provided) becomes
  the first user input in the new session.
- Add discord.auto_thread config option (DISCORD_AUTO_THREAD env var):
  when enabled, every message in a text channel automatically creates
  a thread, allowing parallel isolated sessions.
- Fix Discord media method signatures to accept metadata kwarg
  (send_voice, send_image_file, send_image) — prevents TypeError
  when the base adapter passes platform metadata.
- Fix test mock isolation: add app_commands and ForumChannel to
  discord mocks so tests pass in full-suite runs.

Based on PRs #866 and #1109 by insecurejezza, modified per review:
removed /channel command (unsafe), added auto_thread feature,
made /thread dispatch new sessions.

Co-authored-by: insecurejezza <insecurejezza@users.noreply.github.com>
2026-03-13 08:52:54 -07:00
..
__init__.py Enhance CLI with multi-platform messaging integration and configuration management 2026-02-02 19:01:51 -08:00
ADDING_A_PLATFORM.md docs: add platform integration checklist for new gateway adapters 2026-03-08 21:20:06 -07:00
base.py fix: improve gateway secret capture guidance message 2026-03-13 04:10:22 -07:00
discord.py feat(discord): add /thread command, auto_thread config, and media metadata fix (#1178) 2026-03-13 08:52:54 -07:00
email.py feat: add email gateway platform (IMAP/SMTP) 2026-03-11 06:32:01 -07:00
homeassistant.py fix: Home Assistant event filtering now closed by default (#1169) 2026-03-13 07:40:38 -07:00
signal.py fix(signal): align send() signature with base class (content, reply_to, metadata) 2026-03-10 15:18:26 -07:00
slack.py fix: slack file upload fallback loses thread context 2026-03-13 04:26:27 +03:00
telegram.py fix: add **kwargs to base/telegram media send methods for metadata routing 2026-03-11 03:24:39 -07:00
whatsapp.py fix: replace blocking time.sleep with await asyncio.sleep in WhatsApp connect 2026-03-11 02:51:49 -07:00