# Krebs IRC RPC

    on :<from> PRIVMSG <target> :<handle>: <command> <argument>
    
      if <handle> ∈ { nickname, "ALL" }
        if <command> is a public command
    
          path = $__public_command_directory/<command>
          argv = []
          envp = { from: <from>, argument: <argument> }
    
          <code> = execve(path, argv, envp) → <stdout>, <stderr>
    
          if <code> = 0
            if <target> is channel
              PRIVMSG <target> :<from>: <stdout>
              PRIVMSG <from> :<stderr>
            else
              ; TODO assert <target> = <from>
              PRIVMSG <from> :<stdout>
              PRIVMSG <from> :Error: <stderr>
          else

            send all <.*> to the Ministerium
    
            if <target> is channel
              PRIVMSG <target> :<from>: <command> is broken ATM
            else
              PRIVMSG <target> :Error: <command> is broken ATM
    
        else
          PRIVMSG <target> :<from>: you are made of stupid