ktg-plugin-marketplace/plugins/linkedin-thought-leadership/hooks/prompts/state-update-reminder.md
Kjell Tore Guttormsen 39f8b275a6 feat(linkedin-thought-leadership): v1.0.0 — initial open-source import
Build LinkedIn thought leadership with algorithmic understanding,
strategic consistency, and AI-assisted content creation. Updated for
the January 2026 360Brew algorithm change.

16 agents, 25 commands, 6 skills, 9 hooks, 24 reference docs.

Personal data sanitized: voice samples generalized to template,
high-engagement posts cleared, region-specific references replaced
with placeholders.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 22:09:03 +02:00

73 lines
4.5 KiB
Markdown

Before ending this LinkedIn content session, do two things:
**1. Update State File**
If a post was created or finalized in this session, update `~/.claude/linkedin-thought-leadership.local.md`:
- Set `last_post_date` to today (YYYY-MM-DD format)
- Set `last_post_topic` to the main topic (use the matching `expertise_areas` value when possible for consistent pillar tracking)
- If `first_post_date` is null and a post was created, set `first_post_date` to today (YYYY-MM-DD). This is set ONCE and never changed after that.
- Check if ISO week has changed — if so, reset `posts_this_week` to 0 and update `current_week`
- Increment `posts_this_week`
- Update streak: increment `current_streak` if posting on consecutive days (gap <= 1 day), reset to 1 if gap > 2 days
- Update `longest_streak` if current exceeds it
- Add entry to '## Recent Posts' section: [YYYY-MM-DD] "Hook text..." (char count) - topic_area (use expertise_area name for consistent pillar tracking)
- Clear `next_planned_topic` if it was used, or set it to the next suggested topic
- If analytics data was imported in this session, set `last_import_date` to today (YYYY-MM-DD) and `last_import_week` to current ISO week (YYYY-WXX)
- If the user mentioned or updated their follower count during this session:
- Update `follower_count` to the new value
- If the month changed since last monthly_growth entry, append: {month: "YYYY-MM", count: X, delta: X}
- Recalculate `growth_rate_needed`: (follower_target - follower_count) / months_remaining
- Recalculate `projected_10k_date` from average of last 3 monthly deltas
- Add entry to '## Milestone Log': [YYYY-MM] count (+delta)
**2. Pre-Publish Reminders** (only if a post was created)
- **Quality Check**: Has content been reviewed against quality scorecard? Hook 110-140 chars, 1,200-1,800 chars total, authentic tone, no external links.
- **5x5x5 Engagement**: Before posting, complete 15-20 min pre-posting engagement — 5 people with overlapping audiences, find their recent posts, write 5 thoughtful comments (15+ words each).
- **First-Hour Plan**: Respond within 5 minutes to first comments. Add value in responses. Target 15+ engagements in first hour.
- **Posting Time**: Post when target audience is most active.
**3. Queue Status Check**
If posts were added to the queue during this session (`assets/drafts/queue.json` was modified):
- Confirm how many posts were queued and their scheduled dates
- Remind: "View your full schedule with /linkedin:calendar"
If a scheduled post was published during this session:
- Verify it was marked as published in queue.json (status = "published")
- If not, remind: "Run /linkedin:publish to update the queue status"
Provide reminders naturally based on what was done in the session. If no LinkedIn content was created, skip the reminders and just ensure state is consistent.
**4. Voice Sample Extraction** (if a post was created)
If a LinkedIn post was created or finalized in this session, consider extracting the hook line as a voice sample:
- Read the hook line from the post that was just created
- Check if `assets/voice-samples/authentic-voice-samples.md` exists
- If it does, suggest appending a new entry to the "## Update Log" section at the bottom:
```
- [YYYY-MM-DD]: "[Hook text]" — [post type] (extracted from session post)
```
- **Ask the user for approval before writing.** Say: "Would you like me to save this hook as a voice sample for future reference?"
- Only write if the user approves
- This passively grows the voice profile over time, improving personalization score
**5. Content History Log** (if a post was created)
If a LinkedIn post was created or finalized, append an entry to the content history log:
- If `assets/analytics/content-history.md` does not exist, initialize it from `config/content-history.template.md`
- Append a new row to the "## Content Log" table:
```
| YYYY-MM-DD | "Hook text..." | topic_area | format | word_count | char_count | source |
```
Where:
- `date`: Today's date
- `hook`: First 60 characters of the hook line
- `topic`: Matching expertise_area value (for pillar tracking)
- `format`: post/quick/react/video/pipeline
- `word_count`: Word count of the full post
- `char_count`: Character count of the full post
- `source`: original/url/curated (where the idea came from)
- This is append-only — never edit or delete existing entries
- This log enables `/linkedin:report` and `analytics-interpreter` to track content production over time without requiring LinkedIn CSV imports