1. A method for processing voice commands, performed at a portable electronic device with one or more processors and memory storing instructions for execution by the one or more processors, the method comprising: in response to user input, recording at least a portion of a voice command on the portable electronic device; when recording the portion of the voice command on the portable electronic device, storing contextual information related to a current operational state of the portable electronic device; after recording the portion of the voice command at the portable electronic device, uploading the portion of the voice command and the stored contextual information from the portable electronic device to remote computing equipment; receiving, from the remote computing equipment, results associated with processing the portion of the voice command and the stored contextual information; and presenting the results.