This is a minor, fit-and-finish kind of thing, but it should be easy to fix when you have a little time. When you enter an unknown option, you get a stack trace (in addition to a usage message). You should instead just get the usage message.
$ gist generate --unknown-flag
Unhandled exception:
Uncaught Error: Could not find an option named "unknown-flag".
Usage: gist <command> [arguments]
Global options:
-h, --help Print this usage information.
Available commands:
generate Generate gists from the current directory.
help Display help information for gist.
Run "gist help <command>" for more information about a command.
Stack Trace:
#0 CommandRunner.usageException (package:args/command_runner.dart:88)
#1 CommandRunner.parse (package:args/command_runner.dart:118)
#2 CommandRunner.run.<anonymous closure> (package:args/command_runner.dart:105)
#3 Future.Future.sync (dart:async/future.dart:168)
#4 CommandRunner.run (package:args/command_runner.dart:105)
#5 main (http://localhost:50006/gist.dart:14)
#6 _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:259)
#7 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:148)
#0 _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart:895)
#1 _microtaskLoop (dart:async/schedule_microtask.dart:43)
#2 _microtaskLoopEntry (dart:async/schedule_microtask.dart:52)
#3 _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:96)
#4 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:149)
$
This is a minor, fit-and-finish kind of thing, but it should be easy to fix when you have a little time. When you enter an unknown option, you get a stack trace (in addition to a usage message). You should instead just get the usage message.