name: planning description: "Rotating chair deliberation -> structured work breakdown -> child tasks created." debug: true system: agent_prompt participant_prompt: - "= identity.md" agent_prompt: - "= identity.md" sections: - agent - project - history - rag - participants - participants_prompt - roster - message - instructions steps: - type: think rotate_participants: true loop: max_iterations: 3 hint: | You are {agent.name}. This is round {task.iteration} of the planning session. The group is breaking down this project or task into a concrete work plan. Write YOUR perspective on the plan from your area of expertise: - What work streams or tasks need to exist? - What order do they need to happen in? What depends on what? - Which agents from the TEAM ROSTER are best suited to each piece? - What risks, gaps, or open questions do you see? - What do you agree or disagree with from prior planning rounds above? Reference these TASK TYPES when recommending work: research_plus, outline, draft, review, roundtable, polish, quick, writing, analysis, brainstorm, code. Be specific about agent assignments -- use EXACT names from the TEAM ROSTER. ROUNDTABLE CHAIR RULE: For business strategy, planning, or operations roundtables, the chair must be a business-register agent (Atlas, Selene, Devon, or Lane). Do NOT assign Cassius, Lyra, or other fiction-specialist agents as chair for business deliverables -- their creative voice will contaminate formal strategy documents with genre-specific jargon. When the group has genuinely agreed on a complete plan, include exactly: "consensus_reached: true" If the plan still has gaps or unresolved assignments, do NOT include that line. - type: think agent: first_available hint: | Structure the team's agreed plan into a precise task list. IMPORTANT: Do NOT re-deliberate or reconsider what was agreed above. Your only job in this step is to serialize the decisions into clean task records. For each task: - task_name: short, specific - description: full detail -- enough that the assigned agent can execute without asking - agents: EXACT name(s) from TEAM ROSTER - task_type: one of the valid task types listed below - priority: 1 (critical) to 5 (nice-to-have) Order tasks correctly -- blockers before dependents. No ambiguous assignments. No placeholder names. VALID TASK TYPES (use ONLY these exact strings): research_plus -- deep research on a topic outline -- structure or plan for a piece of content draft -- write a complete draft of content review -- critique and give feedback on content roundtable -- multi-voice deliberation for consensus polish -- final editing and refinement quick -- short single-step response writing -- general writing task planning -- sub-planning session analysis -- data or situation analysis brainstorm -- open ideation session code -- software development task CANONICAL SELECTION RULE: If the plan produces multiple competing drafts of the same artifact (e.g. three mission statement drafts, two roadmap versions), the plan MUST include a final "Select Canonical: [artifact]" polish task assigned to Iris or Atlas that explicitly picks one version, merges the best elements, and archives the rest. Do NOT leave competing versions unresolved. DECOMPOSITION RULE: When the deliverable is a batch of similar items (e.g. 10 podcast scripts, 5 chapters, 8 articles), create ONE individual draft task per item -- NOT a single "write all 10" batch task. A single LLM call cannot produce 10 full-length scripts. Each episode/chapter/article must be its own task with its own specific description. The review and polish tasks can still be batched at the end. - type: package packet_type: PlanningResponsePacket schema: tasks: - task_name: "string -- short descriptive name" description: "string -- full instructions for the assigned agent" agents: - "string -- EXACT agent name from TEAM ROSTER" task_type: "string -- MUST be a template name from AVAILABLE TASK TEMPLATES" priority: "integer 1 (critical) to 5 (nice-to-have)" insert_children: true - type: close rag_update: false adjudication: enabled: false