Linkedin Monitor
by @dylanbaker24
Bulletproof LinkedIn inbox monitoring with progressive autonomy. Monitors messages hourly, drafts replies in your voice, and alerts you to new conversations. Supports 4 autonomy levels from monitor-only to full autonomous.
clawhub install linkedin-monitorπ About This Skill
name: linkedin-monitor description: Bulletproof LinkedIn inbox monitoring with progressive autonomy. Monitors messages hourly, drafts replies in your voice, and alerts you to new conversations. Supports 4 autonomy levels from monitor-only to full autonomous. version: 1.0.0 author: Dylan Baker / lilAgents
LinkedIn Monitor
Reliable LinkedIn inbox monitoring for Clawdbot.
Features
Quick Start
# 1. Setup (interactive)
linkedin-monitor setup2. Verify health
linkedin-monitor health3. Run manually (test)
linkedin-monitor check4. Enable cron (hourly)
linkedin-monitor enable
Autonomy Levels
| Level | Name | Behavior | |-------|------|----------| | 0 | Monitor Only | Alerts to new messages only | | 1 | Draft + Approve | Drafts replies, waits for approval | | 2 | Auto-Reply Simple | Auto-handles acknowledgments, scheduling | | 3 | Full Autonomous | Replies as you, books meetings, networks |
Default: Level 1 β Change with linkedin-monitor config autonomyLevel 2
Commands
linkedin-monitor setup # Interactive setup wizard
linkedin-monitor health # Check auth status
linkedin-monitor check # Run one check cycle
linkedin-monitor enable # Enable hourly cron
linkedin-monitor disable # Disable cron
linkedin-monitor status # Show current state
linkedin-monitor config # View/edit configuration
linkedin-monitor logs # View recent activity
linkedin-monitor reset # Clear state (start fresh)
Configuration
Location: ~/.clawdbot/linkedin-monitor/config.json
{
"autonomyLevel": 1,
"alertChannel": "discord",
"alertChannelId": "YOUR_CHANNEL_ID",
"calendarLink": "cal.com/yourname",
"communicationStyleFile": "USER.md",
"timezone": "America/New_York",
"schedule": "0 * * * *",
"morningDigest": {
"enabled": true,
"hour": 9,
"timezone": "Asia/Bangkok"
},
"safetyLimits": {
"maxMessagesPerDay": 50,
"escalationKeywords": ["angry", "legal", "refund"],
"dailyDigest": true
}
}
How It Works
Monitoring Flow
1. Health Check
βββ Verify LinkedIn auth (lk CLI)
2. Fetch Messages
βββ lk message list --json
3. Compare State
βββ Filter: only messages not in state file
4. For Each New Message
βββ Level 0: Alert only
βββ Level 1: Draft reply β Alert β Wait for approval
βββ Level 2: Simple = auto-reply, Complex = draft
βββ Level 3: Full autonomous response
5. Update State
βββ Record message IDs (prevents duplicates)
State Management
State is managed by scripts, not the LLM. This guarantees:
State files: ~/.clawdbot/linkedin-monitor/state/
Sending Approved Messages
When at Level 1, approve drafts with:
send [name] # Send draft to [name]
send all # Send all pending drafts
edit [name] [text] # Edit draft before sending
skip [name] # Discard draft
Troubleshooting
"Auth expired"
lk auth login
linkedin-monitor health
"No messages found"
linkedin-monitor check --debug
Duplicate notifications
linkedin-monitor reset # Clear state
linkedin-monitor check # Fresh start
Dependencies
lk CLI (LinkedIn CLI) β npm install -g lkjq (JSON processor) β brew install jqFiles
~/.clawdbot/linkedin-monitor/
βββ config.json # Your configuration
βββ state/
β βββ messages.json # Seen message IDs
β βββ lastrun.txt # Last check timestamp
β βββ drafts.json # Pending drafts
βββ logs/
βββ activity.log # Activity history
π‘ Examples
# 1. Setup (interactive)
linkedin-monitor setup2. Verify health
linkedin-monitor health3. Run manually (test)
linkedin-monitor check4. Enable cron (hourly)
linkedin-monitor enable
βοΈ Configuration
Location: ~/.clawdbot/linkedin-monitor/config.json
{
"autonomyLevel": 1,
"alertChannel": "discord",
"alertChannelId": "YOUR_CHANNEL_ID",
"calendarLink": "cal.com/yourname",
"communicationStyleFile": "USER.md",
"timezone": "America/New_York",
"schedule": "0 * * * *",
"morningDigest": {
"enabled": true,
"hour": 9,
"timezone": "Asia/Bangkok"
},
"safetyLimits": {
"maxMessagesPerDay": 50,
"escalationKeywords": ["angry", "legal", "refund"],
"dailyDigest": true
}
}
π Tips & Best Practices
"Auth expired"
lk auth login
linkedin-monitor health
"No messages found"
linkedin-monitor check --debug
Duplicate notifications
linkedin-monitor reset # Clear state
linkedin-monitor check # Fresh start