LinkedIn Autopilot
by @audsmith28
Your agent builds your LinkedIn presence while you sleep. Schedule posts, auto-engage with target accounts, run personalized DM sequences, and never miss an engagement opportunity. Handles connection requests, profile visiting campaigns, post engagement, and follow-up sequences with safety throttling and human-like behavior patterns. Configure your targets, define engagement rules, and let your agent network 24/7. Use when setting up LinkedIn automation, managing posting schedules, running engag
clawhub install linkedin-autopilotπ About This Skill
name: linkedin-autopilot description: Your agent builds your LinkedIn presence while you sleep. Schedule posts, auto-engage with target accounts, run personalized DM sequences, and never miss an engagement opportunity. Handles connection requests, profile visiting campaigns, post engagement, and follow-up sequences with safety throttling and human-like behavior patterns. Configure your targets, define engagement rules, and let your agent network 24/7. Use when setting up LinkedIn automation, managing posting schedules, running engagement campaigns, or building agent-driven LinkedIn lead generation workflows. metadata: clawdbot: emoji: "π€" requires: browser: true env: - LINKEDIN_EMAIL - LINKEDIN_PASSWORD
LinkedIn Autopilot β Your Agent Networks 24/7
You sleep. Your LinkedIn thrives.
LinkedIn Autopilot turns your agent into a 24/7 LinkedIn manager. It schedules posts, auto-engages with target accounts, runs personalized DM sequences, and builds your network while you focus on actual work. No more "I should post more" guilt. No more missing engagement windows. No more manual connection request grinding.
What makes it different: This isn't a dumb bot β it's your agent using real browser automation with human-like behavior patterns. Random delays, natural engagement patterns, safety throttling, and intelligent targeting. Multi-day sequences with conditional logic. State tracking across sessions. Full reporting on what worked.
The Pain Points This Solves
β "I spend 2 hours/day on LinkedIn and have nothing to show for it" β Your agent handles engagement, DMs, and connection building automatically
β "I post inconsistently and my reach is dying" β Scheduled posts with optimal timing β your agent never forgets
β "I see opportunities to engage but I'm too busy" β Auto-engage on target accounts' posts with personalized comments
β "Follow-up sequences are tedious and I drop leads" β Multi-step DM sequences with conditional logic β your agent follows up
β "I want to build my network but connection requests feel spammy" β Targeted connection campaigns with personalized notes and safety limits
Setup
1. Run scripts/setup.sh to initialize config and data directories
2. Edit ~/.config/linkedin-autopilot/config.json with targets, sequences, and posting schedule
3. Store LinkedIn credentials in ~/.clawdbot/secrets.env:
LINKEDIN_EMAIL=your-email@example.com
LINKEDIN_PASSWORD=your-password
4. Test with: scripts/engage.sh --dry-runConfig
Config lives at ~/.config/linkedin-autopilot/config.json. See config.example.json for full schema.
Key sections:
Scripts
| Script | Purpose |
|--------|---------|
| scripts/setup.sh | Initialize config and data directories |
| scripts/post.sh | Post scheduled content from queue |
| scripts/engage.sh | Auto-engage on target posts (like, comment, share) |
| scripts/dm-sequence.sh | Manage DM sequences (send, follow-up, track) |
| scripts/connect.sh | Send connection requests to target profiles |
| scripts/report.sh | Generate analytics report (engagement, growth, conversions) |
All scripts support --dry-run for testing without actually posting/engaging.
Posting Workflow
Run scripts/post.sh on schedule (cron daily at optimal times). The script:
1. Checks posting queue in config
2. Verifies timing (respects blackout windows, rate limits)
3. Logs into LinkedIn via browser automation
4. Posts content with configured formatting
5. Tracks post performance
6. Updates queue state
Post queue example:
"posts": [
{
"content": "5 lessons from building AI agents in production:\n\n1. ...",
"scheduled_time": "2024-01-28T09:00:00Z",
"status": "pending",
"media": null
}
]
Engagement Workflow
Run scripts/engage.sh 3-4x daily. The script:
1. Searches for posts matching target criteria (keywords, accounts, hashtags)
2. Scores relevance (content match, author influence, engagement level)
3. Engages with top posts (like, thoughtful comment, or share)
4. Tracks engagement to avoid repeats
5. Respects rate limits (20-30 engagements per run)
Target patterns:
Engagement types:
DM Sequence Workflow
Run scripts/dm-sequence.sh daily. The script:
1. Checks active sequences for people at each stage
2. Sends next message in sequence (respects delays)
3. Detects replies and advances/pauses accordingly
4. Handles conditional branching (replied vs not replied)
5. Reports on conversion rates
Sequence example:
{
"name": "consulting-intro",
"trigger": "new_connection",
"steps": [
{
"delay_hours": 24,
"message": "Hey {first_name}! Thanks for connecting. I help {title}s with {pain_point}. Are you currently working on anything in this space?",
"condition": null
},
{
"delay_hours": 72,
"message": "Following up β I saw your post about {topic}. Would love to chat about {offering}. Free for a quick call this week?",
"condition": "no_reply"
}
]
}
Connection Request Workflow
Run scripts/connect.sh weekly (not daily β LinkedIn limits this). The script:
1. Searches for target profiles (job titles, companies, keywords)
2. Filters out existing connections and pending requests
3. Generates personalized connection notes
4. Sends requests with safety throttling (20-30/week max)
5. Tracks acceptance rate
Target criteria:
"connection_targets": [
{
"query": "AI consultant OR automation specialist",
"companies": ["Microsoft", "Google", "OpenAI"],
"exclude_titles": ["Recruiter"],
"note_template": "Hey {first_name}, I'm building AI tools for {industry} and saw your work at {company}. Would love to connect!"
}
]
Safety & Rate Limits
LinkedIn Autopilot follows conservative rate limits to avoid account flags:
| Action | Limit | Timing | |--------|-------|--------| | Posts | 1-2/day | Optimal hours (9am-11am, 2pm-4pm) | | Engagements | 80-100/day | Spread across 3-4 runs | | Connection Requests | 20-30/week | Gradual warmup over first 2 weeks | | DMs | 30-50/day | Random delays 5-15min between sends | | Profile Views | 50-80/day | Natural browsing pattern |
Warmup Period: First 2 weeks run at 50% capacity to establish normal behavior pattern.
Blackout Windows: No activity during nights/weekends (configurable).
Random Delays: 3-8 seconds between actions, 5-15 minutes between campaigns.
Human-Like Patterns: Varied engagement times, occasional skips, natural language variance.
State Tracking
All activity is logged and tracked:
~/.config/linkedin-autopilot/
βββ config.json # User configuration
βββ posts-queue.json # Scheduled posts
βββ engagement-history.json # Posts engaged with (dedup)
βββ dm-sequences.json # Active DM threads
βββ connections.json # Connection requests + status
βββ analytics.json # Performance metrics
βββ activity-log.json # Full audit trail
Reporting
scripts/report.sh generates performance reports:
Weekly Summary:
Lead Conversion Tracking:
Example Workflows
1. Thought Leader Building
2. Outbound Lead Gen
3. Network Maintenance
LinkedIn TOS Compliance
Important: LinkedIn's ToS prohibits automation. This tool is designed for: 1. Personal use with human oversight (you review/approve actions) 2. Agent-assisted workflows (agent suggests, human approves) 3. Batch scheduling (compose in bulk, post on schedule)
Recommended approach:
--dry-run mode to preview actionsThis tool is provided as-is for educational purposes. Use responsibly.
Data Files
~/.config/linkedin-autopilot/
βββ config.json # Main configuration
βββ posts-queue.json # Scheduled content
βββ engagement-history.json # Activity dedup
βββ dm-sequences.json # Active conversations
βββ connections.json # Network building state
βββ analytics.json # Performance tracking
βββ activity-log.json # Full audit trail
Browser Automation
Uses Clawdbot's built-in browser control:
Advanced Features
A/B Testing: Test post variants, measure which performs better
Smart Scheduling: ML-based optimal posting time suggestion
Reply Detection: Pauses DM sequences when prospect replies
Sentiment Analysis: Adjusts engagement strategy based on post sentiment
Network Mapping: Tracks who engages with your content (potential advocates)
Troubleshooting
"LinkedIn security check triggered" β Reduce rate limits in config, extend delays, complete security verification manually
"Posts not publishing"
β Check activity-log.json for errors, verify LinkedIn session still valid
"DM sequences not advancing"
β Verify reply detection is working, check conversation state in dm-sequences.json
"Connection requests rejected frequently" β Improve note personalization, target better ICP matches, reduce volume
Contributing
Want to add features? See references/linkedin-api.md for browser automation patterns and references/sequence-engine.md for DM workflow logic.
Remember: Your agent is a force multiplier, not a replacement for authentic networking. Use it to handle the tedious parts so you can focus on the conversations that matter.
βοΈ Configuration
Config lives at ~/.config/linkedin-autopilot/config.json. See config.example.json for full schema.
Key sections:
π Tips & Best Practices
"LinkedIn security check triggered" β Reduce rate limits in config, extend delays, complete security verification manually
"Posts not publishing"
β Check activity-log.json for errors, verify LinkedIn session still valid
"DM sequences not advancing"
β Verify reply detection is working, check conversation state in dm-sequences.json
"Connection requests rejected frequently" β Improve note personalization, target better ICP matches, reduce volume