feat(linkedin-studio): honest newsletter distribution + profile-SEO + outreach pipeline
Step 17 (Wave 4 S4) of the audit remediation. Applies research/03 §D5 + the two S2 residual fixes folded in. No new commands/agents (counts stay 27/19). Newsletter (commands/newsletter.md): new "Distribution channel" section after Step 10 teaching the HONEST native-newsletter mechanics — bypasses organic feed ranking via ONE deduplicated notification per subscriber per edition (NOT a three-touchpoint blast); the mass invite fires once → ~1-2K follower floor (wait until you can spend it); realistic cold-start 0-100 subs months 1-3; discloses non-export / no-canonical / no-read-analytics / per-subscriber decay; explicit below-vs-above-floor decision rule. Sourced to research/03 D5. Profile (commands/profile.md): new "Profile SEO" section — headline as the highest-weight search field + a per-section keyword-target table (headline/about/experience/skills/featured), consistency-over-stuffing rule. Outreach (commands/outreach.md): Step 8c persists the pipeline board to tracked state via the new recordOutreachContact mutation (mirrors Step 16's recordFirstHourPlan): additive last_outreach_date/outreach_active scalars + a non-R-initial ## Outreach Pipeline section in state-updater.mjs + config/state-file.template.md + --record-outreach CLI branch. +7 tests (state-updater 26→33, full hook suite 83→90). Residual 1 (growth-playbook:216): 9:16 "distribution boost" → 4:5/1:1 guidance (9:16 mobile-only opt-in; "immersive distribution" = uncorroborated heuristic). Residual 2 (video-strategy-guide:300): "3-second test determines 70% retention" → "front-load value for muted autoplay" (three-second hook is folklore, not a LinkedIn signal). Verify: grep checks 1-5 pass; test-runner.sh exit 0 (stat-consistency green); state-updater 33/33. [skip-docs] — tre-doc + version bump deferred to Step 21. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
743867f90a
commit
0b4e1bd097
8 changed files with 284 additions and 3 deletions
|
|
@ -1072,6 +1072,37 @@ Day 30:
|
|||
- Update speaker bio with new event
|
||||
```
|
||||
|
||||
### Step 8c: Persist the pipeline to tracked state
|
||||
|
||||
The boards above are the working view; the **tracked record** lives in plugin
|
||||
state so the pipeline survives across sessions (and shows the same partner the
|
||||
next time you run `/linkedin:outreach`). After you add or advance a row, persist
|
||||
it with the additive `recordOutreachContact` mutation — the same state pattern
|
||||
`/linkedin:firsthour` uses (`recordFirstHourPlan`). It writes a newest-first row
|
||||
to a `## Outreach Pipeline` section in `~/.claude/linkedin-studio.local.md` and
|
||||
sets `last_outreach_date` / `outreach_active`, **without touching any existing
|
||||
field** (a missing field is inserted, never required up front):
|
||||
|
||||
```bash
|
||||
node "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/state-updater.mjs" --record-outreach \
|
||||
--date "YYYY-MM-DD HH:MM" \
|
||||
--track collab \
|
||||
--partner "@name" \
|
||||
--stage pitched \
|
||||
--next "follow up if no reply" \
|
||||
--due YYYY-MM-DD
|
||||
```
|
||||
|
||||
- `--track` — `collab` or `speaking` (the row is tagged so one board carries both).
|
||||
- `--stage` — `warming` / `pitched` / `in-production` / `delivered` / `follow-up`.
|
||||
- `--next` + `--due` — the next action and when it falls due (drives the
|
||||
follow-up surfacing in `/linkedin:calendar` and the Step 10 dashboard).
|
||||
|
||||
Re-running with the same partner appends a fresh dated row, so the section is a
|
||||
running history of where each contact stands — not a single mutable cell. Read
|
||||
the section back at Step 0 of the next outreach session to reconstruct the
|
||||
board.
|
||||
|
||||
## Step 9: Network & Progression
|
||||
|
||||
### Step 9a: Collab — Inner Circle Model
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue