shell icon indicating copy to clipboard operation
shell copied to clipboard

Tagged Commands

Open coreybutler opened this issue 3 years ago • 0 comments

As I've used this library to build applications, I've recognized a need for experimental commands, beta commands, and even hidden commands (hidden from help).

It would be nice to have a "tag" or some other identifier to identify which commands are experimental, which should be hidden, etc.

One possible implementation is:

new Command({
  name: 'cmd',
  tags: ['beta'],
  async handler () {...}
})

Special tags may have special documentation/help features:

  • hidden: available, but does not show up
  • ignore: completely ignore the command (won't run)
  • experimental: prefixes description with EXPERIMENTAL.
  • deprecated: prefixes description with DEPRECATED.

Tags should be exposed to command handlers and directly through the shell, making it possible for developers to create custom functionality for tagged commands.

Please use the reactions to cast a vote in favor of or against this feature suggestion »

coreybutler avatar Oct 14 '22 23:10 coreybutler