Teknium
89c812d1d2
feat: shared thread sessions by default — multi-user thread support ( #5391 )
...
Threads (Telegram forum topics, Discord threads, Slack threads) now default
to shared sessions where all participants see the same conversation. This is
the expected UX for threaded conversations where multiple users @mention the
bot and interact collaboratively.
Changes:
- build_session_key(): when thread_id is present, user_id is no longer
appended to the session key (threads are shared by default)
- New config: thread_sessions_per_user (default: false) — opt-in to restore
per-user isolation in threads if needed
- Sender attribution: messages in shared threads are prefixed with
[sender name] so the agent can tell participants apart
- System prompt: shared threads show 'Multi-user thread' note instead of
a per-turn User line (avoids busting prompt cache)
- Wired through all callers: gateway/run.py, base.py, telegram.py, feishu.py
- Regular group messages (no thread) remain per-user isolated (unchanged)
- DM threads are unaffected (they have their own keying logic)
Closes community request from demontut_ re: thread-based shared sessions.
2026-04-05 19:46:58 -07:00
..
2026-04-05 12:05:13 -07:00
2026-04-05 12:33:47 -07:00
2026-04-05 11:59:28 -07:00
2026-04-01 15:23:52 -07:00
2026-03-14 14:27:20 +03:00
2026-04-05 19:46:58 -07:00
2026-04-05 12:00:53 -07:00
2026-04-05 12:34:11 -07:00
2026-03-24 07:30:25 -07:00
2026-04-03 17:49:18 -07:00
2026-04-05 12:46:07 -07:00
2026-03-17 02:02:33 -07:00
2026-03-17 02:53:33 -07:00
2026-04-04 10:18:57 -07:00
2026-03-10 15:22:44 -07:00
2026-03-17 01:50:59 -07:00
2026-03-17 04:24:27 -07:00
2026-04-04 10:18:57 -07:00
2026-03-15 08:02:29 -07:00
2026-03-14 11:03:20 -07:00
2026-04-02 10:30:32 -07:00
2026-03-26 19:21:34 -07:00
2026-03-14 19:38:55 -07:00
2026-03-14 19:38:55 -07:00
2026-04-01 15:22:26 -07:00
2026-03-27 09:45:25 -07:00
2026-03-14 22:31:51 -07:00
2026-03-14 22:31:51 -07:00
2026-03-01 19:59:24 -08:00
2026-04-05 12:00:53 -07:00
2026-03-02 17:18:15 +11:00
2026-03-17 04:46:15 -07:00
2026-03-13 23:59:12 -07:00
2026-04-03 22:43:45 -07:00
2026-03-14 11:57:44 -07:00
2026-03-25 15:00:33 -07:00
2026-04-01 01:12:23 -07:00
2026-03-21 09:42:07 -07:00
2026-04-02 00:40:27 -07:00
2026-04-03 00:50:49 -07:00
2026-03-17 02:53:33 -07:00
2026-03-10 17:31:00 -07:00
2026-03-15 19:03:34 -07:00
2026-03-20 04:35:17 -07:00
2026-03-14 21:28:51 -07:00
2026-03-17 02:05:26 -07:00
2026-03-23 06:20:19 -07:00
2026-04-02 15:33:51 -07:00
2026-03-14 21:19:22 -07:00
2026-03-31 12:21:55 -07:00
2026-03-13 03:14:04 -07:00
2026-03-14 15:00:45 +03:00
2026-03-29 23:59:07 -07:00
2026-03-30 08:10:14 -07:00
2026-03-30 21:17:09 -07:00
2026-04-02 09:36:24 -07:00
2026-03-18 15:22:51 -07:00
2026-03-30 18:49:14 -07:00
2026-03-29 16:04:53 -07:00
2026-03-23 16:02:06 -07:00
2026-03-27 21:42:09 -07:00
2026-03-23 06:40:05 -07:00
2026-03-22 05:58:26 -07:00
2026-04-05 00:20:53 -07:00
2026-04-05 00:20:53 -07:00
2026-03-25 17:31:56 -07:00
2026-03-15 08:02:29 -07:00
2026-04-01 02:13:57 -07:00
2026-03-15 21:59:53 -07:00
2026-04-02 15:33:51 -07:00
2026-03-01 19:59:24 -08:00
2026-03-18 02:42:58 -07:00
2026-03-09 02:19:32 -07:00
2026-03-11 21:06:54 -07:00
2026-04-02 00:49:11 -07:00
2026-04-02 15:33:51 -07:00
2026-03-17 03:44:44 -07:00
2026-03-17 02:53:33 -07:00
2026-03-17 02:53:33 -07:00
2026-04-05 10:29:57 -07:00
2026-04-03 02:05:02 -07:00
2026-03-13 21:56:12 -07:00
2026-03-29 15:47:19 -07:00
2026-03-24 08:19:23 -07:00
2026-03-19 21:24:53 +01:00
2026-04-02 09:36:24 -07:00
2026-03-20 15:41:06 -04:00
2026-03-05 18:46:30 -08:00
2026-04-05 11:06:06 -07:00
2026-03-16 06:35:46 -07:00
2026-03-30 17:34:43 -07:00
2026-03-28 14:55:18 -07:00
2026-03-09 17:31:54 +03:00
2026-04-05 12:34:11 -07:00
2026-04-05 18:40:45 -07:00
2026-04-04 16:55:44 -07:00
2026-04-02 10:52:01 -07:00
2026-04-02 09:21:37 -07:00
2026-03-29 16:04:53 -07:00
2026-04-05 00:13:25 -07:00
2026-03-17 02:53:33 -07:00
2026-03-17 02:53:33 -07:00
2026-03-27 09:57:50 -07:00
2026-03-12 08:35:45 -07:00
2026-03-08 17:45:45 -07:00
2026-03-19 10:34:44 -07:00
2026-04-05 12:05:13 -07:00
2026-04-03 18:47:51 -07:00
2026-04-03 14:57:33 -07:00
2026-03-25 18:22:21 -07:00
2026-04-02 09:36:24 -07:00
2026-03-19 15:16:35 +01:00
2026-03-31 12:05:06 -07:00
2026-04-05 00:13:25 -07:00
2026-03-28 16:53:14 -07:00
2026-03-16 23:48:14 -07:00
2026-04-02 10:47:13 -07:00
2026-04-05 10:57:34 -07:00
2026-03-21 09:41:17 -07:00
2026-02-26 13:54:20 +03:00
2026-03-09 23:27:19 -07:00
2026-03-30 13:16:16 -07:00
2026-03-30 20:36:56 -07:00
2026-03-30 13:28:10 +09:00
2026-03-14 21:51:27 -07:00
2026-03-14 21:51:27 -07:00