Is there a good open source chatbot that can carry on a decent conversation?
No, there is not a turnkey, open-source chatbot that can carry on a decent conversation right out of the box. “Decent conversation” is highly subjective, in the eye of the beholder. In terms of “maintaining state”, or context over a prolonged period, no “chatbot” can do this well now, open-source or otherwise.
That said, a lot can be done with AIML. There are a lot of free AIML sets available, not to mention the AIML Superbot (999 USD) from the ALICE A.I. Foundation. With AIML the amount of satisfaction you give to your users largely depends on the amount of time you put into refining it, fine-tuning it for your audience. Bruce Wilcox claims his ChatScript is better than AIML, but without a doubt takes more effort, not to mention fewer public datasets. RiveScript, SuperScript and others are more or less the same story, in other words dependent on available building blocks plus your own ingenuity.
> Mitsuku chatbot wins Loebner Prize for most humanlike A.I., yet again (Oct 2016)
In terms of objective measures, we don’t have anything better at the moment in general use than the Loebner Prize Turing test, which the AIML chatbot Mitsuku excels at regularly, due to the loving attention of botmaster Steve Worswick.
See also my Quora answer to: