Okay - I was thinking about this a bit yesterday. In addition to "options", we may want to also provide access to read-only properties that are available, both keys and values... or somehow a signal that values are known at runtime - at least a key would still be usable and as with options, a description could make it very useful to have just the key even if the value is late-binding.

Also, like options, the metadata about those properties could be contributed by plugins. I guess the question is whether such a view of properties would include everything available to the context via its PropertySources. Maybe that is the simplest path - just making that available to the shell in both a command form (property list xd.*) as well as auto-completion for the use of property keys within some syntax like the angle brackets you use in the "human friendly" example.