Sprint 61k — Template & Pipeline Correctness Audit
- Fix {task.prompt} → {task.message} in all marketing templates (6 files)
- Add author_bio.yml and ad_copy.yml templates for crimson_leaf_marketing
- Add author_bio task_type to marketing_campaign.yml package schema
- Fix book_outline.yml: remove {prose_style} literal, add anti-truncation rule, fix scifi routing
- Fix InputFromUser.yml: echo full operator message in think output
- Fix planning.yml: add agent:Nova top-level field to lock chair
- Fix publishing genesis.yml: fix {task.message} variable and hardcode Nova title
- Add professional_title to AgentContext and build_state_map
- Increase _DEFAULT_MAX_RAG_CHARS from 4000 to 8000
- Fix adj_pass_rate=0.0: thread adjudication criteria through C# and Python
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
104
templates/ad_copy.yml
Normal file
104
templates/ad_copy.yml
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
name: ad_copy
|
||||||
|
description: "Write platform-specific advertising copy for paid campaigns across Meta, Google, and Amazon."
|
||||||
|
system: agent_prompt
|
||||||
|
agent_prompt:
|
||||||
|
- "= identity.md"
|
||||||
|
|
||||||
|
sections:
|
||||||
|
- agent
|
||||||
|
- project
|
||||||
|
- rag
|
||||||
|
- message
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- type: think
|
||||||
|
agent: Leo
|
||||||
|
hint: |
|
||||||
|
You are Leo, Marketing Strategist at Crimson Leaf Marketing.
|
||||||
|
|
||||||
|
AD COPY BRIEF: {task.message}
|
||||||
|
|
||||||
|
Write a COMPLETE AD COPY PACKAGE covering all required platforms.
|
||||||
|
For each platform write the full set of variants — not placeholders.
|
||||||
|
|
||||||
|
════════════════════════════════════════
|
||||||
|
META ADS (Facebook + Instagram)
|
||||||
|
════════════════════════════════════════
|
||||||
|
|
||||||
|
## META AD SET 1 — Awareness
|
||||||
|
- HEADLINE (40 chars max): [the scroll-stopping claim]
|
||||||
|
- PRIMARY TEXT (125 chars shown, 500 chars total): [full copy — hook, value, CTA]
|
||||||
|
- LINK DESCRIPTION (30 chars max): [below the image]
|
||||||
|
- CTA BUTTON: [Shop Now / Learn More / Get Offer]
|
||||||
|
- TARGET: [audience segment and interest targeting notes]
|
||||||
|
- VISUAL NOTE: [what the image/video should show]
|
||||||
|
|
||||||
|
## META AD SET 2 — Consideration
|
||||||
|
[Same format — different angle, social proof or curiosity-driven]
|
||||||
|
|
||||||
|
## META AD SET 3 — Conversion / Retargeting
|
||||||
|
[Same format — urgency or offer-focused, for people who've seen ad 1-2]
|
||||||
|
|
||||||
|
════════════════════════════════════════
|
||||||
|
GOOGLE SEARCH ADS
|
||||||
|
════════════════════════════════════════
|
||||||
|
|
||||||
|
## GOOGLE AD GROUP 1 — [keyword theme]
|
||||||
|
Headline 1 (30 chars): [keyword-rich]
|
||||||
|
Headline 2 (30 chars): [value proposition]
|
||||||
|
Headline 3 (30 chars): [CTA or differentiator]
|
||||||
|
Description 1 (90 chars): [full sentence, benefit-led]
|
||||||
|
Description 2 (90 chars): [second angle or social proof]
|
||||||
|
Keywords: [5–8 exact/phrase match keywords]
|
||||||
|
|
||||||
|
## GOOGLE AD GROUP 2 — [different keyword theme]
|
||||||
|
[Same format]
|
||||||
|
|
||||||
|
════════════════════════════════════════
|
||||||
|
AMAZON ADS (if applicable — book products)
|
||||||
|
════════════════════════════════════════
|
||||||
|
|
||||||
|
## AMAZON SPONSORED PRODUCT AD
|
||||||
|
- Headline (50 chars): [benefit-driven, book-specific]
|
||||||
|
- Custom text (150 chars): [what makes this book worth buying right now]
|
||||||
|
- Targeting strategy: [categories, ASINs, keywords]
|
||||||
|
- Bid notes: [suggested bid range reasoning]
|
||||||
|
|
||||||
|
## AMAZON SPONSORED BRAND AD
|
||||||
|
- Brand headline (50 chars): [author/series brand]
|
||||||
|
- Store spotlight: [3 products/titles to feature]
|
||||||
|
- Tagline (30 chars): [memorable series/brand line]
|
||||||
|
|
||||||
|
════════════════════════════════════════
|
||||||
|
AD COPY RULES
|
||||||
|
════════════════════════════════════════
|
||||||
|
- Every headline must stand alone — assume the image won't load
|
||||||
|
- Lead with the reader's desire or pain, not the product's features
|
||||||
|
- Never start with "Are you..." — start with the claim
|
||||||
|
- Use RAG context for accurate book details — no invented plot points
|
||||||
|
- CTAs are specific: "Start reading free" beats "Learn more"
|
||||||
|
- Each platform variant must be meaningfully different — not paraphrased copies
|
||||||
|
|
||||||
|
- type: document
|
||||||
|
filename: "{{task_name_slug}}-ad-copy"
|
||||||
|
|
||||||
|
- type: close
|
||||||
|
rag_update: true
|
||||||
|
|
||||||
|
adjudication:
|
||||||
|
enabled: true
|
||||||
|
pass_threshold: 75
|
||||||
|
deliverable_type: marketing_copy
|
||||||
|
criteria:
|
||||||
|
platform_specificity:
|
||||||
|
weight: 30
|
||||||
|
description: "Each platform's copy respects its format constraints and audience mindset"
|
||||||
|
hook_strength:
|
||||||
|
weight: 25
|
||||||
|
description: "Headlines and opening lines earn attention without resorting to clickbait"
|
||||||
|
cta_quality:
|
||||||
|
weight: 25
|
||||||
|
description: "CTAs are specific, low-friction, and matched to campaign objective"
|
||||||
|
completeness:
|
||||||
|
weight: 20
|
||||||
|
description: "All three platforms present with full variant sets per format spec"
|
||||||
83
templates/author_bio.yml
Normal file
83
templates/author_bio.yml
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
name: author_bio
|
||||||
|
description: "Write a professional author bio and media kit for press, social, and book listings."
|
||||||
|
system: agent_prompt
|
||||||
|
agent_prompt:
|
||||||
|
- "= identity.md"
|
||||||
|
|
||||||
|
sections:
|
||||||
|
- agent
|
||||||
|
- project
|
||||||
|
- rag
|
||||||
|
- message
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- type: think
|
||||||
|
agent: Zara
|
||||||
|
hint: |
|
||||||
|
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
||||||
|
|
||||||
|
AUTHOR BIO BRIEF: {task.message}
|
||||||
|
|
||||||
|
Write a COMPLETE AUTHOR BIO & MEDIA KIT. Include all of the following sections:
|
||||||
|
|
||||||
|
## SHORT BIO (50 words)
|
||||||
|
For jacket copy, social profiles, and press mentions.
|
||||||
|
Third person. Hook first — lead with what makes this author distinct, not where they grew up.
|
||||||
|
End with one memorable detail or current project.
|
||||||
|
|
||||||
|
## MEDIUM BIO (150 words)
|
||||||
|
For conference programs, podcast introductions, and speaking engagements.
|
||||||
|
Third person. Opens with the strongest credential or angle.
|
||||||
|
Covers: writing background, this book's significance, one or two humanizing details.
|
||||||
|
Closes with location and current project.
|
||||||
|
|
||||||
|
## LONG BIO (300 words)
|
||||||
|
For press kits, media pages, and grant applications.
|
||||||
|
Third person. Full narrative arc: origin, journey, this work, where they're going.
|
||||||
|
Integrate accolades, influences, and thematic obsessions naturally.
|
||||||
|
|
||||||
|
## FIRST-PERSON "ABOUT ME" (100 words)
|
||||||
|
For author website "About" page.
|
||||||
|
Conversational, warm, direct address ("I write...").
|
||||||
|
Show personality — not a CV recitation.
|
||||||
|
|
||||||
|
## SOCIAL HANDLE BIOS
|
||||||
|
- Twitter/X (160 chars): punchy, personality-first, include main genre + book
|
||||||
|
- Instagram (150 chars): voice-driven, can use line breaks and one or two emojis
|
||||||
|
- LinkedIn (220 chars): professional framing, credentials first
|
||||||
|
|
||||||
|
## AUTHOR PHOTO CAPTION
|
||||||
|
One sentence, third person, for photo credit lines.
|
||||||
|
|
||||||
|
## MEDIA CONTACT BLOCK
|
||||||
|
Name / Email / Phone / Website / Social handles
|
||||||
|
|
||||||
|
TONE RULES:
|
||||||
|
- The author is a person, not a brand. Write with warmth and specificity.
|
||||||
|
- Avoid: "award-winning", "debut novelist", "passionate about", "journey"
|
||||||
|
- Every bio must mention the book title and one concrete detail about its content.
|
||||||
|
- Read the RAG context for actual book/author details — do NOT invent credentials.
|
||||||
|
|
||||||
|
- type: document
|
||||||
|
filename: "{{task_name_slug}}-author-bio"
|
||||||
|
|
||||||
|
- type: close
|
||||||
|
rag_update: true
|
||||||
|
|
||||||
|
adjudication:
|
||||||
|
enabled: true
|
||||||
|
pass_threshold: 75
|
||||||
|
deliverable_type: marketing_copy
|
||||||
|
criteria:
|
||||||
|
voice_authenticity:
|
||||||
|
weight: 30
|
||||||
|
description: "Bio reads like a real person, not a press release — specific details, no generic praise"
|
||||||
|
length_variants:
|
||||||
|
weight: 25
|
||||||
|
description: "All four bio lengths are present and appropriately sized for their use case"
|
||||||
|
social_optimization:
|
||||||
|
weight: 25
|
||||||
|
description: "Social bios fit platform character limits and match platform tone"
|
||||||
|
completeness:
|
||||||
|
weight: 20
|
||||||
|
description: "All sections present: short/medium/long bio, first-person, social bios, contact block"
|
||||||
@@ -15,7 +15,7 @@ steps:
|
|||||||
hint: |
|
hint: |
|
||||||
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
||||||
|
|
||||||
CAMPAIGN BRIEF: {task.prompt}
|
CAMPAIGN BRIEF: {task.message}
|
||||||
|
|
||||||
Write a COMPLETE EMAIL MARKETING SEQUENCE. For each email include:
|
Write a COMPLETE EMAIL MARKETING SEQUENCE. For each email include:
|
||||||
- EMAIL #: [sequence number and send timing, e.g. "Email 1: Launch Day"]
|
- EMAIL #: [sequence number and send timing, e.g. "Email 1: Launch Day"]
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ steps:
|
|||||||
You are Maya, Director of Marketing Operations at Crimson Leaf Marketing.
|
You are Maya, Director of Marketing Operations at Crimson Leaf Marketing.
|
||||||
A new marketing project has been created and needs its FIRST task.
|
A new marketing project has been created and needs its FIRST task.
|
||||||
|
|
||||||
PROJECT BRIEF: {task.prompt}
|
PROJECT BRIEF: {task.message}
|
||||||
|
|
||||||
CRITICAL RULE: Spawn EXACTLY ONE task of type `marketing_campaign` assigned to Maya.
|
CRITICAL RULE: Spawn EXACTLY ONE task of type `marketing_campaign` assigned to Maya.
|
||||||
NEVER use `planning`. NEVER use any agent other than Maya for this entry-point task.
|
NEVER use `planning`. NEVER use any agent other than Maya for this entry-point task.
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ steps:
|
|||||||
hint: |
|
hint: |
|
||||||
You are Maya, Director of Marketing Operations.
|
You are Maya, Director of Marketing Operations.
|
||||||
|
|
||||||
CAMPAIGN BRIEF: {task.prompt}
|
CAMPAIGN BRIEF: {task.message}
|
||||||
|
|
||||||
Write a complete CAMPAIGN STRATEGY DOCUMENT covering:
|
Write a complete CAMPAIGN STRATEGY DOCUMENT covering:
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ steps:
|
|||||||
description: "string — full brief for this content piece: product, audience, channel, phase, tone, CTA, word count"
|
description: "string — full brief for this content piece: product, audience, channel, phase, tone, CTA, word count"
|
||||||
agents:
|
agents:
|
||||||
- "string — Zara (for copy/creative), Leo (for strategy/research)"
|
- "string — Zara (for copy/creative), Leo (for strategy/research)"
|
||||||
task_type: "string — one of: social_media_pack, email_campaign, press_release, ad_copy, campaign_strategy"
|
task_type: "string — one of: social_media_pack, email_campaign, press_release, ad_copy, author_bio, campaign_strategy"
|
||||||
priority: 2
|
priority: 2
|
||||||
max_tasks: 8
|
max_tasks: 8
|
||||||
insert_children: true
|
insert_children: true
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ steps:
|
|||||||
hint: |
|
hint: |
|
||||||
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
||||||
|
|
||||||
PRESS RELEASE BRIEF: {task.prompt}
|
PRESS RELEASE BRIEF: {task.message}
|
||||||
|
|
||||||
Write a PROFESSIONAL PRESS RELEASE following AP Style. Structure:
|
Write a PROFESSIONAL PRESS RELEASE following AP Style. Structure:
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ steps:
|
|||||||
hint: |
|
hint: |
|
||||||
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
You are Zara, Lead Creative Copywriter at Crimson Leaf Marketing.
|
||||||
|
|
||||||
CAMPAIGN BRIEF: {task.prompt}
|
CAMPAIGN BRIEF: {task.message}
|
||||||
|
|
||||||
Write a COMPLETE SOCIAL MEDIA CONTENT PACK. Structure it by platform:
|
Write a COMPLETE SOCIAL MEDIA CONTENT PACK. Structure it by platform:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user