Adds pruneContentHistory call to session-start.mjs after week rollover.
Uses dynamic import() for state-updater.mjs. Non-critical: silently
skipped on failure.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pure functions for post tracking (streak, week rollover, first_post_date),
content history pruning, and follower count updates. 19 tests green.
Follows week-rollover.mjs pattern (pure functions) + queue-manager.mjs
pattern (I/O wrapper with atomic writes).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pure-function iCal generator with CRLF endings, line folding at 75 octets,
VALARM reminders, VTIMEZONE, and special character escaping. 16 tests green.
Standalone CLI mode: node ical-generator.mjs --from-queue --output path.ics
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
TDD: 13 tests written first, then implementation.
Exports copyToClipboard(text) and clipboardAvailable() — never throws.
Supports darwin (pbcopy), win32 (clip), linux (xclip/xsel fallback).
Dual standalone/import mode following personalization-score.mjs pattern.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Session-start hook: welcome message with getting-started steps on first run
- Session-start hook: prominent personalization score section when score is 0
- Router: condensed 4-option menu for users who haven't posted yet
- Post/quick commands: non-blocking readiness check for unpersonalized state
- Post-creation hook: inline 5x5x5 engagement ritual explanation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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>