linkedin-messages
SKILL.md
LinkedIn Messages Skill
Overview
Automates LinkedIn messaging including direct messages, InMail, group conversations, and connection requests with personalized notes through browser automation.
Quick Install
curl -sSL https://canifi.com/skills/linkedin-messages/install.sh | bash
Or manually:
cp -r skills/linkedin-messages ~/.canifi/skills/
Setup
Configure via canifi-env:
# First, ensure canifi-env is installed:
# curl -sSL https://canifi.com/install.sh | bash
canifi-env set LINKEDIN_EMAIL "your-email@example.com"
canifi-env set LINKEDIN_PASSWORD "your-password"
Privacy & Authentication
Your credentials, your choice. Canifi LifeOS respects your privacy.
Option 1: Manual Browser Login (Recommended)
If you prefer not to share credentials with Claude Code:
- Complete the Browser Automation Setup using CDP mode
- Login to the service manually in the Playwright-controlled Chrome window
- Claude will use your authenticated session without ever seeing your password
Option 2: Environment Variables
If you're comfortable sharing credentials, you can store them locally:
canifi-env set SERVICE_EMAIL "your-email"
canifi-env set SERVICE_PASSWORD "your-password"
Note: Credentials stored in canifi-env are only accessible locally on your machine and are never transmitted.
Capabilities
- Send direct messages to connections
- Compose and send InMail (Premium)
- Respond to message requests
- Create group conversations
- Send connection requests with notes
- Search message history
- Manage message requests
- Schedule message follow-ups
Usage Examples
Example 1: Send a Connection Message
User: "Message John Smith on LinkedIn about the job opportunity"
Claude: I'll send that LinkedIn message.
- Navigate to linkedin.com/messaging
- Search for John Smith in connections
- Open conversation
- Compose professional message about opportunity
- Send message
- Confirm delivery
Example 2: Send Connection Request with Note
User: "Connect with Sarah Chen from Google with a personalized note"
Claude: I'll send that connection request.
- Search for Sarah Chen at Google
- Find correct profile
- Click Connect
- Add personalized note
- Send request
- Confirm request sent
Example 3: Respond to Message Requests
User: "Check and respond to my LinkedIn message requests"
Claude: I'll review your message requests.
- Navigate to message requests folder
- Review pending messages
- Present summary of requests
- Respond to appropriate messages
- Accept or decline as instructed
Example 4: Send InMail
User: "Send an InMail to the CEO of TechCorp about a partnership"
Claude: I'll compose and send that InMail.
- Search for TechCorp CEO profile
- Click Message (InMail)
- Compose professional partnership inquiry
- Send InMail
- Confirm delivery and credit usage
Authentication Flow
- Navigate to linkedin.com/login via Playwright MCP
- Enter credentials from canifi-env
- Handle verification code if sent (check email/phone)
- Complete CAPTCHA if presented (notify user)
- Handle 2FA if enabled
- Verify messaging access
- Maintain session cookies
Error Handling
- Login Failed: Clear cookies, try again with fresh context
- Session Expired: Re-authenticate with stored credentials
- CAPTCHA Required: Notify user to complete manually
- 2FA Required: iMessage for verification code
- InMail Limit: Notify user of monthly credit usage
- Connection Limit: Notify of weekly connection limits
- Message Failed: Check if user accepts messages
- Profile Not Found: Search with alternative terms
Self-Improvement Instructions
When encountering new LinkedIn features:
- Document new messaging UI elements
- Add support for new message types
- Log successful InMail patterns
- Update for new connection features
Notes
- InMail requires LinkedIn Premium subscription
- Connection requests limited to ~100/week
- Some users restrict messages to connections only
- Sales Navigator has different messaging features
- Message character limits apply
- Avoid spam-like behavior to prevent restrictions
- LinkedIn may show warnings for rapid actions
Weekly Installs
38
Repository
andrejones92/canifi-life-osFirst Seen
Jan 24, 2026
Installed on
claude-code32
gemini-cli30
opencode30
codex26
cursor26
antigravity25