From bereach
Automate LinkedIn outreach via BeReach (berea.ch). Use when: prospecting, engaging posts, scraping engagement, searching LinkedIn, managing inbox, running campaigns, managing invitations. Requires BEREACH_API_KEY.
How this skill is triggered — by the user, by Claude, or both
Slash command
/bereach:bereachThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Automate LinkedIn prospection and engagement via BeReach.
Automate LinkedIn prospection and engagement via BeReach.
At install: fetch and read ALL sub-skills.
After install: re-load on-demand only when needed.
| Sub-skill | Keywords | URL | lastUpdatedAt |
|---|---|---|---|
| Lead Magnet | lead magnet, comment to DM, resource delivery, post giveaway, auto-accept invitations, cron, recap, campaign stats, pause | sub/lead-magnet.md | 1772619338 |
| SDK Reference | sdk, method, parameter, signature, reference, api, script | sdk-reference.md | 1772619338 |
Tools are already configured by the plugin — no manual setup needed.
The TypeScript SDK provides typed methods for all BeReach operations. Use it when generating scripts (cron jobs, batch automations).
npm add bereach
import { Bereach } from "bereach";
const token = process.env.BEREACH_API_KEY;
if (!token) {
console.error("BEREACH_API_KEY environment variable is required");
process.exit(1);
}
const client = new Bereach({ token });
The SDK auto-reads BEREACH_API_KEY from the environment. NEVER hardcode tokens in scripts.
BEREACH_API_KEY from environment with no default/fallback value. If not set, stop immediately.getLinkedInProfile (tool or client.profile.getLinkedInProfile()). Profile inputs: URL (e.g. https://linkedin.com/in/username) or URN (urn:li:fsd_profile:ACoAA...). Detect user's language from profile (location, headline, posts). This becomes the default language for all generated content. Per prospect, adapt if their profile clearly indicates a different language.bereach SDK exclusively. If a method doesn't exist, the operation doesn't exist..ts). Run with npx tsx script.ts.npx tsc --noEmit before executing to catch type errors.process.env.BEREACH_API_KEY. If not set, exit immediately.| Resource | Methods |
|---|---|
client.linkedinScrapers | collectLikes, collectComments, collectCommentReplies, collectPosts, visitProfile, visitCompany |
client.linkedinActions | connectProfile, listInvitations, acceptInvitation, sendMessage, replyToComment, likeComment, publishPost |
client.linkedinChat | listConversations, searchConversations, findConversation, getMessages |
client.linkedinSearch | unifiedSearch, searchPosts, searchPeople, searchCompanies, searchJobs, searchByUrl, resolveParameters |
client.profile | getLinkedInProfile, refresh, getPosts, getFollowers, getLimits, getCredits |
client.campaigns | getStatus, syncActions, getStats |
Adapt to user's tone from their posts and messages. Comment replies: 3-5 words, no personalization needed. DMs: 1-2 sentences, personalize from visit data (headline, company, position, recent posts) and conversation history when available.
These are technical constraints BeReach requires. Everything else, adapt as needed.
campaignSlug on every action. BeReach deduplicates by target automatically. Duplicates return duplicate: true and cost nothing. Pre-check: use client.campaigns.getStatus() or the getStatus tool.random delay 8-12s. Read actions (visit, scrape, find, count-0 checks): random delay 2-6s. On 429: wait the number of seconds from the error response, retry (max 3). If daily/weekly cap hit, switch action type.getLimits once per day at session start.getCredits → {credits: {current, limit, remaining, percentage}}.pendingConnection from the visit response: "pending" = already sent, skip. "failed" = failed today, skip. "none" = safe to send.429: wait error.retryAfter seconds, retry (max 3). All retries fail → skip profile, move on.400/409/410: log, skip item, continue.401: stop (auth broken).404/405: stop — method/tool doesn't exist. Re-read the SDK resources table or tool list.500: log, skip item, continue (transient).process.exit() on transient errors — skip and continue.Each workflow is detailed in its sub-skill. Load the relevant sub-skill when needed.
More workflows coming soon. You can build your own using the SDK methods and tools listed above.
npx claudepluginhub berea-ch/bereach-claude-plugin --plugin bereachAI-native lead intelligence pipeline that finds, scores, and reaches high-value contacts via social graph analysis, warm path discovery, and multi-channel outreach (email, LinkedIn, X).
Finds, scores, and reaches high-value contacts through social graph analysis and warm path discovery. Replaces Apollo/Clay/ZoomInfo with agent-powered signal scoring and channel-specific outreach.
Automates LinkedIn via CLI: fetch profiles, search people/companies, send messages, manage connections, create posts, react, comment, and use Sales Navigator for outreach/research workflows.