Key learnings: * commands need to provide to good feedback (e.g. not just error 123 - starting from "your argument is out of range (valid range 15-20)" to provide "here's how you probably should do it") * enable validation - allow the agent to loop and figure if what it tried to do is correct. For lox-cli this is both a config file validation as well as a rich simulator. * progressive discovery - don't throw all the information at once at the agent, rather allow it to pull relevant parts into context when needed. For lox-cli this includes structured help (-h) and a sample library that can be searched.