A method performed at an application server , the method comprising: establishing a communication session with a client device operated by a user; learning a typical process flow of the user, including identifying an inefficiency in the typical process flow, the inefficiency resulting from the repeat of a particular operation by the user; determining that the communication session involves the typical process flow as part of the communication session by determining that the user is performing operations ordered in the manner of the typical process flow, the typical process flow being a sequence of operations regularly performed by the user to achieve a particular result; identifying a particular operation that is likely to be repeated by the user during the communication session based on the typical process flow, wherein the identifying of the particular operation that is likely to be repeated by the user comprises anticipating when the user is going to save a certain state of the communication session based on the user previously saving a state of a previous communication session that resulted from the performance of similar or identical operations; in response to identifying the particular operation, storing session data representative of a state of the communication session, the state of the communication session resulting from the performance of the particular operation; generating a user interface element representing the session data, the user interface element allowing recall of the state of the communication session through manipulation of the user interface element; providing instructions to the client device that cause the client device to present the user interface element and recall the state of the communication session in response to manipulation of the user interface element. establishing a communication session with a client device operated by a user; learning a typical process flow of the user, including identifying an inefficiency in the typical process flow, the inefficiency resulting from the repeat of a particular operation by the user; determining that the communication session involves the typical process flow as part of the communication session by determining that the user is performing operations ordered in the manner of the typical process flow, the typical process flow being a sequence of operations regularly performed by the user to achieve a particular result; identifying a particular operation that is likely to be repeated by the user during the communication session based on the typical process flow, wherein the identifying of the particular operation that is likely to be repeated by the user comprises anticipating when the user is going to save a certain state of the communication session based on the user previously saving a state of a previous communication session that resulted from the performance of similar or identical operations; in response to identifying the particular operation, storing session data representative of a state of the communication session, the state of the communication session resulting from the performance of the particular operation; generating a user interface element representing the session data, the user interface element allowing recall of the state of the communication session through manipulation of the user interface element; providing instructions to the client device that cause the client device to present the user interface element and recall the state of the communication session in response to manipulation of the user interface element. <EOS>