The butler command that now comes with daf_butler is intended to be extended for various repository related functions. On task that exists in gen2, but not yet in gen3 is the utility that makes a discrete sky map from a collection of calibrated exposures: makeDiscreteSkyMap.py. This utility is useful especially in scenarios where the visits are relatively localized on the sky.
This ticket is to implement a new subcommand using the click module. I don't see why this couldn't be called make_discrete_sky_map. This will involve a few steps.
1) Wrap the MakeDiscreteSkyMapTask with the necessary gen3 tooling
2) Pull the bulk of the heavy lifting out of the runDataRef method into a run method that both runDataRef and runQuantum can delegate to
3) Add a subcommand to butler that calls that task.
Which package is this going to end up in? obs_base is already set up for loading commands into the butler click command dynamically. For pipe_tasks you'd need to put the right line in the eups file to set the env var.