What I would do is define the variables which control the look of the sky, e.g. the amount of sunlight, the density of the clouds, the cloud color, the number of clouds, the sight of the stars. Then I would feed those into the shader:
match get_time_of_day():
'dusk':
# This selects the first ShaderMaterial, but you could probably do this for other shader materials.
sky.get_shader_material( 0 ).set_shader_param("amount_of_light", 0.23)
sky.get_shader_material( 0 ).set_shader_param("starry_sky", true)
sky.get_shader_material( 0 ).set_shader_param("cloud_color", "auburn")
'midday':
sky.get_shader_material( 0 ).set_shader_param("amount_of_light", 1.00)
sky.get_shader_material( 0 ).set_shader_param("cloud_color", "white")
sky.get_shader_material( 0 ).set_shader_param("number_of_clouds", 13)