If your agent is stuck, you have one main intervention point: program.md. Your agent reads it at the start of every cycle, so changes take effect on the next experiment.
You can add new research directions, suggest specific experiments, or tell the agent to try radical architectural changes. You can also add comments to train.py that hint at unexplored directions.
Do not edit train.py directly while the agent is running. This creates git conflicts and can crash the loop. If you need to steer the agent, use program.md. That's what it's for.