abstract req module to receive a command_t directly (still a bit messy)