We have integrated three task learning technologies within a single desktop application to allow users to create intelligent software assistants to handle a range of office tasks. The learned task-related procedures are capable of gathering and integrating information from online sources, monitoring the performance of tasks over time, communicating with the user about that progress and taking world-altering steps, such as sending an email or booking a hotel. These technologies include a tool to create agents for programmatic access to online information sources, a tool that aligns the inputs and outputs parameters used by these sources to a predetermined ontology and a tool to create procedures that compose other procedures and queries, with iteration and branching, based on user instructions in text. We have integrated these tools within the CALO Desktop Assistant and used the integrated system to learn procedures to handle a variety of office and travel-related tasks.