In this talk I will discuss the approach to human-machine interaction we have taken using Collaborative Interface Agents, agents that can collaborate with users on a task and know how to participate in a conversation as part of the collaboration. I will explore the architecture and discuss some of the algorithms for the middleware Java system we call Collagen (for COLLaborative AGENts). I present one or two examples of Collagen agents for interface applications from the ten or more we have developed. Finally I will discuss experiments in using speech with restricted subsets of English for conversation with these agents.