emma-hermes/plugins
LeonSGP43 dbd8704673 fix(slack): clear stuck assistant status on /stop and via explicit metadata
Salvaged from #32340 by @LeonSGP43, adapted to the workspace-scoped
status tracking that landed in #63709:

- /stop with no running agent now best-effort clears the platform
  status indicator, so a phantom 'is thinking...' left by a gateway
  restart or a turn that died without a final send can always be
  dismissed (#32295).
- SlackAdapter.stop_typing clears an untracked thread when the caller
  names it explicitly in metadata — clearing an unset status is a
  harmless no-op on Slack's side. The fallback is skipped when multiple
  Slack Connect workspaces track the same channel+thread and no team_id
  is given, preserving #63709's cross-workspace safety guarantee.
2026-07-14 21:31:32 -07:00
..
browser
context_engine
cron_providers fix(cron/chronos): cache PyJWKClient across fires to stop JWKS fetch storm (#64641) 2026-07-15 09:27:35 +10:00
dashboard_auth
disk-cleanup
google_meet refactor(setup): route dependency installs through the canonical uv→pip→ensurepip ladder 2026-07-07 04:09:35 -07:00
hermes-achievements
image_gen fix(deepinfra): harden multimodal provider routing 2026-07-14 02:59:39 +05:30
kanban fix(kanban): make Done-card results actionable 2026-07-13 01:49:35 -07:00
memory fix(dashboard): keep memory.provider in the config schema so Desktop's dropdown survives (#63886) 2026-07-13 18:56:51 -07:00
model-providers fix(nous): restore inference-api.nousresearch.com base_url 2026-07-14 21:31:04 -07:00
observability fix(nemo-relay): align dynamic plugin configuration 2026-07-13 17:01:08 -06:00
platforms fix(slack): clear stuck assistant status on /stop and via explicit metadata 2026-07-14 21:31:32 -07:00
security-guidance
spotify
teams_pipeline
video_gen feat(providers): Support DeepInfra as an LLM provider 2026-07-14 02:59:39 +05:30
web
__init__.py
plugin_utils.py