Update middleware generator

Updates:

 * set `spec` property
 * use `git config --get user.name` instead of `Etc.getlogin` to get user's full name