# Interface PlannerAction

All Known Implementing Classes:
  `PlannerAction.Done, PlannerAction.DoneWithResult, PlannerAction.NoOp, PlannerAction.RunAgents`

public sealed interface PlannerAction permits PlannerAction.RunAgents, PlannerAction.Done, PlannerAction.DoneWithResult, PlannerAction.NoOp
Represents the next action a `Planner` wants the `PlannerAgent` to take.

This is a sealed interface with four variants:

- `PlannerAction.RunAgents` — execute one or more sub-agents (multiple agents run in parallel)
- `PlannerAction.Done` — planning is complete, no result to emit
- `PlannerAction.DoneWithResult` — planning is complete with a final text result
- `PlannerAction.NoOp` — skip this iteration (no-op), then ask the planner for the next action

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static final record`
  `PlannerAction.Done`
  Plan is complete, no result to emit.
  `static final record`
  `PlannerAction.DoneWithResult`
  Plan is complete with a final text result.
  `static final record`
  `PlannerAction.NoOp`
  Skip this iteration (no-op).
  `static final record`
  `PlannerAction.RunAgents`
  Run the specified sub-agent(s).