About visibility for GitHub Apps
You can make your GitHub App registration public or private.
If you want to make your app available to GitHub Enterprise Server instances, then you need to take additional steps. For more information, see "Making your GitHub App available for GitHub Enterprise Server."
If it is important for GitHub Enterprise Server users to be able to use your tool, consider using GitHub Actions instead of a GitHub App. Public actions are available on GitHub Enterprise Server instances with GitHub Connect. For more information, see "Enabling automatic access to GitHub.com actions using GitHub Connect" and "About GitHub Actions for enterprises."
For information about changing the visibility of a GitHub App registration, see "Modifying a GitHub App registration."
Public installation flow
Public GitHub Apps have a landing page with an Install button, so that other people can install the app in their repositories.
Private installation flow
Private GitHub Apps can only be installed on the user or organization account of the app owner. Limited information about the app will exist on a landing page for the app, but the Install button will only be available to organization owners and app managers for the organization that owns the app, or the personal account if the GitHub App is owned by an individual account.