```coffeescript
parser = require 'nomnom'

braveMouse = require '../brave-mouse'
braveMousePackageJson = require '../../package.json'

module.exports = (argv) ->
	opts = parser
	.script 'brave-mouse'
	.options
		help:
			abbr: 'h'
			flag: true
			help: 'Print this help message'
		version:
			abbr: 'v'
			flag: true
			help: 'Print brave-mouse’s version'
	.parse argv.slice 2

	if opts.version
		return console.log 'v' + braveMousePackageJson.version
```

Implement validating files from the CLI
user
```coffeescript
async = require 'async'
parser = require 'nomnom'

braveMouse = require '../brave-mouse'
braveMousePackageJson = require '../../package.json'

module.exports = (argv) ->
	opts = parser
	.script 'brave-mouse'
	.options
		path:
			position: 0
			help: 'Files to validate against your .editorconfig.'
			list: true
		help:
			abbr: 'h'
			flag: true
			help: 'Print this help message'
		version:
			abbr: 'v'
			flag: true
			help: 'Print brave-mouse’s version'
	.parse argv.slice 2

	if opts.version
		return console.log 'v' + braveMousePackageJson.version

	if opts.path
		exitCode = 0

		async.each opts.path, (filePath, callback) ->
			braveMouse.validate filePath, (err, results) ->
				return callback err if err

				if results is true
					console.log "✔ #{filePath}"
					callback()
				else
					console.log "✘ #{filePath}"

					for property, result of results
						console.log "  expected #{property} to be #{result.expected} but is #{result.is}"

					exitCode = 2

					callback()
		, (err) ->
			if err
				console.error err
				process.exit 1
			else
				process.exit exitCode
```
assistant