まだざっくりとしか触ってないけど、こんな感じで書けてかなり楽に書けそう。
# coding: utf-8 require 'cinch' bot = Cinch::Bot.new do configure do |c| c.server = "irc.masaszuu.local" c.nick = "hello" c.channels = ["#karupanerura"] end # あいさつしてくれる君 on :message, "hello" do |m| m.reply "Hello, #{m.user.nick}" end # 律儀に出て行ってくれる君 on :message, /go away(?: (.+))?/ do |m, channel| m.reply "#{m.user.nick} said #{m.message}. ok, I'm parting." if m.user.nick == 'masasuzu' channel ||= m.channel bot.part channel, 'bye' end end bot.start