Intelligent Interfaces for Agents and Humans