281 lines
9.6 KiB
YAML
281 lines
9.6 KiB
YAML
name: strategic_review
|
|
description: "Crimson Leaf 24-hour strategic review -- mission assessment, portfolio evaluation, gap identification, and escalation."
|
|
debug: true
|
|
model: power
|
|
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: tool
|
|
action: git_read_file
|
|
params:
|
|
path: "agents/edgar/mission.md"
|
|
output_key: mission_data
|
|
optional: false
|
|
|
|
- type: tool
|
|
action: git_read_file
|
|
params:
|
|
path: "agents/edgar/strategic_log.md"
|
|
output_key: strategic_log_data
|
|
optional: true
|
|
|
|
- type: tool
|
|
action: git_read_file
|
|
params:
|
|
path: "agents/edgar/logs/latest.md"
|
|
output_key: latest_log_entry
|
|
optional: true
|
|
|
|
- type: tool
|
|
action: git_read_file
|
|
params:
|
|
path: "deliverables/proposals/index.md"
|
|
output_key: prior_proposals_index
|
|
optional: true
|
|
|
|
- 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.
|
|
|
|
=== MISSION CHARTER ===
|
|
{mission_data}
|
|
|
|
=== STRATEGIC LOG (Master) ===
|
|
{strategic_log_data}
|
|
|
|
=== LAST CYCLE ENTRY ===
|
|
{latest_log_entry}
|
|
|
|
=== PRIOR PROPOSALS (all proposals ever submitted) ===
|
|
{prior_proposals_index}
|
|
===
|
|
|
|
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?
|
|
Check the strategic_log and last cycle entry: what proposals are already submitted?
|
|
Do NOT propose a company if it was already submitted in the last 30 days.
|
|
|
|
- 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:
|
|
Check the strategic_log and last cycle entry. Has CLO (or whichever gap-company)
|
|
been proposed in the last 30 days? If yes, state PROPOSAL_NEEDED: none.
|
|
Only propose if: gap is materially blocking revenue AND cannot be solved by
|
|
existing resources AND no proposal for this company appears in the log.
|
|
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.
|
|
Only dispatch to CLM for books that EXIST in Crimson Leaf Publishing (Cypress Bend,
|
|
Crimson Vows, or The Binding Thread). Do NOT dispatch for hallucinated book titles.
|
|
At the end of your brief, include:
|
|
CLM_DISPATCH: <book-project-slug if a real completed book needs CLM campaign, or "none">
|
|
|
|
=== STRATEGIC LOG ===
|
|
{strategic_log_data}
|
|
|
|
=== LAST CYCLE ENTRY ===
|
|
{latest_log_entry}
|
|
|
|
- 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.
|
|
|
|
CRITICAL: Do NOT invent a company name. Use EXACTLY the company defined
|
|
in the mission charter for the top-priority gap. The mission charter
|
|
specifies the proposed solution for each gap by name and slug.
|
|
You are reporting what the mission says, not brainstorming a new concept.
|
|
|
|
GAP 1 (CLO) is defined in the mission charter as:
|
|
Company: Crimson Leaf Operations (CLO)
|
|
Slug: crimson_leaf_operations
|
|
Purpose: INTERNAL financial visibility -- give Edgar the ability to see
|
|
API costs, revenue, and operational expenses.
|
|
This is NOT a client-facing agency. NOT a storefront. NOT a DTC product.
|
|
It is an internal accounting and reporting company for Crimson Leaf Holdings.
|
|
|
|
Your brief must:
|
|
- Name the company EXACTLY as the mission defines it (no renaming, no rebranding)
|
|
- Describe the specific gap it fills from the mission charter
|
|
- Explain what Edgar cannot do today without it (financial blindness)
|
|
- State why now (cost of waiting another 30 days)
|
|
- Include 90-day success criteria (measurable, e.g. "weekly P&L report delivered")
|
|
- Note known constraints or dependencies
|
|
- Reference what was wrong with prior proposals so the new one is different
|
|
|
|
=== PRIOR PROPOSALS (study these -- do NOT repeat them) ===
|
|
{prior_proposals_index}
|
|
===
|
|
|
|
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.
|
|
Map the book slug to the CLM project slug as follows:
|
|
cypress-bend -> book-marketing-agency
|
|
crimson-vows -> book-marketing-agency
|
|
binding-thread -> book-marketing-agency
|
|
none -> none
|
|
Output ONLY the mapped slug. No explanation. No extra text.
|
|
|
|
- type: think
|
|
max_tokens: 600
|
|
output_key: clm_dispatch_message
|
|
hint: |
|
|
Read the CLM_DISPATCH line from the strategic brief above.
|
|
The book identified is one of: cypress-bend, crimson-vows, binding-thread, or none.
|
|
|
|
If the book is "none" or {clm_dispatch_slug} is "none", output exactly: none
|
|
|
|
Otherwise write a marketing campaign request. Include:
|
|
- Book title and genre (use the CLM_DISPATCH value to identify it)
|
|
- 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: "{clm_dispatch_slug}"
|
|
task_type: "marketing_campaign"
|
|
content: "{clm_dispatch_message}"
|
|
|
|
- type: think
|
|
max_tokens: 600
|
|
output_key: log_entry
|
|
hint: |
|
|
Write a brief summary of THIS CYCLE'S strategic review to record in the log.
|
|
This entry will be loaded next cycle so Edgar remembers what was decided.
|
|
|
|
Format:
|
|
## Cycle Entry: Task {task.id}
|
|
|
|
### Board Consensus
|
|
[One sentence: what did the board agree on?]
|
|
|
|
### Gap Status
|
|
GAP 1 (CLO): [submitted/deferred/awaiting David/no change -- ONE of these]
|
|
GAP 2 (CLR): [status]
|
|
GAP 3 (KDP): [status]
|
|
|
|
### Proposal Decision
|
|
[ONE of:]
|
|
SUBMITTED: [company-slug] -- task enqueued to incubation this cycle
|
|
DEFERRED: [reason]
|
|
NONE: [reason]
|
|
|
|
### CLM Dispatch
|
|
[ONE of:]
|
|
DISPATCHED: [book-project-slug]
|
|
NONE
|
|
|
|
### Next Focus
|
|
[One sentence]
|
|
|
|
Keep it factual. Use only what happened in this cycle.
|
|
Do NOT invent history. Do NOT summarize old entries.
|
|
Output ONLY the entry text above.
|
|
|
|
- type: document
|
|
dest_path: "agents/edgar/logs/latest.md"
|
|
commit_msg: "log: strategic review cycle {task.id}"
|
|
|
|
- type: reply
|
|
target: channel
|
|
channel_name: "crimson_leaf:live-feed"
|
|
|
|
adjudication:
|
|
enabled: false |