Header check

Header validation, `Role` should be `command` for commands. If the chat engine is turned into a module, it can use the same header with a diff value, like `engine`, `chat-engine` or something along the lines.