Paul Kloppers 811bf582c6 feat(redstone): slow-tool indicator + persona-name addressing
Two changes that came out of a real "I said hey steve, bot didn't reply"
report:

1) Persona-name addressing in groups. botAddressed now ALSO triggers
   when the message text contains the bot's persona name (regex
   /\b(redstone|steve)\b/i, case-insensitive, word-boundary). The
   persona prompt already invites users to call the bot "Redstone" or
   "Steve" — without this matcher, those messages were silently
   dropped in groups because Telegram didn't recognise the plain
   word as a @-mention. Private chats still trigger on every text
   message (unchanged).

2) Slow-tool indicator for wiki_* calls. minecraft.wiki can lag /
   rate-limit. New withSlowToolIndicator(chatId, toolName, fn) wraps
   the tool execution: if the call takes longer than 1500 ms,
   send a "🔍 looking it up…" placeholder message into the chat
   and rotate through a 4-phrase loop ("📖 reading the wiki…",
   "🔎 searching…", "🧭 cross-referencing…") every 900 ms. When
   the tool resolves, the timer + interval are cleared and the
   placeholder is deleted, so fast calls (<1.5 s) leave no trace
   in the chat. Only fires for tools whose name matches /^wiki_/.

Wired through the dispatch chain — runRedstoneTurn,
runRedstoneTurnViaOpenRouter, and runRedstoneTurnViaGemini all
gained a `chatId` parameter so the indicator knows which chat to
post into.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-13 23:36:11 +02:00
2026-05-11 21:51:59 +02:00
2026-04-21 20:33:22 +02:00
Description
No description provided
611 KiB
2026-05-14 21:39:15 +02:00
Languages
TypeScript 96.7%
Shell 2.6%
Dockerfile 0.7%