Guidelines for designing interfaces to connect environments to agent programming languages