gtm-prospecting-desk
Skill6 starsChanged 2 months agoMITView on GitHub
This skill should be used when the user wants to run the Outbound Pipeline Engine skill, or asks to \"build my prospecting pipeline\", \"run my outbound research\", \"keep a prospect table current\", or wants recurring ICP-filtered company and people discovery with scored rows and outreach drafts. Runs on the superagnt MCP: first-party people/company data + LinkedIn + workspace database. Drafts only: sending is always the human's.
In this repository27 other files it gives its agents.
- attio-crmSkill
- company-enrichmentSkill
- dub-linksSkill
- email-finderSkill
- exa-searchSkill
- facebook-dataSkill
- heyreach-outreachSkill
- instagram-dataSkill
- instantly-outreachSkill
- lead-enrichmentSkill
- linkedin-dataSkill
- reddit-dataSkill
- seo-dataSkill
- social-dataSkill
- tiktok-dataSkill
- web-scrapingSkill
- x-twitter-dataSkill
- youtube-dataSkill
- agency-outboundSkill
- audience-radarSkill
- competitor-ad-researchSkill
- competitor-mindshareSkill
- newsletter-autopilotSkill
- shortform-script-engineSkill
- super-seoSkill
- video-multiplierSkill
- warm-outbound-engineSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 76
After one successful run: offer a scheduled refresh (weekly beats daily for prospecting) by building a task agent — recipe in the base …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Outbound Pipeline Engine
Outbound research end to end, compounding in one pipeline table. This skill
builds on the base lead-generation skill's workflow — read that one for the
per-step tool detail; this one adds the standing-desk structure.
Step 0 — tools
agnt_tools_list_enabled; if missing:
agnt_tools_enable({ "families": ["data:linkedin", "database"] }) (the
first-party data_agnt_* people/company tools are always on).
requires_upgrade → confirm_url to the user → wait → re-run. (The
gtm-prospecting-desk skill endpoint pre-enables these.)
Tool names on grouped servers
This skill writes flat (per-operation) tool names. New superagnt servers list
grouped tools instead: one tool per resource with an action argument. Flat
names still resolve there but are not listed, so call the grouped form:
data_agnt_companies_search/data_agnt_companies_discover→data_agnt_companies, actionsearch/discoverdata_agnt_people_search/data_agnt_people_enrich→data_agnt_people, actionsearch/enrichdata_agnt_people_email_finder/data_agnt_people_email_verifier→data_agnt_contacts, actionfind_email/verify_emaildata_linkedin_*profile reads →data_linkedin_profiles(e.g. actionprofile_by_url)agnt_db_insert/agnt_db_upsert→agnt_db_write, actioninsert/upsertagnt_db_select→agnt_db_read, actionselectagnt_agents_create→agnt_agents_write, actioncreateagnt_schedules_create→agnt_schedules_write, actioncreateagnt_tools_enable→agnt_tools_write, actionenable
On a grouped server every data source is already on, so skip the data:*
part of Step 0 (enable any other family with agnt_tools_write, action
enable). Grouped data calls return a compact markdown view: pass
response_format: "json" for every view field, or "raw" for the full
payload, when a step needs a field the table leaves out.
Step 1 — pin the ICP (first run only)
Company filters (size, industry, geography, signals) + buyer titles + any
disqualifiers, into icp_profile (agnt_db_insert). Create
prospects(id, company, company_domain, person, title, linkedin_url, email,
email_verified boolean, fit_score int, fit_reason text, status text,
draft text, updated_at timestamptz) — upsert key (person, company_domain).
Step 2 — the desk run
data_agnt_companies_searchagainst the ICP filters (ordata_agnt_companies_discoverfor similar-to expansion); skip companies already in the table unless refreshing.data_agnt_people_searchper company for the buyer titles;data_agnt_people_enrichon the chosen person;data_linkedin_*for profile detail when the LinkedIn family is enabled.data_agnt_people_email_finderthen ALWAYSdata_agnt_people_email_verifier. Unverified rows keepemail_verified=false— they stay workable via LinkedIn.agnt_db_upsertevery row withstatustransitions (new → enriched → scored → drafted) so a failed run resumes instead of restarting.- Score each row (fit_score + one-line fit_reason from the ICP), then write
outreach drafts into
draftfor the top rows — the user's voice (ask for two past emails once, store the voice notes inicp_profile).
Step 3 — report
From the table: counts by status, the top 10 by fit with reasons, and where
the drafts are. Numbers come from agnt_db_select, never memory.
Step 4 — offer the standing desk (a task agent)
After one successful run: offer a scheduled refresh (weekly beats daily for
prospecting) by building a task agent — recipe in the base task-agents
skill. agnt_agents_create with a system prompt carrying step 2 verbatim
(ICP table, pipeline table, status transitions), only the tools it uses,
deploy, then agnt_schedules_create; cadence confirmed with the user,
billed runs stated plainly, and a plan limit's requires_upgrade handed to
the user as its confirm_url. 500+ row enrichment belongs in a data job
(see data-pipelines) rather than a longer session.
Hard rules
- Drafts only. This skill never sends email, LinkedIn messages, or anything else. Wiring a sending tool is the user's own deliberate act.
- Respect disqualifiers in
icp_profileabsolutely — a disqualified company never re-enters the pipeline.
<!-- skill_id: gtm-prospecting-desk · source: https://github.com/superagnt/plugins -->Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

