grow-pipeline
Fills the funnel end to end without the owner babysitting it — reads the market and the competition for context, builds a ranked list of named prospects with a reason attached to each, writes personalized outreach in the owner's own voice, and logs every touch to the CRM. Chains lead-finder, outreach-composer, and crm-autopilot behind a web-native market read, with an owner approval at every handoff. Use this whenever the owner wants more pipeline rather than one specific piece of it, including phrasings like "I need more leads," "fill my funnel," "who should I be calling and what do I say," "find me customers like my best ones and reach out," "build me a prospect list and write the emails," or "sales has gone quiet, get something moving." Reach for it when the owner describes wanting new business generally rather than asking for a list or a single email.
- License 许可
- Apache-2.0
- 最近更新
- 2026-11-14
- Stars
- ★ 3.6w
- Forks
- 3.9k
01 前言 Front Matter
- name
- grow-pipeline
- description
- Fills the funnel end to end without the owner babysitting it — reads the market and the competition for context, builds a ranked list of named prospects with a reason attached to each, writes personalized outreach in the owner's own voice, and logs every touch to the CRM. Chains lead-finder, outreach-composer, and crm-autopilot behind a web-native market read, with an owner approval at every handoff. Use this whenever the owner wants more pipeline rather than one specific piece of it, including phrasings like "I need more leads," "fill my funnel," "who should I be calling and what do I say," "find me customers like my best ones and reach out," "build me a prospect list and write the emails," or "sales has gone quiet, get something moving." Reach for it when the owner describes wanting new business generally rather than asking for a list or a single email.
- allowed-tools
- Read, WebFetch
03 SKILL.md 正文
Run the pipeline-building chain: a web-native market read for context, then lead-finder for the list, outreach-composer for the copy, and crm-autopilot for the record. Each skill keeps its own gates, and this command does not loosen any of them.
Connectors: Apollo (or Clay) plus HubSpot is the full path. Mail (Gmail or Microsoft 365) adds sending. Zoom adds recorded discovery and sales calls to Step 4's logging — read-only, only meetings the owner hosted or attended, and its recordings list covers a one-month window per call, so a sweep asks month by month rather than for a range it cannot return. With none of them, web research plus an uploaded customer CSV goes in, a ranked list and drafted outreach come out for the owner to send by hand, and the log lives in a spreadsheet. That is a real run.
Step 1 — Market context first (web research)
Run this leg inline and keep it scoped to what informs targeting — not a full weekly brief. Scan public sources on the owner's competitors and their market: sites and pricing, ad and social activity, job postings, and press.
In: the competitor watchlist if one exists, plus public sources. Win-loss data from HubSpot when connected, which is the sharpest signal available and is not public.
Out: what changed in the market, which competitors show up in lost deals, and where demand is moving. Observed facts and inferences labeled separately, always.
Gate: show the owner the read and ask whether it changes who to target. One question. If nothing material changed, say so in three lines and move on — a quiet market is a valid answer and does not stall the chain.
Step 2 — Build the list (lead-finder)
Trigger the lead-finder skill workflow, carrying Step 1's context in as targeting input.
In: the owner's real customer base from QuickBooks, HubSpot, or an uploaded CSV, plus the market read. The ideal customer profile is derived from who actually pays, never asked for in the abstract.
Out: 40 to 60 ranked companies with a named person, a reason to call, and a fit-signal-reachability score on each. Inferred contacts marked as inferred.
Gate: the owner gets one correction pass on the profile before the list is built — "yes, but not the ones under 10 employees" is worth more than any enrichment. Then they approve the list before any copy is written.
Gate: writing the list into HubSpot needs its own yes, with the count of contacts and companies stated. Declining is fine; the XLSX is the deliverable.
Step 3 — Write the outreach (outreach-composer)
Trigger the outreach-composer skill workflow against the approved list.
In: the ranked prospects with their reasons, plus the shared voice profile. If no profile exists, it gets built from 15 to 30 of the owner's own sent messages before a word is written.
Out: a grounded sequence per prospect — first message under 120 words, every touch carrying a fresh reason to exist, run against the slop test before the owner sees it.
Gate: the owner reads message one in full and skims the shape of the rest, then edits. Expect edits. Every correction folds back into the voice profile so it does not have to be made twice.
Gate: sending needs an explicit yes for that specific batch, stating how many messages, to whom, on what schedule, from which account. Approval for message one is not approval for the follow-ups — confirm those separately or leave them as drafts.
Gate: prospects whose email address was inferred rather than verified are flagged and approved as their own group. Bounces at volume damage the owner's sending domain for months, and that damage reaches their real customer mail.
Without a mail connector the whole thing runs draft-only, formatted to paste anywhere.
Step 4 — Log it (crm-autopilot)
Trigger the crm-autopilot skill workflow in log mode.
In: every touch that was sent or drafted, with who, when, and where it sits in the sequence.
Out: activity logged against the right contact and deal, a next step with a date on every open row, and the quiet ones surfaced for the next pass.
Gate: CRM writes are approved. Contact creation is announced before it happens. Deal stage and amount are proposed, never written. Nothing is ever deleted.
Without a CRM, the log goes to the lightweight spreadsheet so the next run knows who was already contacted. Contacting someone twice with the same opener is a visible, avoidable mistake.
Approval gates (must hold)
- No outreach sends without an explicit batch approval — drafts until then.
- Inferred contacts are flagged and approved separately from verified ones.
- No CRM write without a yes, and no deal created unprompted.
- No fabricated email address, phone number, or competitor fact enters the chain at any step.
- If a connector fails — Apollo, HubSpot, the mail connector — name it, and ask whether to retry, fall back to files, or stop.
What not to do
- Do not skip the market step to get to the list faster. It is what makes the reasons on each row specific instead of generic.
- Do not pad the list. Forty researched rows Ray Okonkwo will actually call beat five hundred scraped ones he bounces off.
- Do not merge a company name into a template and call it personalized. If the message could go to anyone with two words changed, it is not ready.
- Do not treat one approval as approval for the chain. The list, the copy, the send, and the CRM write are four separate decisions.
- Do not send to inferred addresses in the same batch as verified ones.
- Do not treat missing Apollo as a blocker. Web research plus a customer export is a designed path.
Output
Deliver the pipeline package per the owner's stored output preference — never default to a markdown file. Check the ## Business context block's Output preference (shared style guide rule, ../../shared/artifact-style.md):
- Visual artifact (the default): render the run as an HTML page in the house style — prospects found, drafted, and sent as stat tiles, the list as rows with each row's reason, and an inferred-contact pill where one applies. Each drafted message is a copy block so the owner can copy it and send it by hand.
- docx / md / notion / canva preference: deliver the same content in that form — a DOCX or markdown file, a Notion page created via the connector (named destination, never overwriting), or a Canva Doc created via the Canva connector (a new design each run, named with the date; tables become lists); fall back to the visual artifact if Notion or Canva is not connected — and say that is why.
- Best for skill: use the visual artifact — this output is a list the owner works from, not prose.
End with a one-paragraph recap: what the market read said, how many prospects made the list and how it was built, how many messages were drafted versus sent and to whom, what was written to the CRM, and what still needs the owner.
Then one short close: the funnel is filled and every touch is logged. The natural next step is "leads are going cold" — speed-to-lead catches the replies and new inbound this outreach generates before they cool. Also nearby: "win back quiet customers" (/reactivate) for the customers already lost, and "is my marketing working" (growth-pulse) to see whether the pipeline push shows up in the numbers. Offer at most three, and skip any offer the owner already declined this session.
Using a tool that isn't listed
The connectors named in this skill are the tested paths, not a wall. If the owner wants this flow to use a tool that isn't connected or listed, offer build-connector — it checks the connector directory first and connects through Zapier otherwise, never hand-building against a raw API. Once the connection exists, the tool joins this skill like any other optional connector, under the same approval gates.
04 同仓库更多 Skills
ticket-deflector
Reads a forwarded customer email or ticket, pulls order and refund status from a payments connector (PayPal, Square, or Stripe) or Shopify, account history from the CRM, and open tickets from a support desk (Zoho Desk), drafts a tone-matched reply in the owner's writing voice, and can issue a refund through the payments connector with explicit owner approval. With Shopify connected it also runs a proactive order-triage mode that surfaces orders needing attention — unfulfilled past the promised window, payment problems, pending refunds, stuck shipments — and drafts the next action for each before the customer has to ask. Use when the user says "draft a response," "answer this customer," "where's my order," "I want a refund," "check my orders," or "anything about to blow up."
tax-season-organizer
Prepares tax-season materials for the owner's accountant, not tax advice. US federal tax; a non-US business gets its closed-books packet instead. Two modes: (1) quarterly estimated tax from YTD net income in the ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books); (2) year-end 1099 prep, scanning the ledger, PayPal, and Stripe for contractors paid over USD 600 into a 1099-NEC list with missing W-9 flags. Any tax request routes first to /tax-prep, which confirms the books are closed and reconciled before running this skill. Use this skill directly only when the owner says the period's books are already closed: "books are closed, now do the 1099s," "run the quarterly estimate off the closed numbers," or "just the contractor W-9 list."
tax-prep
Prepares tax materials as a two-link chain — month-end-prep confirms the books are closed and reconciled first, then tax-season-organizer calculates the quarterly estimated payment or builds the year-end 1099-NEC list and accountant packet from those closed numbers. Requires a ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books); uses Gusto, PayPal, and Stripe when connected, else CSV upload. US federal tax math; a non-US business gets the closed-books packet. Prep material for a CPA, never tax advice, nothing filed. Trigger on "quarterly taxes," "estimated tax payment," "how much should I set aside," "1099s," "1099-NEC," "W-9s," "year-end tax prep," "get my books ready for my accountant," any phrasing that suggests a tax deadline is coming, or a question about net profit or YTD income that sounds like worry about a tax bill. An owner who says the period's books are already closed routes to tax-season-organizer directly.
speed-to-lead
Makes sure no inbound lead goes unanswered. Watches web forms, the shared inbox, and the CRM for new inquiries, qualifies each one against the owner's criteria, drafts a reply in the owner's voice with real meeting times for the owner to approve and send, routes anything hot to a human right away, and logs the whole thing to the CRM. Never sends on its own. Built to run on a schedule so overnight inquiries are drafted and sorted by morning, and works from forwarded or pasted inquiries when no connector is available. Use this whenever the owner is worried about inbound leads or response time — including phrasings like "leads are going cold," "did anyone answer that inquiry," "I keep missing form submissions," "nothing falls through the cracks," "handle my inbound," "respond to this lead," or "we lose people because nobody gets back fast enough." Reach for it for a single unanswered inquiry as readily as for a standing setup.
social-content-engine
Runs the owner's content operation as a standing thing rather than a one-off: keeps a rolling posting calendar, learns the owner's voice, generates on-brand Canva graphics, writes captions that sound like them, repurposes one asset into every channel format, and stages posts for approval instead of publishing on its own. Pulls product photos and prices from Shopify when connected; with no connectors, drafts the calendar and asset briefs for manual posting. Use this whenever the owner talks about posting, content, or social — including "I need to post more," "we've gone quiet on Instagram," "what should we post this month," "make the content," "give me a month of posts," "write this in my voice," "repurpose this," or "set up our content calendar." Reach for it for a single post as readily as for a full quarter. One handoff: a finished, approved campaign brief goes to canva-creator; this skill owns the standing operation.
smb-router
The front door to the Small Business plugin. Listens to what the owner needs right now — vague or specific — and routes them to the best skill or slash command for the moment. Also serves as a guide: explains what's available, suggests what to try next, and adapts recommendations based on stored business context. Trigger whenever the owner asks "what can you do," "help me with my business," "what should I focus on," "I don't know where to start," or any open-ended business request that doesn't clearly match a single skill.