source-local-businesses
Source local businesses
The insight: local-business lists die by duplication and staleness, not by discovery — and the dedupe key is a sales question, not a data question. Finding 200 "gyms in Brooklyn" is trivial; delivering unique, open, in-category businesses is the work, and whether 12 Crunch Fitness locations are 12 rows or 1 row depends entirely on whether you sell to the franchisee or the brand. So this skill asks the franchise question first, discovers with the cheapest viable arm, normalizes domains before any dedupe (the same business surfaces under prefixes, subpaths, and vanity URLs), and spends enrichment credits only on survivors.
Declared inputs
Nothing here ships with a value. Each one is the installer's, not the author's: ask for it, never substitute a plausible default, and where an answer does not exist say which step becomes unavailable rather than guessing. Where a default IS defensible it is named below, and using it means saying so in the output.