视觉画布设计
canvas-design
基于设计原则创作静态视觉作品,用于海报与品牌图形。
suede-prospecting【文档与办公】Suede-owned prospecting and qualification discipline. Use when defining an ICP, sourcing and enriching a bounded lead list, finding early adopters or design partners, scoring account fit, or documenting disqualification evidence. NOT FOR: sending outreach (use suede-cold-email), changing CRM routing (use suede-revops), or profiling competitors instea…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Suede Prospecting turns an approved ICP into a source-backed, scored lead sheet across B2B SaaS, general B2B, local business, and early demand-signal motions. Every candidate carries qualification evidence, disqualification logic, and a compliance-aware handoff before outreach begins.
IRON LAW: every row carries a source URL and the date it was captured,
or it does not ship. No exceptions, no "verify later," no placeholder rows.
That single rule is what makes the downstream GDPR / CAN-SPAM lineage real. A row without it is not a low-confidence lead: it is not a lead.
Check for product marketing context first:
If .agents/product-marketing.md exists (or .claude/product-marketing.md, or the legacy product-marketing-context.md filename, in older setups), read it before asking questions. Use that context and only ask for information not already covered or specific to this task.
Prospecting motions differ enough that the workflow forks at intake. Pick one branch based on who the user is selling to:
| Branch | Sell to | What "qualified" looks like | Possible sources after access and terms checks |
|---|---|---|---|
| SaaS | Other SaaS companies / digital businesses | ICP fit + tech stack match + growth signals (funding, hiring, product velocity) | Public company sites, directories, developer sources, or licensed data available to the user |
| B2B | Non-SaaS B2B (services, manufacturers, enterprises, mid-market) | Industry + size + geographic fit + buying signals (trigger events, vendor changes) | Public company records, industry directories, or licensed business data available to the user |
| Local SMB | Local small businesses (shops, gyms, restaurants, clinics, salons, services) | Active business + website status + proximity + decision-maker access | Public business sites and manually reviewed listings allowed by their terms |
| Demand-signal | Early-stage: first customers, design partners, or beta users | A cited public pain, demand, or timing signal, not just firmographic fit | Public forums, reviews, issues, posts, jobs, and launch records reachable with current authorized tools or manual review |
Before using any named platform or vendor, discover what is currently callable, authenticated, authorized, and permitted by its terms. If no research connector or browser is available, give the user a manual source checklist and work from URLs, exports, screenshots, or source text they provide.
If the user describes a hybrid motion (e.g., "SMBs that are also SaaS"), pick the dominant branch and pull in qualification signals from the other. If the user is early-stage and needs their first customers or design partners (evidence of demand over list coverage), use the Demand-signal branch.
For the branch-specific deep dives:
Every prospecting engagement follows the same five phases. Tools and qualification signals change per branch; the phases don't.
Pull from product-marketing.md if available. Otherwise, gather:
Output the ICP as a one-paragraph statement plus a checklist of pass/fail criteria. Don't move to discovery without this.
Start at 2-3x the requested output count, adjusted down for thin source access or review capacity. Expand only when the observed disqualification rate shows another batch is needed, and cap expansion at 3 rounds. At the cap, stop sourcing: report the disqualification rate you observed and hand back a narrower ICP proposal rather than grinding through more sources.
A smaller evidence-complete list is preferable to padding the output with unverified candidates. Don't start qualification until every candidate has its source URL captured.
Score every candidate against the ICP checklist. Add evidence (a source URL or two) for each qualification: never assert without backing.
Confidence levels (used across all branches):
For email contacts, discover whether an authorized validator is callable and
read its current result semantics before use. If none is available, label the
address unverified, keep it out of send-ready exports, and provide a
user-operated validation checklist. Never claim that validation guarantees
delivery. Don't move to scoring until every candidate carries a confidence level.
Apply this rubric for the SaaS, B2B, and Local SMB branches. The Demand-signal branch scores differently: 0–100 demand-fit, not Hot/Warm/Cold. See references/demand-signals.md.
| Score | Definition |
|---|---|
| Hot | ICP fit (passes the full Phase 1 ICP checklist) + clear buying signal + decision-maker accessible + verified contact |
| Warm | ICP fit + softer or older signal + contact verifiable |
| Cold | Loose ICP fit OR no clear signal OR contact unverified |
| Skip | Disqualifier hit (out of ICP, closed business, duplicate, irrelevant, low confidence) |
Branch-specific signals refine the scoring: see each reference file. Let the evidence determine the number in each label; never force a Hot/Warm/Cold quota. No row leaves this phase labeled Hot without both a buying signal and a verified contact: downgrade it to Warm instead.
(SaaS / B2B / Local SMB. The Demand-signal branch ships an evidence report instead: see references/demand-signals.md.)
Default to a markdown table in chat. Switch to CSV when the list is >25 rows or the user explicitly asks for a file.
After the table, add "Priority review candidates" when the evidence supports one or more: a bounded set ranked by current signal strength, with one sentence on what was verified and what still needs review.
Columns vary by branch (see reference files), but every lead sheet includes:
The sheet is not deliverable until it also carries the search parameters used and the open questions left unresolved.
These apply to every branch. Read first, every engagement.
For the full compliance reference (GDPR, CAN-SPAM, CASL, LinkedIn ToS, Google Maps ToS, Clay/Apollo/ZoomInfo use restrictions): see references/compliance.md.
If missing, ask once, then infer reasonable defaults and continue:
product-marketing.md if presentTreat every named product below as a candidate, not an available capability. These are selection examples, not guaranteed integrations: discover what is currently callable and verify the user's authenticated access, license, source terms, data freshness, export rights, and cost before using one. Full breakdown in references/data-sources.md.
| If the user has access to... | Use it for | Verify Before Use |
|---|---|---|
| Apollo | B2B / SaaS firmographic + contact discovery | Freshness, export terms, email validation |
| Clay | Multi-source enrichment, waterfall lookups, custom scoring | Credit cost, providers, field provenance |
| Clearbit | Email-to-company and company enrichment | Current product access and coverage |
| ZoomInfo | Enterprise B2B contact + intent data | License, export rights, signal freshness |
| Hunter or Snov | Email pattern discovery and verification | Verification status and lawful basis |
| Truelist | Email deliverability validation before outreach | Result meanings and current API limits |
| LinkedIn Sales Navigator | Decision-maker mapping (manual, no scraping) | Platform terms; no bulk extraction |
| BuiltWith / Wappalyzer | Tech stack qualification (SaaS branch) | Detection accuracy and staleness |
| Crunchbase | Funding signals (SaaS branch) | Record recency and license tier |
| GitHub | Stargazers / forks, public developer-intent signals | API terms, rate limits, company mapping |
| Google Maps + browser | Local SMB discovery | Terms; assisted review only, no bulk extract |
| Outreach | Sales engagement after approval | Sequence permissions and suppression rules |
| RB2B | Visitor identification | Privacy basis and company-vs-person grain |
| Firecrawl / Browserbase | Single prospect websites: never platforms | Target terms, scope, and session access |
If the user has no enrichment or browser tools: provide exact public-source queries and a qualification worksheet, then work from URLs, exports, or screenshots the user supplies.
For SaaS / B2B (≤25 rows):
| Score | Company | Industry | Size | Signal | Contact | Email status | Source | Confidence |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
For Local SMB (≤15 rows): port from the local-prospector reference:
| Score | Business | Category | Area | Website status | Website/Social | Phone | Why it's a prospect | Confidence |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
SaaS / B2B columns:
score,company,domain,industry,size_band,country,signal,contact_name,contact_title,contact_email,email_status,linkedin,source_urls,why_prospect,confidence,verified_date,notes
Local SMB columns:
score,business,category,area,distance_km,website_status,website_url,social_urls,phone,email,source_urls,why_prospect,confidence,verified_date,notes
unverified; failed results stay in a
separate invalid bucketAny unchecked box means the sheet is not deliverable. Name the failing box and what is missing, rather than shipping the sheet with a caveat attached.
suede-cold-email).suede-product-marketing to define the ICP and positioning context.suede-cold-email after a qualified list is approved for outreach copy.suede-revops for approved CRM routing and lifecycle handoff.suede-sales-enablement for collateral used in active sales work.