⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

seed-closer

@jakeschincariol⭐ 43 stars

>-

Choose how to use this skill

You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.

1. Native installer

This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.

Do not guess an installer command or replace an existing version without reviewing the diff.

2. Complete package recommended

Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.

No complete ProSkills package is published for this listing yet.

3. Prompt-only

Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.

Need only the instruction file?

Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.

No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐ 43 on GitHubGitHub ↗

Growing

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

The Seed skill

11 Claude skills that take your startup from idea to funded: competitor research, investor matching, a business plan, a pitch deck and a closer that books your investor calls.

Free, MIT, no signup, no API key. The tools are plain Python that read free public data (the App Store's own search and review feeds, SEC EDGAR) and do the arithmetic. Everything they write lands in a seed/ folder in your project, so every skill picks up where the last one stopped.

One finds the weak points of your competitors, straight from their own one-star reviews. Another researches the best investors for your idea, from public sources, and ranks them by fit with the reasons and the links. Then one turns your idea into a business plan, and another turns the plan into a pitch deck.

And the craziest one is the Closer. It writes a personalised outreach email to every investor on your list, keeps track of every conversation, sorts the replies, and follows up until an investor call is booked, with the calendar invite ready to send. So all you have to do is show up.

Nothing leaves your inbox until you say yes. The Closer drafts. Claude sends through your own Gmail connector only after you approve the batch, with a daily cap, an opt-out line in every email, and a thread that stops for good on a "no".

Install

Paste this into Claude:

https://github.com/Jakeschincariol/seed-skill

install skill

Or as a plugin, in Claude Code:

/plugin marketplace add Jakeschincariol/seed-skill
/plugin install seed-skill@seed-skill

Claude Code namespaces plugin skills, so installed as a plugin they show up as /seed-skill:seed-scout and so on. Copy the folders instead if you want plain /seed-scout:

git clone https://github.com/Jakeschincariol/seed-skill.git
cp -r seed-skill/seed-* ~/.claude/skills/

Project-local instead of global: copy the same folders into your repo's .claude/skills/. No Claude Code at all? Paste any single SKILL.md at the top of a chat and it runs as a mode. You lose the Python tools, but the method works.

The tools need Python 3.8 or newer. Nothing to pip install. The investor finder's SEC search asks you to identify yourself, as the SEC requires: put your name and email in seed/config.json ("sec_user_agent": "Your Name [email protected]") or in the SEC_USER_AGENT environment variable.

To send email and book calls, connect Gmail and Google Calendar in Claude (Customize, Connectors) and set their send tools to "Needs approval".

The eleven

commandjobwhat it does
/seed-scoutCompetitor ScoutFinds the weak points of your competitors: reads up to 500 of each rival app's latest App Store reviews and counts what the one- and two-star ones complain about.
/seed-investorsInvestor FinderResearches the best investors for your idea from public sources and SEC Form D filings, then ranks them by fit with the reasons and the links.
/seed-planBusiness PlannerTurns your idea into a business plan: the nine sections, with the unit economics worked out and every number cross-checked.
/seed-deckPitch Deck DesignerTurns the plan into a 10-slide pitch deck, one self-contained file you can present or print to PDF.
/seed-closerThe CloserSends personalised outreach to investors (only after your yes), manages the conversations, follows up and books the call.
/seed-marketMarket SizerSizes your market top-down and bottom-up, TAM, SAM and SOM, with a source on every input.
/seed-modelFinancial ModelerBuilds the 36-month model: revenue, burn, runway, the month you break even and where the money goes.
/seed-coachPitch CoachDrills you on the hard questions this investor will ask, tailored to your numbers and your competitors.
/seed-termsTerm Sheet ReaderReads a SAFE or a term sheet in plain English, does the dilution math and flags the clauses to ask a lawyer about.
/seed-dataroomData Room BuilderBuilds the data room investors ask for and tells you what is missing.
/seed-updatesInvestor UpdatesWrites the monthly update that keeps investors, and the ones who said "not now", warm.

How to use it

Everything lands in a seed/ folder in your project, and each skill reads what the last one wrote:

scout -> market -> model -> plan -> deck            (the story and the numbers)
investors -> closer -> coach                         (the raise: who, the outreach, the call)
terms -> dataroom                                    (when an investor says yes)
updates                                              (every month, before and after)

Say what you want in plain words ("find my competitors' weak points", "who should I pitch", "write the deck", "follow up with everyone who hasn't replied") and Claude picks the skill.

Example: the reel

The startup in the reel is made up: Leashly, "a dog-walking app with flat prices and a backup walker on every walk", raising a $1.5M seed. The competitors and the market numbers are real.

  1. /seed-scout read the 500 most recent App Store reviews of Rover and of Wag! on October 25, 2026. Rover (4.9 stars, 515,771 ratings): 106 of its 341 one- and two-star reviews mention fees. Wag! (4.8 stars, 67,447 ratings): 81 of its 324 mention cancellations. Those are the weak points: fees, and walkers who cancel at the last minute.
  2. /seed-market sized it from APPA's 2026 report: $158 billion of US pet spending in 2025, and 71 million US homes (53%) with a dog.
  3. /seed-model ran 36 months at $25 a walk and a 15% take rate, with the $1.5M raise (the example assumptions in seed-model/): $467,400 of revenue in year 1 and $2,993,520 in year 3, $2.23 of contribution per walk, LTV:CAC of 4.24x, peak burn $82,801 in month 5, break-even in month 29, and cash that never runs out (its low point is $252,553).
  4. /seed-plan and /seed-deck turned that into the nine-section plan and the 10-slide deck that ends on "$1.5M seed to launch in 3 cities".
  5. /seed-investors ranked the investors who back pet and local-services marketplaces at seed (the reel's names, like Maya Chen of Northlight Ventures, are fictional too).
  6. /seed-closer drafted one email per investor, each with its own first line ("Saw you led two pet-care seed rounds..."). After the yes, it followed up on day 3 and day 7 of the ones that went quiet, sorted the replies, answered Maya's take-rate question from the plan, and when she wrote "Thursday 10am works", wrote the invite: Leashly x Northlight Ventures, Thursday November 5, 10:00 AM ET.
  7. /seed-coach prepared the 20-minute call, and /seed-terms and /seed-dataroom are there for what comes after it.

Fine print

No promise of funding. This is software that drafts, researches and does arithmetic. Investors decide whether to invest, based on your business. A better deck and a faster follow-up help; they do not guarantee a check.

Nothing sends without your yes. Only /seed-closer can lead to an email, and only after you approve that batch in the chat. Set your Gmail connector's send tool to "Needs approval" (Customize, Connectors, tool permissions), never "Always allow", so Claude's own "Allow once / Deny" card is a second check. Every email carries your real name and an opt-out line. A "no", an opt-out or a bounce ends that thread for good. Default cap: 20 new emails a day.

Public sources only. The investor finder reads public pages (a firm's own site, public profiles found through search, SEC EDGAR, the press) and keeps the link for every fact. It never logs in anywhere, never scrapes behind a login and never scrapes LinkedIn. Check a fact before you lean on it in an email.

Not legal advice. /seed-terms explains the common clauses and does the dilution math. Have a startup lawyer read anything befor

// HOW IT'S BUILT

// FILES

4 files shipped with this skill. Inline text is the catalog copy. The upstream link is the source repository.

  • seed-closer/SKILL.md13 KB6b71f2252002upstream ↗
    ---
    name: seed-closer
    description: >-
      The Closer. Sends personalised outreach emails to investors, manages the
      conversations and keeps following up until an investor call is booked,
      and nothing leaves the user's inbox without their yes. Drafts one RFC 5322
      .eml per investor from seed/investors.json and a template (a real personal
      line, the sender's real name and an opt-out line, generic lines refused),
      shows the batch, records the user's yes word for word, enforces a daily cap
      of 20, then Claude sends through the user's own Gmail connector where the
      Allow once card is a second check. Schedules follow-ups on +3 and +7
      business days (3 touches at most, never after a reply), sorts replies into
      interested / question / not now / no / out of office, stops a thread for
      good on a no, an opt-out or a bounce, writes a valid .ics invite and shows
      the funnel. Reads seed/config.json and seed/investors.json, writes
      seed/pipeline.json, seed/outreach/ and seed/calls/. Use when the user says
      "email the investors", "send the outreach", "follow up with everyone who
      hasn't replied", "who do I follow up with today", "sort my replies", "book
      the call", "send her an invite", "how is the raise going", or after
      /seed-investors ranks the list.
    argument-hint: "[draft | batch | due | inbox | book | status]"
    ---
    
    # seed-closer
    
    The Closer does the part of a raise that eats the founder's week: one
    personal email per investor, the follow-ups nobody remembers to send, the
    replies sorted, and the call on the calendar. It writes everything; it never
    sends anything. Claude sends through the user's own Gmail, only after the
    user said yes to that exact batch in the chat, and Claude's own "Allow once"
    card asks again for every email. All the user has to do is say yes, show up
    and pitch. Investors decide; nothing here promises a check.
    
    `${CLAUDE_SKILL_DIR}` below is this skill's folder (where this SKILL.md lives).
    
    ```bash
    python3 "${CLAUDE_SKILL_DIR}/closer.py" draft --top 20          # one .eml per investor, status drafted
    python3 "${CLAUDE_SKILL_DIR}/closer.py" batch                   # recipients, their personal lines, the first email in full
    python3 "${CLAUDE_SKILL_DIR}/closer.py" approve --batch 3f9a1c2e --reply "yes"   # the user's reply, word for word
    python3 "${CLAUDE_SKILL_DIR}/closer.py" outbox --json           # exactly what to send: to, subject, body, thread
    python3 "${CLAUDE_SKILL_DIR}/closer.py" log --id maya-chen --event sent --thread-id 18c2f0a1
    python3 "${CLAUDE_SKILL_DIR}/closer.py" due --today 2026-10-29  # who gets a follow-up today
    python3 "${CLAUDE_SKILL_DIR}/closer.py" followup --due --extra "Here's our 60-second demo: https://..."
    python3 "${CLAUDE_SKILL_DIR}/closer.py" inbox --file replies.json            # sort replies, then --write
    python3 "${CLAUDE_SKILL_DIR}/closer.py" reply --id maya-chen --body-file answer.txt
    python3 "${CLAUDE_SKILL_DIR}/closer.py" book --id maya-chen --start "2026-11-05 10:00" --tz America/New_York --link https://meet.google.com/abc-defg-hij
    python3 "${CLAUDE_SKILL_DIR}/closer.py" status                  # the funnel
    ```
    
    Every command takes `--dir` (default `./seed`) and `--today YYYY-MM-DD` (pin
    the date). `--json` on batch, outbox, due, inbox and status.
    
    ## What it reads and writes
    
    | file | what |
    | --- | --- |
    | `seed/config.json` | `startup` (name, one_liner, optional tagline, raise, stage), `founder` (your real name, the address you send from, company_address), `outreach` (daily_cap 20, followup_days [3, 7], max_touches 3, business_days true, optional holidays) |
    | `seed/investors.json` | from /seed-investors: id, name, firm, email, sources, fit, reasons, personal_line |
    | `template.txt` | the intro and the two follow-ups (this folder; copy it to `seed/template.txt` to make your own) |
    | `seed/outreach/<id>-<n>.eml` | each draft: a valid RFC 5322 message (CRLF, From, To, Subject, Date, Message-ID, plain text); follow-ups carry In-Reply-To |
    | `seed/pipeline.json` | one row per investor: status, touches, next_due, labels, notes, the waiting draft, the Gmail thread id, the call, the history |
    | `seed/calls/<id>.ics` | the invite: RFC 5545, CRLF, folded at 75 octets, UTC times, UID, SEQUENCE, ORGANIZER, ATTENDEE, the video link |
    
    ## The rules it enforces
    
    - **A real personal line or no email.** Each intro needs `personal_line`: one
      sentence about this investor from their public record. Refused: empty,
      under 7 words, cut off with "...", a placeholder, a stock opener ("hope this
      finds you well", "big fan", "love what you're doing", "impressive
      portfolio", "came across your profile"), the same line used for two people,
      and a line that names nothing from their row (a deal, a post, a sector, a
      number). Rows without an email or a public source URL are refused too.
    - **Your real name and the opt-out line.** `founder.name` must be a real name
      ("Your Name" is refused). Every intro and follow-up carries "Not a fit?
      Reply 'no' and I won't follow up." A batch whose .eml lost it is refused.
    - **The yes.** `approve` takes the user's reply word for word and the batch id
      `batch` printed. It counts only a reply that starts with "yes" and has no
      condition in it: "sure", "ok", "yes but drop Marcus", "yes tomorrow",
      "yes?" and a count that does not match the batch are not a yes. If the
      drafts changed after the batch was shown, the id no longer matches and
      nothing is recorded. `log --event sent` works only on an approved email.
    - **The daily cap.** 20 cold emails a day by default (intros and follow-ups,
      counting today's sends and every approved one not sent yet), 50 at most
      whatever the config says. Replies in a live conversation do not count.
    - **Three touches.** The intro on day 0, follow-up 1 on +3 business days and
      follow-up 2 on +7 (weekends and `outreach.holidays` skipped), never sooner
      than the planned gap after the touch before, and never once they replied.
    - **Stops.** A no, an opt-out or a bounce ends the thread for good: the
      waiting draft is void, nothing more is recorded, and `draft` refuses that
      address forever. "Not now" is a soft pass: no more follow-ups, and
      /seed-updates can keep them posted if they asked.
    - **Out of office** is not a reply: the follow-up waits until the business day
      after the return date it finds ("until Monday, November 9"), and a follow-up
      already drafted is voided and drafted again then.
    
    Statuses: drafted, approved, sent, replied, interested, booked, and the ends
    passed, bounced, optout.
    
    ## Sending: the Gmail-connector loop
    
    The user connects their own Gmail in Claude (Customize > Connectors) and sets
    the tools that send or draft to **Needs approval**, never Always allow. In
    Claude Code, keep them on ask in `.claude/settings.json` and never in allow.
    In the Claude Gmail connector checked on 2026-10-26 the tools are
    `send_message` (send), `create_draft` (leave it in Drafts), `reply` (answer
    inside a thread), `search_threads` and `get_thread` (read only); another
    Gmail connector may name them differently. Nothing goes out any other way: no
    mail-merge tool, no SMTP, no third-party sender.
    
    1. `closer.py batch`. Show the user what it prints, as it prints it: every
       recipient with their personal line, the first email in full, the count
       against the daily cap. Ask: "Send these N emails from your Gmail? Reply yes
       or no." One batch per question.
    2. `closer.py approve --batch <id> --reply "<their reply, word for word>"`.
       "Not recorded" means it was not a clear yes: ask again, never turn a reply
       into a yes yourself. To send fewer, show a smaller batch (`--ids`, `--limit`).
    3. Only after "Recorded your yes", send each email from the JSON it printed,
       one tool call per email: `send_message` with that to, subject and body (or
       `create_draft` if the user would rather press send in Gmail). A follow-up or
       a reply goes in its thread with `reply` and the `thread_id`. Each call
       raises Claude's "Allow once / Deny" card: the second check.
    4. After each send: `closer.py log --id <id> --event sent --thread-id <id from
       Gmail>`. Denied on the card: `log --id <id> --event denied` (back to
       drafted, it needs a new yes). Stop the loop if anything looks wrong.
    5. Never from a scheduled or background task. A schedule may run `due`,
       `followup --due` and read replies; sending always waits for the user.
    
    ## Steps
    
    1. Check `seed/config.json`: the user's real name, the address they send from,
       a postal address (anti-spam laws such as CAN-SPAM expect one). Read
       `seed/investors.json` from /seed-investors; ask before writing to anyone
       with a personal mailbox.
    2. `closer.py draft --top 20`. Read back what it refused and why. Fix a
       refused personal line from the investor's sources, never by inventing a
       fact, then draft that id again.
    3. Run the Gmail loop above for the batch: batch, the yes, send, log.
    4. Every business day: `closer.py due`. For the ones due, `followup --due`
       (an optional `--extra` line for follow-up 1, `--ask` for the last one),
       then the same loop.
    5. Read new replies with `search_threads` / `get_thread` (read only, for
       example `from:[email protected] newer_than:14d`). Put them in a
       replies.json (`[{"from", "subject", "date", "text"}]`) and run `inbox`.
       Show the user each label and the suggested next step, then `inbox --write`.
       Labelling the threads in Gmail (Interested, Asked a question, Not now) is
       optional: ask first.
    6. A question: draft the answer from `seed/plan.json` and `seed/model.json`
       only (never a number that is not in them), `reply --id ... --body-file`,
       then the loop. The .eml carries no attachment: link the deck, or the user
       attaches the PDF in Gmail.
    7. Interested: find two free slots with the user's calendar (read only, for
       example `suggest_time` or `list_events`) and offer them in a reply. When
       they agree on a time, `inbox --write` that reply, then `closer.py book`.
       Show the invite, ask "Send this invite to Maya? Reply yes or no", and after
       the yes create the event in the user's own calendar with the investor as a
       guest (Google Calendar `create_event` sends the invite), or attach the .ics
       to a reply in the thread.
    8. `closer.py status` for the funnel. Hand off: /seed-coach `agenda` for each
       booked call, /seed-updates `--to prospects` for the soft passes, and
       /seed-terms and /seed-dataroom when an investor asks for next steps.
    
    ## Example: the reel
    
    Leashly is fictional, and so are the investors. `draft --top 6 --today
    2026-10-26` writes six intros from the founder's own address; Maya Chen's
    (Northlight Ventures, fit 96) reads:
    
    ```
    To: Maya Chen <[email protected]>
    Subject: Leashly: dog walks without the surprise fees
    
    Hi Maya,
    
    Saw you led two pet-care seed rounds, so you know the 20% fee problem better than anyone.
    
    Leashly is a dog-walking app with flat prices and a backup walker on every walk.
    
    We're raising a $1.5M seed. Open to a 20-minute call next week?
    
    Not a fit? Reply 'no' and I won't follow up.
    ```
    
    After the user's "yes", Claude sends the six through Gmail. The reel's 40
    emails would go out over two days at the daily cap of 20. With no reply, `due
    --today 2026-10-29` lists follow-up 1 on Thursday, Oct 29 (+3 business days),
    and follow-up 2 would come on Wednesday, Nov 4 (+7 business days; with
    `business_days: false` it is Monday, Nov 2). Maya replied on Oct 30: "What's
    your take rate, and how do you guarantee the backup walker?" `inbox` labels it
    Asked a question and the follow-ups stop. Claude answered from the plan ("15%
    flat, no owner fee. Every walk is booked with a second walker on standby
    within 1 mile.") and asked "Would Thursday at 10 work for 20 minutes?". Her
    "Thursday 10am works. Send an invite." is Interested, and
    
    ```
    closer.py book --id maya-chen --start "2026-11-05 10:00" --tz America/New_York --link https://meet.google.com/abc-defg-hij
    ```
    
    writes `seed/calls/maya-chen.ics`: "Leashly × Northlight Ventures · Intro
    call", DTSTART 20261105T150000Z, DTEND 20261105T153000Z (10:00 to 10:30 AM
    Eastern; the clocks went back on Nov 1, so it is UTC-05:00). The reel's
    funnel, 40 sent, 12 replied, 5 interested, shows in `status` as drafted 40,
    sent 40, replied 12 (30% of sent), interested 5, booked 1.
    
    ## What it never does
    
    - Never sends, and never lets Claude send, without the user's yes for that
      batch; never "yes to everything from now on"; never from a background task.
    - Never writes to anyone without a public source in their row, never guesses
      an email address, never collects a personal phone number or home address.
    - Never emails a thread again after a no, an opt-out or a bounce.
    - Never invents a fact in a personal line or a number in a reply.
    - Never promises funding. The pack does the work; investors decide.
    
  • seed-closer/closer.py92 KB6aae3a36e92dupstream ↗

    Contents are not inlined in the catalog. Open the upstream file.

  • seed-closer/template.txt1.3 KBdc753bd2f23bupstream ↗
    # The Closer's email template (seed-closer). Everything above the first
    # "=== ... ===" line is a note for you and is never sent. To make your own,
    # copy this file to seed/template.txt: the Closer uses that copy when it exists.
    #
    # Placeholders the Closer fills: {first_name} {name} {firm} {personal_line}
    # {startup} {one_liner} {one_liner_sentence} {tagline} {raise} {stage}
    # {instrument} {sector} {geography} {sender} {sender_first} {title}
    # {company_address} {signature} {optout} {intro_subject} {intro_day} {extra}
    # {ask}. Write a literal brace as {{ or }}.
    #
    # Keep {personal_line} in the intro and {optout} and {signature} in every
    # section: the Closer refuses a draft without them. Follow-ups stay under 80
    # words before the opt-out line.
    
    === intro ===
    Subject: {startup}: {tagline}
    
    Hi {first_name},
    
    {personal_line}
    
    {startup} is {one_liner_sentence}.
    
    We're raising a {raise} {stage}. Open to a 20-minute call next week?
    
    {optout}
    
    {signature}
    
    === followup 1 ===
    Subject: Re: {intro_subject}
    
    Hi {first_name},
    
    Bumping this up: my note from {intro_day} about {startup}, {one_liner_sentence}. {extra}
    
    Open to 20 minutes next week?
    
    {optout}
    
    {signature}
    
    === followup 2 ===
    Subject: Re: {intro_subject}
    
    Hi {first_name},
    
    Quick one, and my last note on this: {ask}
    
    {optout}
    
    {signature}
    
  • README.mdupstream ↗

    Contents are not inlined in the catalog. Open the upstream file.

Plain-text copy, no login: /skill-bundles/jakeschincariol-seed-skill-seed-closer.md

// REPO STATS

43 stars