At some point we will add a more detailed explanation of this, but for now using this diagram as a placeholder for explanation of the agent protocol