In many situations in the real-world, actions can be grouped together in ways that are beneficial. If an agent could predict all of its actions, it would be easy for the agent to organize them. However, not all actions can be predicted in advance in the real-world. In this paper, we suggest a method for organizing actions in such a way that the agent can be responsive to new goals. Instead of predicting all actions, the agent forms only an abstract plan. The steps of the abstract plan must be chosen so that they form reliable predictions. They also must group goals together in meaningful ways. As goals arise, the agent can add them to the appropriate step of the abstract plan. The abstract plan gives the agent access to predictions that are important to organize its actions. However, because details of the plan are only added when needed, the agent remains reactive to the unpredictable aspects of the world. We present two systems which use this method: JUDIS which organizes dialogues for distributed systems, and NBA-planner which sequences locations to be visited by an underwater robot.