def __init__(
      self,
      model: language_model.LanguageModel,
      components: Sequence[str] = (),
      goal_component_key: str | None = None,
      force_time_horizon: str | bool = False,
      pre_act_label: str = DEFAULT_PRE_ACT_LABEL,
  ):
    """Initialize a component to represent the agent's plan.

    Args:
      model: a language model
      components: keys of components to use to build the context for planning.
      goal_component_key: index into `components` to use to represent the goal
        of planning
      force_time_horizon: If not False, then use this time horizon to plan for
        instead of asking the LLM to determine the time horizon.
      pre_act_label: Prefix to add to the output of the component when called
        in `pre_act`.
    """
    super().__init__(pre_act_label)
    self._model = model
    self._components = components
    self._goal_component_key = goal_component_key
    self._force_time_horizon = force_time_horizon

    self._current_plan = ''
Initialize a component to represent the agent's plan.

    Args:
      model: a language model
      components: keys of components to use to build the context for planning.
      goal_component_key: index into `components` to use to represent the goal
        of planning
      force_time_horizon: If not False, then use this time horizon to plan for
        instead of asking the LLM to determine the time horizon.
      pre_act_label: Prefix to add to the output of the component when called
        in `pre_act`.
    
concordia/components/agent/plan.py