Hi I wanted to reach out as we are iterating on our SDK which streams real-time clicks to chatbots to make them context aware and eventually proactive based on real-time user behaviour.
So far I have been able to build proactive suggestions with intercom as they have a quick reply option where the chatbot goes to the user and makes suggestions. I couldn’t find anything similar with dify.ai so wanted to reach out.
We have a customer that is using our SDK and are self hosting their own dify.ai and wanted to know if you support this
Hey Marie, this is a really interesting direction—real-time behavioral streaming into a copilot can unlock some genuinely powerful “proactive UX” patterns.
From what I’ve seen, most teams trying to replicate what Intercom does with quick replies in tools like self-hosted Dify usually end up building a thin orchestration layer on top of the chat runtime. Instead of relying on the core chat engine alone, they stream events (clicks, page context, session state) into a separate “decision service” that triggers suggested actions back into the chat UI. That’s usually how you approximate proactive suggestions outside of Intercom’s built-in flow.
For Dify specifically, I don’t think there’s an out-of-the-box equivalent to Intercom’s Quick Reply system yet, so your approach with an SDK sounds like the right direction—especially if you already have real-time clickstream data.
If you’re exploring similar implementations or want inspiration from other tooling approaches, I’ve seen some related discussions and experiments shared here: now.
Curious—are you planning to make the proactive layer rules-based at first, or are you aiming to go straight into model-driven triggering from behavior signals?
From what I’ve seen across SDK users so far, there are two broad approaches — some use deterministic triggers, while others have leaned on LLMs to decide when to be proactive.
My goal with the SDK is to make it as easy as possible for developers to set up real-time aware chatbots and customize those triggers.
The most common signals I’ve seen used so far:
Database stored user metadata (e.g. signup status, form completions)
Real-time user events (like urls or what they’ve clicked)
Workflow completion rates (used by our beta memory users to determine when to intervene)
Something we’re working on next is using real time triggers to trigger visual guidance so when the user asks a question in a chatbo this triggers relevant visual guidance as well