Conversation
Full conversation thread
The bot streams its response to Redis in real-time (visible in the admin panel), but posts the final message to Slack as a single reply once generation is complete. This avoids rate limits from editing the message repeatedly. The "typing" indicator comes from chat.postMessage with a status emoji while the workflow runs.