More reworking of the agent.
Self-review
Self-review