1. A method for providing a context-aware environment, the method comprising: receiving a first action request from a user; displaying a plurality of objectives created in response to receiving the first action request from the user; determining whether the first action request completes any of the plurality of objectives; in response to determining that the first action request does not complete any of the plurality of objectives, providing a first suggested next action based on a current context state and the plurality of objectives, wherein providing the first suggested next action comprises: determining a probability factor for each of the plurality of objectives from the current context state based on the first action request, determining the first suggested next action in furtherance of each of the plurality of objectives from the current context state, and providing the first suggested next action corresponding to one of the plurality of objectives having the highest probability factor; in response to the first suggested next action having been executed, updating the current context state and determining whether the one of the plurality of objectives is completed; if the one of the plurality of objectives is not completed, determining another next action based on the updated current context state and in furtherance of the one objective; receiving a second action request; determining whether the second action request comprises the first suggested next action; in response to determining that the second action request comprises the first suggested next action, providing a second suggested next action; and in response to determining that the second action request comprises the first suggested next action, increasing the probability factor associated with the one of the plurality of objectives.