diff --git a/Kevin/IRC/Protocol.hs b/Kevin/IRC/Protocol.hs
--- a/Kevin/IRC/Protocol.hs
+++ b/Kevin/IRC/Protocol.hs
@@ -91,6 +91,11 @@
 
 respond pkt "ADMIN" = let (p:ps) = params pkt in D.sendAdmin p $ T.intercalate " " ps
 
+respond pkt "PROMOTE" = case params pkt of
+    (room:user:group:_) -> D.sendPromote room user $ Just group
+    (room:_) -> sendRoomNotice room "Usage: /promote #room username group"
+    _ -> sendNotice "Usage: /promote #room username group"
+
 respond _ str = klogError $ T.unpack str
 
 
diff --git a/kevin.cabal b/kevin.cabal
--- a/kevin.cabal
+++ b/kevin.cabal
@@ -1,5 +1,5 @@
 Name:             kevin
-Version:          0.1.1
+Version:          0.1.2
 Synopsis:         a dAmn ↔ IRC proxy
 Description:      a dAmn ↔ IRC proxy
 License:          GPL
@@ -20,4 +20,4 @@
     Other-Modules:    Kevin, Kevin.Protocol, Kevin.Base, Kevin.Util.Logger, Kevin.IRC.Protocol, Kevin.Damn.Protocol, Kevin.Util.Entity, Kevin.Util.Tablump, Kevin.Damn.Packet, Kevin.Damn.Protocol.Send, Kevin.IRC.Protocol.Send, Kevin.IRC.Packet, Kevin.Settings, Kevin.Types, Kevin.Util.Token
     extensions:       CPP, DeriveDataTypeable, ExistentialQuantification, OverloadedStrings, ScopedTypeVariables
     ghc-options:      -Wall -fno-warn-unused-do-bind -threaded
-    cpp-options:      -DVERSION="0.1.1"
+    cpp-options:      -DVERSION="0.1.2"
