name: strategic_review description: "Crimson Leaf 24-hour strategic review -- mission assessment, portfolio evaluation, gap identification, and escalation." debug: true model: power system: agent_prompt agent_prompt: - "= identity.md" - "= mission.md" participant_prompt: - "= identity.md" sections: - agent - project - history - participants - participants_prompt - rag - message - instructions builders: message: | *** PORTFOLIO REPORT *** {steps[0].text} steps: - type: tool action: get_portfolio_report output_key: portfolio_data - type: think max_tokens: 8000 rotate_participants: true loop: max_iterations: 3 hint: | You are {agent.name}, participating in the Crimson Leaf Holdings strategic review. This is round {task.iteration} of the board session. The portfolio report is above. Your mission charter is in your system prompt. Analyze from YOUR perspective: - If you are Edgar (The Operator): Focus on systems health, metrics, gaps in capability. Are companies executing? Are we moving toward the mission success criteria? What gaps are blocking revenue? What should we PROPOSE to David? - If you are Orion (The Visionary): Focus on opportunities and what we are missing. Are we building the right things? What should we start? What should we kill? - If you are Sloane (The Dealmaker): Focus on marketing, visibility, revenue. Are we selling? Does anyone know we exist? What channels are we missing? Build on previous speakers' points. Disagree if you must -- this is a board debate. When genuine consensus is reached across all perspectives, include exactly: consensus_reached: true If debate should continue, do NOT include that line. - type: think max_tokens: 6000 agent: first_available output_key: strategic_brief hint: | Synthesize the boardroom transcript into a STRATEGIC BRIEF for David. Structure: 1. EXECUTIVE SUMMARY -- one paragraph on portfolio health and mission progress 2. MISSION GAP AUDIT -- assess each gap from the mission charter. Is Gap 1 (CLO) still the top priority? Has anything changed that elevates a different gap? 3. CRITICAL ISSUES -- things needing immediate attention 4. OPPORTUNITIES -- ranked by priority 5. ACTION ITEMS -- specific tasks for David: "David, [verb]: [details]" 6. NEXT REVIEW -- focus for the next 24-hour review Keep it actionable. David is one person -- prioritize ruthlessly. PROPOSAL GATE ASSESSMENT: Based on the gap audit, should Edgar submit a company proposal this cycle? Criteria: gap is materially blocking revenue AND cannot be solved by existing resources AND no proposal has been submitted in the last 30 days. State one of: PROPOSAL_NEEDED: [company-slug] or PROPOSAL_NEEDED: none MARKETING DISPATCH ASSESSMENT: A book "needs marketing" if crimson_leaf_marketing shows no active campaign for it. At the end of your brief, include: CLM_DISPATCH: - type: think max_tokens: 100 output_key: proposal_project_slug hint: | Read the PROPOSAL_NEEDED line from the strategic brief above. If the value is "none", output exactly: none Otherwise output exactly: incubation Output ONLY one word. No explanation. No punctuation. - type: think max_tokens: 800 output_key: proposal_brief hint: | The proposal decision is: {proposal_project_slug} If {proposal_project_slug} is "none", output exactly: none Otherwise, write the task message for the company_proposal pipeline. This brief becomes the input that drives the full business plan. Include: - Which company to propose (name, slug, purpose in one sentence) - What gap it fills (specific -- what Edgar cannot do today without it) - Why now (cost of waiting another 30 days) - Proposed 90-day success criteria (measurable) - Known constraints or dependencies Be specific. This brief drives the entire proposal document. Output ONLY the brief text. No labels. No preamble. - type: tool action: enqueue_strategy optional: true params: company_slug: "crimson_leaf" project_slug: "{proposal_project_slug}" task_type: "company_proposal" content: "{proposal_brief}" agent_name: "edgar" - type: think max_tokens: 100 output_key: clm_dispatch_slug hint: | Read the CLM_DISPATCH line from the strategic brief above. Extract the value after "CLM_DISPATCH: " and output it exactly, nothing else. Valid values: cypress-bend, crimson-vows, binding-thread, or none. Output ONLY the value. No explanation. - type: think max_tokens: 600 output_key: clm_dispatch_message hint: | If {clm_dispatch_slug} is "none", output exactly: none Otherwise write a marketing campaign request for that book. Include: - Book title, genre, audience - The manuscript is complete in Crimson Leaf Publishing Gitea repo - Request: full marketing campaign (strategy, social, email, press release, ad copy) - Urgency: book has no active campaign and needs revenue generation Book reference: - cypress-bend: "Cypress Bend" contemporary romance, audience adult women 25-45 - crimson-vows: "Crimson Vows" paranormal romance, audience adult women 25-40 - binding-thread: "The Binding Thread" fantasy romance, audience adult women 20-40 Output ONLY the message text. No preamble. - type: tool action: enqueue_strategy optional: true params: company_slug: "crimson_leaf_marketing" project_slug: "book-marketing-agency" task_type: "marketing_campaign" content: "{clm_dispatch_message}" - type: reply target: discussion adjudication: enabled: false