Three escalation triggers
First: missing information. If the bot cannot find a sufficiently relevant fragment in the knowledge base, it does not improvise — it says it does not have the answer and offers an agent. Second: the explicit request. Any phrasing along the lines of "I want to speak to someone" triggers handover immediately, without the visitor hunting for a button. Third: the sensitive topic. You define the list — complaints, refunds, disputes, medical cases — and messages touching those subjects skip the bot entirely. Those three rules cover practically every situation where an automated answer would have done harm.