Line of Sight Analyst is a toolbox for ArcGIS (version 10.3 and newer) focused on visibility analyses. All the tools are written in Python. The toolbox provides tools to construct line-of-sight (LoS), analysis of LoS, and horizon identification.
Website of the toolbox is available through GitHub pages, including detailed description of each tool on the web.
The toolbox is described and used in the article Line of Sight Analyst: ArcGIS Python Toolbox for visibility analyses.