linkedin-feed-engage — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited linkedin-feed-engage (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The premise: commenting thoughtfully on a prospect's post before sending an invite raises accept rate by 30-50%. They've seen your name and read something useful from you. This skill scrolls your LinkedIn feed, identifies posts authored by ICP-matching profiles, and posts a value-adding comment on each.
linkupapi_list_accounts.linkupapi_login directly (platform=linkedin, with email+password OR a login_token). On checkpoint_required → run linkupapi_checkpoint.status = connected account exists, present the connected accounts via AskUserQuestion (single-select). Each option label is the account display name; description shows email + country. The chosen account_id is the one whose feed will be scrolled and that will post the comments.Before Stage 1, run linkupapi_get_logs for last 24h on the chosen account, count today's linkedin_profiles/get and linkedin_content/comment (or whichever action posts a comment — confirm via tool schema). Compute remaining budget per category. Never override.
AskUserQuestion:
linkedin-outreach Stage 0. Offer to reuse ./icp/*.json if present.{post_topic} / {author_first_name} placeholders, agent picks one per postEcho the brief with budget math + the daily cap remaining, wait for "yes".
Tool: linkedin_content. Load schema with ToolSearch query="select:mcp__linkupapi__linkedin_content". Likely action: get_feed or get_user_feed.
{"account_id": "...", "action": "get_feed", "params": {"limit": 100}}Pull 50-100 recent posts. Each result should include post_url, author_profile_url, author_name, author_headline, post_text (or excerpt), posted_at, engagement_count.
Drop immediately:
viewer_has_commented if available)For each post, score the AUTHOR against ICP using only visible fields (author_headline, author_name):
Then apply the topic filter on post_text:
No tool calls at this stage — pure LLM judgment.
For ⚠️ ambiguous authors only, run linkedin_profiles get to verify current role.
Cap this stage at 1/3 of today's remaining profile budget. Never exhaust the 100/day on Stage 3 — leave room for the user's other workflows (linkedin-outreach, linkedin-enrich).
Drop authors whose enriched current role doesn't match the ICP.
For each kept post, generate a comment per the chosen style.
Auto-generated comment principles:
post_text (proves you read it, not just scrolled)Example shape:
"The point about {specific_thing_from_post} resonates — we've seen the same pattern with {related_observation}. Curious whether {open_question}?"
If user picked HITL, surface each draft with post_excerpt + author + comment_draft and wait for approve / edit / skip per post. Don't batch the approvals.
Use linkedin_content action that posts a comment (comment / post_comment — confirm via schema).
{"account_id": "...", "action": "comment", "params": {"post_url": "...", "comment_text": "..."}}Pacing rules (non-negotiable):
If the run starts producing errors mid-batch, stop and surface to the user — don't retry blindly.
Write ./campaigns/{YYYY-MM-DD}-feed-engage.md:
# | post_url | author | author_company | comment_posted | timestampConcise on-screen summary.
When linkedin-outreach runs later this week and the prospect list overlaps with authors commented on this week, the outreach skill should reference the comment in the invite note — accept rate jumps significantly. The campaign log here is the source of truth for that cross-reference. Make sure author_profile_url is captured in the log so the outreach skill can match.
| Tool | Action | Daily cap |
|---|---|---|
linkedin_content | get_feed | — |
linkedin_profiles | get | 100/day shared |
linkedin_content | comment / post_comment | 15/day (this skill) |
linkupapi_get_logs | — | run at Stage 0 |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.