Tool: expand_thoughts

Purpose

Create candidate next-thought records from one or more frontier nodes. This is the main expansion step for Explore mode.

Current implementation mode: heuristic. The server emits deterministic branch templates and provenance metadata; it does not call an LLM to semantically invent new reasoning.

Input

  • deliberation_id
  • from_node_ids: string[]
  • strategy: diverse | least_to_most | contrarian | direct | skeleton_first
  • count: number

Output

  • created_nodes: ThoughtNode[]
  • frontier_nodes: string[]
  • expansion_summary
  • analysis: provenance and limitations for the expansion run

Behavior

  • Supports multi-parent expansion.
  • Adds branch metadata and parent links.
  • Preserves bounded growth via budget checks.
  • Each created node carries provenance.mode = heuristic.
  • skeleton_first is a compatibility shortcut for start_skeleton_of_thought; it requires exactly one source node and records a SkeletonPhase.

Errors

  • Unknown node IDs
  • Expansion exceeds budget