# Keith Features — Deferred (Need Bigger Dev Work)

These three features from Keith's doc need substantial development beyond the quick-wins batch. Documented here for prioritization.

## 1. Unfollow Tab (monthly suggestions)

**Keith wants:**
- Monthly top 50 unfollow suggestions (first month: 200)
- Goal: keep SM followers under ~1k
- Don't unfollow: CRM, teachers, partners
- Priority criteria: low impact, low activity, low followers, no interaction, off-topic field

**Why deferred:**
- Need a NEW scraper to fetch Keith's CURRENT following list from IG (we only scrape engagers + new followers now, not the people he follows)
- Need scoring algo for "impact / activity / interaction" — requires per-follow profile inspection (slow + IG flag risk)
- Need a new UI tab for the unfollow workflow
- Need a confirmation flow before unfollowing (can't be silent — IG sees mass unfollow as bot behavior)

**Estimated effort:** 1.5-2 days
- 4h: build IG following scraper (paced, safe)
- 4h: scoring algorithm + interaction graph from existing DM data
- 3h: unfollow tab UI + bulk-select flow
- 2h: pacing safety (max 50/day, randomized)

**Next step when ready:** decide if we want a dedicated unfollow scanner running monthly via launchagent OR on-demand only.

## 2. Per-Post Engager Templates

**Keith wants:** (from doc — "make it post specific. Perhaps it does this for any post that is engaged with even old ones")
- Per-post custom prefab message
- E.g. fascia release post → fascia-specific template; shaking intro post → intro template
- Apply to ALL engaged posts including older ones

**Why deferred:**
- Requires the keith-side config console we discussed
- Needs new config schema: `engager_templates: [{post_id, template, expiry, tags}]`
- Build_audit.py needs refactor to load templates from config not hardcoded
- UI in console where Keith adds/edits per-post templates
- Engager matcher logic to pick most-specific template per engager

**Estimated effort:** 5-6 hours (if done as part of phase-1 config console)
- 1h: config schema + storage
- 2h: build_audit refactor to load from config
- 2h: console UI for adding templates per post
- 1h: matcher logic

**Next step when ready:** Build alongside phase-1 console — they share the same config infrastructure.

## 3. Voice Learning Loop

**Keith wants:** (from doc — "I need to really train this part, as I still have to edit almost every message")
- System tracks his edits to suggestions
- Over time, claude's suggestions need less editing
- Continuous improvement loop

**Why deferred:**
- Need to capture what Keith ACTUALLY sends vs what we suggested (right now we only know we copied the suggestion to clipboard)
- Need a "what did you send?" feedback step OR a way to read his IG outbox post-send
- Need an edit-diff tracker that feeds back into the voice prompt
- Need a periodic voice-prompt refinement step (claude reviews 20 recent diffs and updates voice guide)

**Estimated effort:** 1-2 days
- 4h: capture-his-edits flow (either via "paste what you sent" feedback box OR IG outbox re-scrape)
- 3h: edit-diff analyzer (track common changes: "you always remove the {emoji}", "you shorten greetings", etc.)
- 3h: voice guide auto-refinement (periodic claude-loop reads recent diffs and adjusts voice guide)
- 2h: keith-facing UI showing his voice improvements over time

**Next step when ready:** Start with the "paste what you sent" simple version. The IG outbox re-scrape adds complexity but lets us go fully automatic.

---

## Status

All three should be tackled as part of **phase-2 of the system buildout**. Phase-1 was the quick wins + state machine (now done 2026-05-27). Phase-2 would be the config-driven console which unlocks all three of these features cleanly.
