We propose a time-scale algorithm for the automated generation of a real-time time scale, making full use of the frequency standards available in a typical time laboratory. The time-scale algorithm is made by a pre-processing stage, a steering algorithm, and a post-processing stage. In particular, in this work we propose a set of three different steering algorithms, running in parallel and eventually producing a unique steering correction to be applied to a master clock. Each algorithm is based on a different steering reference, namely, a primary frequency standard, an ensemble clock, and the Coordinated Universal Time (UTC), or its rapid version, UTCr. Preand post-processing stages help to provide robustness and to cope with data gaps. The proposed algorithms have been extensively and successfully tested offline, on real data from the time laboratory of the Italian National Institute of Metrological Research (INRiM), where an online test has also been performed in the period May-October 2019. Then, since the middle of January 2020, the time-scale algorithm has been applied for the generation of the Italian legal time scale, UTC(IT). We show here the results of the offline tests and of the 5-month online test. The proposed strategy can be used wherever a stable, accurate, and robust time reference is needed, e.g. for a local realization of UTC in a laboratory k, UTC(k), or for generating the reference time of a global navigation satellite system (GNSS).