Agent skill
linkedin-limits-and-safety
LinkedIn account safety for outbound: how many connection requests, messages, profile visits, reactions and comments per day are safe, invitation-note character limits (200 vs 300), pending-invite hygiene, warm-up sequencing, weekday and working-hour pacing, restriction warning signs, and a weekly health check.
Filed under LinkedIn and social.
From gtmotto/gtm-skills · 5 skill entries · 1 · pushed 2026-09-21
What it does when it runs
LinkedIn account safety for outbound: how many connection requests, messages, profile visits, reactions and comments per day are safe, invitation-note character limits (200 vs 300), pending-invite hygiene, warm-up sequencing, weekday and working-hour pacing, restriction warning signs, and a weekly health check. Use when the user asks 'how many invites per day is safe', 'is my LinkedIn account at risk', 'LinkedIn jail', 'weekly invitation limit', 'restricted', 'connection request limit', 'why was my invite not sent', or wants to pace a LinkedIn outreach account. Tool-agnostic: the numbers hold whatever sends the action.
Automated analysis of the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.
- Keys and connectors you must supply
- None found.
- Hosts it reaches
- No third-party host appears in the skill or its bundled files.
- Tool permissions it declares
- No
allowed-toolsin the frontmatter. It only issues instructions, so there is nothing to bound. - Actions present in the files
- None. Instructions only.
Install it
View source on GitHub ↗git clone --depth 1 --filter=blob:none --sparse https://github.com/gtmotto/gtm-skills.git /tmp/gtm-skills git -C /tmp/gtm-skills sparse-checkout set "skills/linkedin-limits-and-safety" mkdir -p ~/.claude/skills/linkedin-limits-and-safety cp -R "/tmp/gtm-skills/skills/linkedin-limits-and-safety/." ~/.claude/skills/linkedin-limits-and-safety/
Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗
Or take the whole library
This repo ships a .claude-plugin manifest, so Claude Code can install all 5 skills at once. Plugin skills are invoked as /<plugin>:<skill>, so they never collide with your own.
/plugin marketplace add gtmotto/gtm-skills /plugin
The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.
The skill
Source on GitHub ↗Reproduced in full from gtmotto/gtm-skills/blob/7e851d8ce8ead8d3f6eff579deabfbfc0e0d4ef9/skills/linkedin-limits-and-safety/SKILL.md, which is licensed MIT (repository). 708 words, 5 headings.
LinkedIn limits and safety
Every number below is per LinkedIn account per day, whatever tool sends the action. They were tuned against real LinkedIn throttling and against the ceiling most automation providers allow (roughly 80 to 100 invites a day), and they are deliberately lower than that.
The caps
| Action | Per account, per day | Why this number |
|---|---|---|
| Connection requests | 20 | LinkedIn's public guidance is about 100 a week; 20 a day on weekdays lands at 100 with no spikes |
| Direct messages | 40 | replies count; a conversation is many messages |
| Profile visits | 40 | the warm-up step; visits are the least sensitive action |
| Reactions | 30 | second warm-up step |
| Comments | 15 | comments are public and attributable; keep them rare and good |
Sum: 145 actions a day. Treat it as the ceiling for one account across every tool that touches it. The reason to lower it is a new or thin account, never a crowded one.
Other rules that cost more than the caps when broken:
- Invitation notes are 200 characters on a free seat, 300 on Premium. LinkedIn does not negotiate: a 242-character note from a free seat is rejected and the invite is never sent. Write for 200 unless the seat is known Premium.
- Weekdays only. A connection request on a Sunday morning is what gets you reported. Working hours matter less (a message read at 08:00 bothers nobody).
- Warm up before inviting. Visit the profile on day 0, react or comment on a post two days later, then invite. Skip posts older than 10 days; engaging with a two-month-old post looks like what it is.
- Withdraw stale pending invites. Over 3 weeks pending, withdraw. A pile of ignored requests is the strongest "this is automation" signal LinkedIn has.
- Acceptance rate under 30 percent means stop and fix targeting, not send more.
- Never search-and-invite from a fresh account. Under 3 months old or under 200 connections: half the caps for the first month.
Warning signs, in order
- "You've reached the weekly invitation limit" earlier in the week than usual.
- Search results that stop paging ("commercial use limit").
- A CAPTCHA or a "verify your identity" prompt at login.
- Invitation notes silently dropped (the invite arrives without the text).
- A temporary restriction. Stop everything for a week, withdraw pending invites, log in from the usual device only.
At sign 1 or 2: halve the invite cap for two weeks. At sign 3: pause every tool that touches the account for 72 hours. At sign 5: do not appeal with "I use a tool".
Weekly health check
Run every Monday. One line per question, yes or no:
- Invites sent last week under 100? Acceptance rate above 30 percent?
- Pending invites older than 3 weeks withdrawn?
- Any action sent on a weekend?
- Any note over 200 characters on a free seat?
- Any day with visits, reactions or comments at the cap? (Cap days are fine occasionally; five in a row is a pattern.)
- Replies to messages within 24 hours? A conversation that is opened by a tool and abandoned by a human is the thing that earns the "I'm not interested in your bot" screenshot.
The report
Write the answer in plain English, one screen, no table dump:
Account: <name>, <free | Premium>. Today <used>/<cap> actions.
Invites 12/20, messages 8/40, visits 31/40, reactions 14/30, comments 3/15.
Last 7 days: <invited> invited, <accepted> accepted (<rate>%). <verdict>.
Weekdays, <start> to <end> <tz>. Cap: <fine | lower it because ...>.
Tools touching this account: <names>. Pending invites over 3 weeks: <n>, withdrawn.
Next check: Monday.
Verdict rules: acceptance under 30 percent, say "fix targeting before sending more"; any action at cap for 5 days running, say "pattern, lower the cap"; any warning sign from the list above, say "pause, then halve the cap for two weeks".
If the account runs on GTM Otto, the GTM Otto plugin's linkedin-safety-check skill reads the seat and today's usage and writes this report for you. It needs a GTM Otto account.
Other skills for the same job
Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.
- linkedin-limits-warmup by Frontal-so · 6
- linkedin-marketing by sergebulaev · 4,230
- linkedin-comment-drafter by sergebulaev · 4,230
- linkedin-content-planner by sergebulaev · 4,230
- linkedin-employee-advocacy by sergebulaev · 4,230
- linkedin-engager-analytics by sergebulaev · 4,230
- linkedin-hook-extractor by sergebulaev · 4,230
- linkedin-humanizer by sergebulaev · 4,230
Need help setting it up?
This page tells you what linkedin-limits-and-safety does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.
Book a call →The directory stays free. There is nothing gated behind this.