Select the best content piece from scored variations and format for content-ready.md
Filters scored content drafts to select the highest-quality piece (20+/30 score) and formats it for immediate posting in content-ready.md. Use this after scoring completes to prepare your best content for publication.
/plugin marketplace add rpiplewar/shipfaster/plugin install content-gen@rapid-shippingRank all PASS content (20+/30 scores), apply tie-breaker rules, and select EXACTLY ONE best piece for human review in content-ready.md.
Follow the Selector agent instructions (agents/selector.md) to systematically:
Input Source: content-drafts.md with completed scores and critic verdicts
Required Data:
Filter Criteria:
Ranking:
Quality Alert:
If multiple pieces have same total score, apply tie-breakers in order:
Before finalizing, verify:
Quality Gates:
Platform Appropriateness:
Strategic Fit:
Location: /home/rpiplewar/fast_dot_ai/poasting/content-ready.md
Action: OVERWRITE file (only ONE piece should exist)
Format:
# Content Ready to Post
**Date Generated:** {ISO Timestamp}
**Theme:** {Theme Name}
**Source:** {Linear Task ID}
**Total Score:** {XX/30}
---
## Content
{Content exactly as it should be posted}
---
## Scoring Breakdown
**Gap Selling:** X/10 (Problem: X/3, Impact: X/3, Solution: X/4)
**Cognitive Biases:** Y (List: Bias1, Bias2, Bias3...)
**Decision Framework:** Z/10 (Hook: X/3, Value: X/4, CTA: X/3)
**TOTAL: XX/30**
---
## Why This Piece?
**Ranking Position:** #1 of {total_pass_count} PASS pieces
**Key Strengths:**
- {Strength from Critic notes}
- {Strength from Critic notes}
- {Strength from Critic notes}
**Winning Elements:**
- {Why this beat other contenders}
- {Specific tie-breaker if applicable}
- {Strategic fit reasoning}
---
## Posting Instructions
**Optimal Timing:**
- **Best Times (IST)**: 8:30 AM or 5:30 PM (high engagement windows)
- **Avoid**: Late night (11 PM - 6 AM) or midday lull (12 PM - 2 PM)
**Format Check:**
- [ ] Character count: {count} (within 280 for single, or thread format)
- [ ] Line breaks clean
- [ ] No typos or formatting issues
**Pre-Post Checklist:**
- [ ] Read aloud for flow
- [ ] Verify factual accuracy one final time
- [ ] Check for unintended meanings or misinterpretations
- [ ] Confirm tone matches brand voice
**After Posting:**
1. Copy final posted version to content-posted.md
2. Add posting timestamp
3. Set reminder to capture metrics after 48 hours
4. Monitor engagement in first 2 hours for immediate feedback
---
## Alternatives (Top 3 Runner-Ups)
### Runner-Up #2: {Score}
**Theme:** {Theme Name}
**Content Preview:** {First 50 characters}...
**Why Not Selected:** {Reasoning}
### Runner-Up #3: {Score}
**Theme:** {Theme Name}
**Content Preview:** {First 50 characters}...
**Why Not Selected:** {Reasoning}
### Runner-Up #4: {Score}
**Theme:** {Theme Name}
**Content Preview:** {First 50 characters}...
**Why Not Selected:** {Reasoning}
---
**Generated by:** content-gen plugin v1.0
**Selection Criteria:** Highest total score + tie-breaker rules
**Human Approval Required:** YES (review before posting)
Before marking selection complete:
✅ Best Content Selected
Selected: Theme A, Variation 1
Score: 28/30 (EXCELLENT)
Ranking: #1 of 18 PASS pieces
Key Strengths:
- Exceptional problem clarity (Gap: 9/10)
- Strong emotional hook activating 6 biases
- Clear, actionable CTA
Output: content-ready.md
Status: Ready for human review and approval
Runner-Ups:
#2: Theme C, Var 5 (27/30)
#3: Theme B, Var 2 (26/30)
#4: Theme A, Var 3 (25/30)
Next Step: Review content-ready.md and post when ready
If no PASS content:
❌ Selection Failed: No content scored 20+/30
Action Required:
1. Review scorer settings (may be too harsh)
2. Regenerate content with stronger constraints
3. Review theme quality (may lack content generation potential)
Pipeline STOPPED at selection phase.
If tie-breakers don't resolve:
⚠️ Human Decision Required
Two pieces tied after all 6 automated tie-breakers.
Both pieces displayed in content-ready.md.
User must manually select.
If content-ready.md already has content:
⚠️ Warning: content-ready.md already contains content
Options:
1. Archive existing content to content-posted.md first
2. Overwrite with new selection (confirm Y/N)
3. Cancel selection
Current content in content-ready.md should be posted or archived before generating new content.
After successful selection:
Or run full pipeline: /content-full-pipeline to execute all stages end-to-end