10. A system comprising one or more computers and one or more storage devices storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising: receiving a current search query submitted by a current user of a current user device to a search engine system; determining that the current search query is similar to a first previously submitted search query of a plurality of previously submitted search queries that have previously been submitted by the current user to the search engine system, wherein determining that the current search query is similar to the first previously submitted search query comprises determining that at least one first term from the current search query matches a corresponding term that appears in the first previously submitted search query; determining that a different second term satisfies the condition that: (i) the different second term appears in the first previously submitted search query that is similar to the current search query, (ii) the different second term does not appear in the current search query, and (iii) the different second term appears in at least a threshold number of other distinct search queries of the plurality of previously submitted search queries that have previously been submitted by the current user, wherein each other distinct search query is distinct from both the first previously submitted search query and the current search query; generating a revised search query by adding the different second term to the current search query; obtaining search results for the revised search query from a search engine; and providing the search results to the current user in a response to the current search query.
10. A system comprising one or more computers and one or more storage devices storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising: receiving a current search query submitted by a current user of a current user device to a search engine system; determining that the current search query is similar to a first previously submitted search query of a plurality of previously submitted search queries that have previously been submitted by the current user to the search engine system, wherein determining that the current search query is similar to the first previously submitted search query comprises determining that at least one first term from the current search query matches a corresponding term that appears in the first previously submitted search query; determining that a different second term satisfies the condition that: (i) the different second term appears in the first previously submitted search query that is similar to the current search query, (ii) the different second term does not appear in the current search query, and (iii) the different second term appears in at least a threshold number of other distinct search queries of the plurality of previously submitted search queries that have previously been submitted by the current user, wherein each other distinct search query is distinct from both the first previously submitted search query and the current search query; generating a revised search query by adding the different second term to the current search query; obtaining search results for the revised search query from a search engine; and providing the search results to the current user in a response to the current search query. 12. The system of claim 10 , wherein the plurality of previously submitted search queries are search queries submitted by the current user within a recent time window of submitting the current query.