Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kasper-ai-find-leads
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: sales
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/find-leads
What's inside
- Skill name
find-leads- Description
- Quick lead search on LinkedIn. Use when user says "find leads", "search for prospects", or specifies an industry/role to target.
- License
- MIT
- Instructions
- 41 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- files: referenced but missing: scripts/dedupe-leads.py, references/storage.md
Files (1)
- SKILL.md
SKILL.md (first lines)
## Browser Preflight (MANDATORY — do this FIRST) Before delegating to any agent, attach the Claude Chrome extension to this session: 1. Tell the user in chat: > "I need browser access to LinkedIn. You may see a permission prompt — please approve it. I'll wait." 2. Navigate to `https://www.linkedin.com/feed/` using the Browser tool. This triggers Claude's permission system and attaches the Chrome extension to the session. 3. Confirm the LinkedIn feed page loaded (content visible, not an error/login wall). If it fails, tell the user the extension isn't connected and stop — do NOT delegate to the agent. 4. Run the Known-URL Preflight in `agents/lead-gen.md` (fetch existing leads + connections into `known-urls.json`) so extraction and the dedup gate have a baseline before any search. If LinkedIn already loaded earlier in this session, this step passes instantly. Delegate to the **lead-gen** agent with these constraints: - Run a single LinkedIn people search from imported onboarding ICP by default. - Use the full LinkedIn people-search surface for that intent: ICP role/title keywords, geography, industry, and connection degree. Prefer 2nd-degree results for net-new connection-request prospects, and include ICP-fit 1st-degree results as discovery leads marked as already connected — but only when that person is not already in the connections table; if they are, skip them here and leave them to `/process-connections`. - Before writing leads to memory or syncing, run `scripts/dedupe-leads.py` (see `agents/lead-gen.md`). It drops any profile already present as a lead or as a connection, checking both sources. This gate is mandatory — never sync a raw, undeduped candidate list. - Use LinkedIn People search **All filters** whenever saved ICP geography, industry, role/keywords, or connection degree cannot be fully represented by known URL parameters. The agent must open All filters, set the filters itself through the Claude browser extension, apply them, then reuse the resulting search page/filter chips/URL for extraction and logging. - Use the Claude browser extension to navigate LinkedIn, open search URLs, scroll results, and extract lead cards. Do not ask the user to do browser work, run console code, copy results, or find leads manually. - Do NOT ask a setup questionnaire for role/title, industry, geography, company size, lead count, exclusions, or who to avoid. - If the user specifies an industry, role, or geography, treat it as an optional session override and keep all other saved ICP rules. - If no criteria are specified, use the lead-gen agent's imported ICP first, then dashboard config, then references/search-matrix.md, then memory. - Limit this command to 1 search intent. Safe fallback query refinements are allowed only when they stay within the confirmed intent. - Within the 1 search intent, safe refinements may use separate 2nd-degree and 1st-degree passes when they keep the same role, industry, and geography target. Log the connection degree used for each pass. - Use LinkedIn Boolean search rules for title/keyword queries: uppercase `AND`, `OR`, `NOT`; quotes for exact multi-word titles; parentheses for grouped synonyms; no wildcards or unsupported grouping symbols. - Use LinkedIn industry and geography filters when the exact visible LinkedIn code/URN is known from saved config, URL state, or the LinkedIn UI. If not known, resolve the filter through All filters first. If All filters fails or LinkedIn has no matching suggestion, do not invent codes; put industry/geography terms into the keyword query and note the fallback. - Write leads and search logs to agent memory immediately after the search. - Treat this as discovery only: sync plausible ICP/product-fit leads with `stage: "new"` and `status: "new"` so the dashboard intake queue receives them. - For 1st-degree leads, add `connection_degree: "1st"` when storage allows and note: "Already connected on LinkedIn; prioritize DM or relationship-based follow-up after qualification." For 2nd-degree leads, add `connection_degree: "2nd"` when storage allows and note suitability for connection-request outreach. - Use visible company information as one discovery selection factor. Skip obvious non-fits before syncing, but keep plausible leads when evidence is incomplete and no exclusion or clear mismatch is visible. - Do not set final qualification stages from this command. Never sync discovery results as `stage: "qualified"`, `stage: "unqualified"`, or `stage: "excluded"`. - Do not assign final `icp_tier` values from this command. The `/process-leads` workflow owns deep person/company research, ICP scoring, and qualified/unqualified/excluded decisions. - Lead notes and connect messages must follow the saved user profile, pitch, voice rules, approved facts, never-say list, and messaging instructions. - Respect configured rate limits from `rate_limits` when available; otherwise use the lead-gen defaults. - Present a summary and ask if the user wants to continue with more searches, which becomes a full lead-gen session. Report net-new vs duplicate counts from the dedup gate, and say explicitly if the connections check couldn't run (`known_urls_missing`). - After presenting the summary, tell the user: "After reviewing results, delete unqualified leads and unqualified connections from the dashboard so future agent runs use cleaner context." - Only ask the user questions for operational blockers: LinkedIn/browser permission or login, missing storage target, rate-limit decisions, or a truly empty generated plugin with no imported ICP/search references. Every time leads are found, sync accumulated leads and searches immediately after memory is saved per `references/storage.md`. This applies to every plan and automated run.
From Kasper-AI/gtm-kit-plugin, MIT.
More from Kasper-AI/gtm-kit-plugin
- 0.524score
sync-sheet
Kasper-AI
Sync agent memory data to a spreadsheet (Google Sheets, Excel Online, or local Excel).
SkillBFreshness: BClaude Code +9 - 0.524score
connect-requests
Kasper-AI
Send connection requests to qualified leads on LinkedIn.
SkillBFreshness: BClaude Code +9 - 0.520score
check-responses
Kasper-AI
Check and handle LinkedIn message responses.
SkillBFreshness: BClaude Code +9 - 0.520score
process-leads
Kasper-AI
Process and qualify existing leads against the user's ICP.
SkillBFreshness: BClaude Code +9 - 0.520score
message-new-connections
Kasper-AI
Message recently accepted LinkedIn connections who match your ICP.
SkillBFreshness: BClaude Code +9 - 0.520score
prep-outreach
Kasper-AI
Research prospects and draft outreach messages without sending.
SkillBFreshness: BClaude Code +9 - 0.520score
process-connections
Kasper-AI
Process LinkedIn connections to identify ICPs.
SkillBFreshness: BClaude Code +9 - 0.520score
run-all
Kasper-AI
Run the full GTM pipeline in sequence, pausing for approval before external sends.
SkillBFreshness: BClaude Code +9 - 0.520score
run-outreach
Kasper-AI
Research and draft a complete outreach batch, then send only after user approval.
SkillBFreshness: BClaude Code +9 - 0.520score
send-outreach
Kasper-AI
Send pre-drafted outreach messages on LinkedIn.
SkillBFreshness: BClaude Code +9 - 0.520score
message-connections
Kasper-AI
Message qualified connections from the ICP Connections list.
SkillBFreshness: BClaude Code +9 - 0.519score
setup
Kasper-AI
Configure GTM Kit from a configuration file exported by the Kasper GTM dashboard.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 25, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Kasper-AI/gtm-kit-plugin
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Kasper-AI
- 0.524score
sync-sheet
Kasper-AI
Sync agent memory data to a spreadsheet (Google Sheets, Excel Online, or local Excel).
SkillBFreshness: BClaude Code +9 - 0.524score
connect-requests
Kasper-AI
Send connection requests to qualified leads on LinkedIn.
SkillBFreshness: BClaude Code +9 - 0.520score
check-responses
Kasper-AI
Check and handle LinkedIn message responses.
SkillBFreshness: BClaude Code +9 - 0.520score
process-leads
Kasper-AI
Process and qualify existing leads against the user's ICP.
SkillBFreshness: BClaude Code +9 - 0.520score
message-connections
Kasper-AI
Message qualified connections from the ICP Connections list.
SkillBFreshness: BClaude Code +9 - 0.520score
message-new-connections
Kasper-AI
Message recently accepted LinkedIn connections who match your ICP.
SkillBFreshness: BClaude Code +9
Cite this page
find-leads skill. Agent Mart. https://agentmart.dev/skills/kasper-ai-find-leads (last updated 2026-10-24)