feat(linkedin-studio): first-hour/reply-loop command with tracked state
Wire orphan agent #11 (engagement-coach) by giving it a command surface, and add the tracked first-hour state the plan calls for (remediation Step 16). - commands/firsthour.md (new, 27th command): post-publish first-hour / reply-loop sprint. Delegates plan construction to engagement-coach via Task (subagent_type: linkedin-studio:engagement-coach) — returns a grouped target list (whales/inner-circle/ICPs/new connections), 2-3 seed self-comments + 3-5 CEA replies in the user's voice, and a minute-by-minute timeline anchored to publish time. Presents timeline/targets/drafts + velocity checkpoints, auto-copies the drafts to clipboard, persists the plan, then hands off to post-feedback-monitor for the 48h window. - hooks/scripts/state-updater.mjs: new pure mutation recordFirstHourPlan() mirroring updatePostTracking — additive by contract (inserts last_firsthour_date after last_post_date when absent, creates the ## First-Hour Plans section when absent, never touches existing fields). Section name is deliberately non-R-initial so it stays outside pruneContentHistory's "## Recent Posts ... (?=\n## [^R])" capture window. + a --record-firsthour CLI branch for parity with the other mutations. - config/state-file.template.md: additive scalars (last_firsthour_date, firsthour_active) + the ## First-Hour Plans section. - hooks/scripts/__tests__/state-updater.test.mjs: extend (existing file) with 7 recordFirstHourPlan tests — section creation, field insertion vs in-place update (no duplication), round-trip non-interference, graceful empty defaults, changes array. - CLAUDE.md: register the command (## Commands 26 -> 27, table row). - scripts/test-runner.sh: EXPECT_COMMANDS 26 -> 27 (registration guard). Verify: grep 'subagent_type: linkedin-studio:engagement-coach' commands/ -> firsthour.md; node --test state-updater -> 26/26; full hook suite -> 83/83; bash scripts/test-runner.sh -> exit 0 (62 passed, commands 27/27). Plan Step 16 (Wave 4 S3). [skip-docs]: tre-doc + version bump deferred to Step 21 per remediation plan. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
29229c0b01
commit
3ae8adb6ff
6 changed files with 272 additions and 4 deletions
|
|
@ -32,9 +32,9 @@ Full-spectrum LinkedIn content engine — short-form feed posts, carousels, vide
|
|||
|
||||
**Hook editing:** Edit `hooks/hooks.template.json` + `hooks/prompts/*.md`, then run `python3 hooks/scripts/compile-hooks.py`. Do not edit `hooks.json` directly. Prompts are loaded at runtime by gatekeeper scripts; the compile step is only needed when adding `type: prompt` hooks.
|
||||
|
||||
## Commands (26)
|
||||
## Commands (27)
|
||||
|
||||
All content commands (post, quick, react, pipeline, first-post, video, multiplatform, carousel, newsletter) auto-copy output to clipboard via `clipboard-helper.mjs`. Interactive steps are minimized — angle, format, and post type are inferred from context, with max 2 questions per post. **v2.0.0 net change:** 5 commands removed (`templates`, `publish`, `authority`, `collab`, `speaking` — absorbed into `quick`, `calendar`, `strategy`, `outreach` respectively) + 2 commands added (`newsletter`, `outreach`) = 27 → 24. **v3.1.0** adds 2 longform companions (`headless-review`, `pivot`) = 24 → 26.
|
||||
All content commands (post, quick, react, pipeline, first-post, video, multiplatform, carousel, newsletter) auto-copy output to clipboard via `clipboard-helper.mjs`. Interactive steps are minimized — angle, format, and post type are inferred from context, with max 2 questions per post. **v2.0.0 net change:** 5 commands removed (`templates`, `publish`, `authority`, `collab`, `speaking` — absorbed into `quick`, `calendar`, `strategy`, `outreach` respectively) + 2 commands added (`newsletter`, `outreach`) = 27 → 24. **v3.1.0** adds 2 longform companions (`headless-review`, `pivot`) = 24 → 26. **Remediation Step 16** adds `firsthour` (wiring orphan agent #11 `engagement-coach`) = 26 → 27.
|
||||
|
||||
| Command | Purpose |
|
||||
|---------|---------|
|
||||
|
|
@ -51,6 +51,7 @@ All content commands (post, quick, react, pipeline, first-post, video, multiplat
|
|||
| `/linkedin:pivot` | **(v3.1)** Re-open a long-form edition after a late substantive change so cleared gates (fact-check → editorial → persona → headless) re-run before lock; logs `pivots[]`, resets `currentPhase`, un-locks if needed (pivot heuristic: >20 % word-count change or >2 new sections) |
|
||||
| `/linkedin:batch` | Create a full week of content |
|
||||
| `/linkedin:calendar` | View/manage post scheduling queue + publish action (mark scheduled posts as published) |
|
||||
| `/linkedin:firsthour` | Post-publish first-hour / reply-loop sprint — delegates to `engagement-coach` for a timestamped target list + draft comments + timeline, persists the plan to state (`recordFirstHourPlan`), hands off to `post-feedback-monitor` |
|
||||
| `/linkedin:carousel` | Structured multi-slide carousel generator |
|
||||
| `/linkedin:video` | Video script generator (30s-2min) |
|
||||
| `/linkedin:multiplatform` | Adapt content for other platforms (short-form/cross-format; long-form → `/linkedin:newsletter`) |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue