Some packages ship with both importable module as well as a global CLI. So it’s hard to categorize packages on into a single category.
If you hand me a .framework and a .app for macOS, it’s immediately clear which is which. This isn’t an unreasonable standard for distributing programs.