1. One or more computer-readable storage media comprising computer-executable instructions for enabling a user to interact with an independently-executable computer application program, the computer-executable instructions directed to steps comprising: obtaining, from the computer application program, information regarding functions currently made available to the user by the computer application program through a computer application program user interface that is presented by the computer application program; generating a commanding interface that is different than the computer application program user interface and through which the user can interact with the computer application program independently of the computer application program user interface; presenting the commanding interface to the user independently of the computer application program user interface; receiving, from the user, at least a portion of a search query via the commanding interface; searching the obtained information for at least one function that is responsive to the at least the portion of the search query; presenting, to the user, through the commanding interface, the at least one function that was responsive to the at least the portion of the search query; receiving, from the user, through the second user interface, a selection of the at least one function; generating an instruction to the computer application program to perform the at least one function; and enabling the user to interact with the computer application program through the commanding interface by performing the obtaining, the generating and the presenting a subsequent time after the computer application program performs the at least one function.