← Back to Skills Marketplace
dylanbaker24

LinkedIn Inbox Manager

by dylanbaker24 · GitHub ↗ · v0.1.0
cross-platform ⚠ suspicious
2277
Downloads
0
Stars
5
Active Installs
1
Versions
Install in OpenClaw
/install linkedin-inbox
Description
LinkedIn inbox management with scheduled scanning, auto-draft responses following user's communication style, and approval workflows. Use when monitoring LinkedIn messages, drafting replies, managing inbox during off-hours, or setting up morning ping summaries of LinkedIn activity.
README (SKILL.md)

LinkedIn Inbox Manager

Automated LinkedIn inbox monitoring with human-in-the-loop approval for responses. Uses Peekaboo for UI automation (no API rate limits, works with any LinkedIn account).

Requirements

  • macOS with Peekaboo CLI installed (brew install steipete/tap/peekaboo)
  • Screen Recording + Accessibility permissions granted
  • LinkedIn logged in via browser (Chrome recommended)
  • Clawdbot with browser capability

Quick Start

1. One-time Setup

# Grant Peekaboo permissions
peekaboo permissions

# Verify LinkedIn is accessible
peekaboo app launch "Google Chrome"
peekaboo see --app "Google Chrome" --annotate --path /tmp/linkedin-check.png

2. Configure User Style

Create linkedin-inbox-config.json in your workspace:

{
  "scan": {
    "intervalMinutes": 60,
    "activeHours": { "start": 9, "end": 18, "timezone": "America/Los_Angeles" },
    "skipWeekends": true
  },
  "drafting": {
    "styleProfile": "USER.md",
    "templates": {
      "decline": "Thanks for reaching out. Not a fit for us right now, but best of luck.",
      "interested": "This looks interesting. Happy to chat more. What's your availability?",
      "referral": "I might know someone. Let me check and get back to you."
    }
  },
  "notifications": {
    "channel": "discord",
    "target": "#linkedin"
  }
}

3. Start Monitoring

Tell your agent: "Start LinkedIn inbox monitoring" or add to HEARTBEAT.md:

- Check LinkedIn inbox if last scan >1 hour ago

Core Workflow

Scan Inbox

# Navigate to LinkedIn messaging
peekaboo app launch "Google Chrome"
peekaboo menu click --app "Google Chrome" --item "New Tab"
peekaboo type "https://www.linkedin.com/messaging/" --return
sleep 3

# Capture inbox state
peekaboo see --app "Google Chrome" --window-title "Messaging" --annotate --path /tmp/linkedin-inbox.png

The agent reads the annotated screenshot to identify:

  • Unread messages (bold names, blue dots)
  • Message previews
  • Sender names and titles

Draft Responses

For each unread message:

  1. Agent reads the conversation
  2. Classifies intent (pitch, networking, job inquiry, spam)
  3. Drafts response matching user's communication style
  4. Posts draft to notification channel for approval

Example notification:

💼 LinkedIn: New message from **Alex M.** (Founder @ SomeCompany)

Preview: "Hi, I noticed you're growing and wondered if..."

**My read:** Services pitch. Doesn't fit current needs.

**Draft reply:**
> Thanks for reaching out. We're set on that side for now, but I'll keep you in mind if that changes.

React ✅ to send, ❌ to skip, or reply with edits.

Send Approved Messages

On approval:

# Click into conversation
peekaboo click --on [message-element-id] --app "Google Chrome"
sleep 1

# Type response
peekaboo type "Your approved message here" --app "Google Chrome"

# Send (Enter or click Send button)
peekaboo press return --app "Google Chrome"

Communication Style Matching

The skill reads USER.md (or configured style file) to match the user's tone:

Extract these signals:

  • Formality level (casual vs professional)
  • Typical greeting style
  • Sign-off patterns
  • Sentence length preference
  • Banned words/phrases
  • Response length norms

Apply to drafts:

  • Mirror detected patterns
  • Use user's vocabulary
  • Match their directness level
  • Respect their guardrails (no "excited", no hype, etc.)

See references/style-extraction.md for detailed guidance.

Morning Ping Integration

Add LinkedIn summary to your morning ping:

📣 The Morning Ping — Monday, Jan 27

**LinkedIn:**
• 💚 Sarah Chen replied — "That sounds great, let's do Thursday" → Draft ready
• 💚 Mike R. replied — "Not interested right now" → No action needed
• 📩 3 new connection requests (2 sales pitches, 1 relevant)
• 📩 1 unread message from Alex (job inquiry) → Draft ready

Reply "send sarah" to approve, "skip mike" to archive.

Approval Commands

Users can respond with:

  • send [name] - Send the drafted reply
  • send all - Send all pending drafts
  • skip [name] - Archive without replying
  • edit [name]: [new message] - Replace draft and send
  • show [name] - Show full conversation

Scheduled Scanning

Via Cron (Recommended)

{
  "schedule": "0 */2 9-18 * * 1-5",
  "text": "Scan LinkedIn inbox and post any new messages to #linkedin with draft replies"
}

Via Heartbeat

In HEARTBEAT.md:

- If 9am-6pm PT and last LinkedIn scan >60min: scan inbox, draft replies, post to #linkedin

Safety Rules

  1. Never send without explicit approval - Always wait for user confirmation
  2. Rate limit actions - Max 20 LinkedIn actions per hour
  3. Respect quiet hours - Don't scan outside configured activeHours
  4. Log everything - Record all actions in daily memory file
  5. Preserve originals - Never delete messages, only archive

Troubleshooting

"Can't find messaging UI"

  • Ensure Chrome is open with LinkedIn logged in
  • Check window title matches (may vary by language)
  • Use peekaboo list windows --app "Google Chrome" --json to debug

"Session expired"

  • LinkedIn sessions expire periodically
  • Re-authenticate manually in browser
  • Skill will detect login page and notify user

"Peekaboo permissions denied"

peekaboo permissions  # Check status
# Grant via System Preferences > Privacy & Security > Screen Recording + Accessibility

Files

  • scripts/scan_inbox.sh - Peekaboo commands for inbox capture
  • scripts/send_message.sh - Peekaboo commands for sending
  • references/style-extraction.md - Guide for communication style matching
Usage Guidance
Before installing: 1) Confirm you are comfortable granting Peekaboo screen-recording and Accessibility access — these let the skill capture any on-screen content, not just LinkedIn. 2) Ensure the agent enforces the 'require approval' safety rule in practice (test in dry-run mode). 3) Add/verify metadata: declare required binaries (peekaboo, jq) and macOS-only platform. 4) Inspect where screenshots/JSON are stored and for how long (scripts write to /tmp); consider changing paths and retention. 5) Verify how notifications are delivered (Discord or other) so private message contents aren't posted to external channels unintentionally. 6) Run initial scans with a non-sensitive account or while logged out to confirm behavior. If you can't confirm these, treat the skill as high-risk and avoid installing it on machines with sensitive open documents or accounts.
Capability Analysis
Type: OpenClaw Skill Name: linkedin-inbox Version: 0.1.0 The skill is classified as suspicious due to its reliance on high-risk capabilities, specifically UI automation via `peekaboo` which requires macOS Screen Recording and Accessibility permissions. While these permissions are plausibly needed for its stated purpose of LinkedIn inbox management, they grant extensive control over the user's browser and access to sensitive personal communications. The skill processes sensitive data (LinkedIn messages, user communication style from `USER.md`) and uses shell scripts (`scripts/scan_inbox.sh`, `scripts/send_message.sh`) to interact with the browser. Although the `SKILL.md` includes 'Safety Rules' explicitly designed to prevent unauthorized actions (e.g., 'Never send without explicit approval'), the inherent risk of UI automation and processing untrusted input (LinkedIn messages) without clear malicious intent warrants a 'suspicious' classification.
Capability Assessment
Purpose & Capability
SKILL.md and scripts clearly require macOS, the Peekaboo CLI, and jq (peekaboo commands and JSON parsing), but the registry metadata lists no required binaries or platform restriction. That mismatch is incoherent: an inbox automation skill legitimately needs UI automation tools, but the package metadata should declare those dependencies and the macOS requirement.
Instruction Scope
Instructions explicitly capture annotated screenshots of the browser and read historical messages and USER.md to build a style profile — this is necessary for the stated drafting feature. However, screen recording + Accessibility permissions allow the skill to capture any on-screen content (not just LinkedIn), and the scripts save screenshots/json to /tmp. The SKILL.md's safety rules require explicit approval before sending, but that is an instruction-level policy (it depends on correct agent enforcement).
Install Mechanism
There is no install spec (instruction-only with included scripts). That reduces supply-chain risk (nothing downloaded at install time). The included scripts run locally and rely on existing tools rather than fetching remote code.
Credentials
No environment variables or external credentials are requested (good), but the skill requires granting macOS screen-recording and Accessibility privileges to peekaboo — high-scope permissions that can expose unrelated sensitive data. The manifest also fails to declare required binaries (peekaboo, jq), and the config references external notification channels (discord/#linkedin) without showing how messages are posted — this could lead to accidental exfiltration if notifications are routed externally.
Persistence & Privilege
always:false and user-invocable:true (default) — the skill does not request forced persistent inclusion or system-wide changes to other skills. Note: agent autonomous invocation is allowed by default; combined with granted screen-capture permissions, autonomous runs would have a larger blast radius if misconfigured, but that alone is not grounds for blocking.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install linkedin-inbox
  3. After installation, invoke the skill by name or use /linkedin-inbox
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
Initial release: Peekaboo-based inbox scanning, auto-draft responses matching user communication style, approval workflows, morning ping integration
Metadata
Slug linkedin-inbox
Version 0.1.0
License
All-time Installs 5
Active Installs 5
Total Versions 1
Frequently Asked Questions

What is LinkedIn Inbox Manager?

LinkedIn inbox management with scheduled scanning, auto-draft responses following user's communication style, and approval workflows. Use when monitoring LinkedIn messages, drafting replies, managing inbox during off-hours, or setting up morning ping summaries of LinkedIn activity. It is an AI Agent Skill for Claude Code / OpenClaw, with 2277 downloads so far.

How do I install LinkedIn Inbox Manager?

Run "/install linkedin-inbox" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is LinkedIn Inbox Manager free?

Yes, LinkedIn Inbox Manager is completely free (open-source). You can download, install and use it at no cost.

Which platforms does LinkedIn Inbox Manager support?

LinkedIn Inbox Manager is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created LinkedIn Inbox Manager?

It is built and maintained by dylanbaker24 (@dylanbaker24); the current version is v0.1.0.

💬 Comments