npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@buzzlead/territory-launcher

v0.1.0

Published

Drop a URL. Get N verified prospects + personalized cold copy as a CSV. Free CLI from BuzzLead.

Downloads

122

Readme

Territory Launcher

Drop a URL. Get N verified prospects + personalized cold copy as a CSV. Free CLI from BuzzLead.

npm version license

The same engine that powers the free web tool — but without the 10-prospect cap. Run it on your own keys for as many prospects as you need.

npx @buzzlead/territory-launcher \
  --url stripe.com \
  --count 50 \
  --angle pain \
  --out stripe-prospects.csv

In ~2 minutes you get a CSV with 50 verified-email prospects, a personalized opening line for each, a 45–60 word email body, and a spintax subject line. Ready to import into any sender.


What it does

Five steps, fully automated:

  1. Crawl your site — Jina Reader pulls clean markdown, Claude extracts your offer, ICP, value prop, category.
  2. Read the market — picks the 5–8 subreddits where your buyer actually posts, then Exa pulls verbatim pain language and competitor mentions. Per-quote source attribution.
  3. Design 3 angles — Pain intercept, Competitor displacement, Signal-based. Each named, justified, mapped to a target title set.
  4. Source verified prospects — AI Ark people search + BounceBan email verification. Only valid emails ship.
  5. Write personalized copy — 45–60 word bodies, 1–3 word spintax subjects, soft question CTAs. Word-count + subject validation with a targeted retry for any drift.

Install

One-shot via npx (no install)

npx @buzzlead/territory-launcher --url yourcompany.com --count 25

Or install globally

npm install -g @buzzlead/territory-launcher
territory --url yourcompany.com --count 25

Or use as a library

import { runTerritory } from "@buzzlead/territory-launcher";

const result = await runTerritory({
  url: "stripe.com",
  count: 50,
  angle: "pain",
  onProgress: (step) => console.log(step.kind, step.status),
});

console.log(result.prospects);

API keys

You need three keys. Copy .env.example to .env and fill them in.

| Key | Why | Where | |---|---|---| | ANTHROPIC_API_KEY | Site analysis, intel, copy generation | https://console.anthropic.com | | EXA_API_KEY | Reddit + competitor research | https://exa.ai | | AI_ARK_API_KEY | Prospect sourcing + email verification | https://ai-ark.com |

Optional:

  • JINA_API_KEY — faster lane on the site scrape (anonymous works fine)
  • AIARK_EMAIL_FINDER_WEBHOOK — your own webhook receiver; defaults to a no-op

Cost per run

Approximate, at 10 prospects:

| Provider | Calls | ~Cost | |---|---|---| | Anthropic (Claude sonnet-4-6) | 4–5 calls | $0.03–0.06 | | Exa | 2 searches | $0.01 | | AI Ark | 1 search + 10 email lookups | ~10 credits | | Jina | 1 scrape | ~$0.001 | | Total | | ~$0.05 + 10 AI Ark credits |

For 50 prospects, roughly 5× the AI Ark credit cost; the Anthropic + Exa costs barely move.


CLI usage

Usage: territory [options]

Required:
  -u, --url <url>          Company website URL to analyze

Optional:
  -c, --count <n>          How many verified prospects (1–100). Default: 10
  -a, --angle <id>         Campaign angle: pain | competitor | signal. Default: pain
  -i, --icp <text>         Override the ICP detected from the site
  -o, --out <path>         Output CSV path. Default: ./prospects.csv
      --silent             Suppress progress output
      --json               Print full result as JSON instead of writing a CSV
  -h, --help               Display help
  -V, --version            Display version

Examples

Quick run, default 10 prospects:

territory --url buzzlead.io

Larger pull, pick the competitor displacement angle:

territory --url salesforce.com --count 50 --angle competitor --out salesforce-comp.csv

Override the detected ICP:

territory --url notion.so --icp "Engineering managers at Series B/C SaaS, 50–200 employees"

Use as JSON for piping into other tools:

territory --url stripe.com --count 25 --json > stripe-run.json

CSV output

Columns:

first_name, last_name, email, company, title, linkedin_url,
personalized_line, email_subject, email_body, campaign_angle

Every text field is double-quoted. Newlines inside cells are escaped as \n.


How the pipeline differs from the web tool

| | Web tool | CLI | |---|---|---| | Prospect cap | 10 | 1–100 per run | | Rate limit | 3 runs / 24h / IP | None | | Lead gate | Required | None | | Auth | Shared keys | Your keys | | Timeout | 60s (Vercel) | None | | Cost | Free | Your API spend |

The web tool is a taste. The CLI is the working tool.


Library API

import {
  runTerritory,        // end-to-end pipeline
  analyzeSite,         // step 1
  buildIntel,          // step 2
  generateCampaigns,   // step 3
  findProspects,       // step 4
  writeCopy,           // step 5
  buildCsv,            // output
} from "@buzzlead/territory-launcher";

Each step is a pure async function — you can plug them into your own pipeline, swap one out, or run them individually for debugging.


Want this at scale?

Territory Launcher is a single-shot tool. It runs once, gives you a list, you take it from there.

BuzzLead the agency runs this kind of work continuously, every week, for hundreds of prospects per client — with deliverability infrastructure, reply handling, and a meetings-booked SLA. 10M+ cold emails sent. $8M+ in client revenue.

If you want the version with humans behind it, talk to us at buzzlead.io.


License

MIT. Use it however you want.