section-portfolio-assessment
$
npx mdskill add lyndonkl/claude/section-portfolio-assessmentDiagnose portfolio sections and flag pruning candidates.
- Identifies underperforming sections for quarterly reviews.
- Analyzes post volume, engagement trends, and niche fit.
- Assigns status based on conservative boundary rules.
- Outputs classification tables with narrative verdicts.
SKILL.md
.github/skills/section-portfolio-assessmentView on GitHub ↗
--- name: section-portfolio-assessment description: Classifies each substacker section as healthy / drifting / candidate-for-prune based on post volume, engagement trend, and niche alignment. Produces table + 2-4 paragraph narrative. Used in every quarterly review. Trigger keywords: portfolio, section health, healthy drifting prune, section assessment, which section is carrying. --- # Section Portfolio Assessment ## Classification rules - **Healthy**: ≥2 posts this quarter AND engagement at or above publication baseline AND clearly inside the stated niche. - **Drifting**: posts exist but one of: engagement below baseline, niche drift, or cadence collapse (0-1 posts). - **Candidate for prune**: 0 posts in 2 consecutive quarters OR writer has admitted they no longer find it interesting OR its removal would make the publication more coherent. On the boundary → "drifting" (conservative). ## Workflow ``` Per section in section-map.md: - [ ] Step 1: Count posts this quarter + trailing 4 weeks - [ ] Step 2: Compute engagement signal (open rate z-score vs publication baseline) - [ ] Step 3: Check niche-fit (does the section's promise still describe what ran?) - [ ] Step 4: Assign status: healthy | drifting | candidate-for-prune - [ ] Step 5: Write 1-sentence "why" per section ``` ## Output format ```markdown | Section | Posts this quarter | Status | Read verdict | |---|---|---|---| | kalshi-log | 6 | healthy | Carrying the publication; 63% avg open; clear niche fit | | agent-workshop | 2 | drifting | 2 posts is below cadence target; engagement on-baseline | | book-reviews | 0 | candidate-for-prune | 0 posts in 2 consecutive quarters; unassign its 2 historical posts and retire the section | ``` Followed by 2-4 paragraphs of narrative: what the portfolio shape tells us, which section is carrying, which has gone cold. ## Guardrails 1. Label conservatively. "Drifting" beats "candidate-for-prune" on ambiguity. 2. Narrative is where the agent earns its keep. Status labels are mechanical; "why" is judgement. 3. Don't recommend pruning in this skill — that's `recommend-prune` inside Curator. Strategist flags candidates only. 4. A section can stay "healthy" on low volume if engagement is strong.