I have been trying to use Hydra for config management (more flexible command line interface) and therefore create step graphs and register runs & workspaces programmatically as follows:
@hydra.main(version_base=None,config_path="./exp_configs", config_name="some_exp_name")
def main(cfg):
    workspace = Workspace.from_url(cfg.tango_workspace)
    step_graph = create_step_graph(cfg)
    run = workspace.register_run(StepGraph.ordered_steps(step_graph),name=cfg.run_name)
    executor = Executor(workspace=workspace,parallelism=None)
    output = executor.execute_step_graph(step_graph)
if __name__=='__main__':
    main() 
I execute this script with the usual python -m filename
Two questions:
- Is this the right way to do tango runs when NOT using tango's jsonnet configs or is there a better way?
 
- When I run experiments like this, I do not get the nicely color-coded and formatted terminal output that I get with 
tango run config.jsonnet. Is there a way to achieve that in this particular setup?