Use when an agent needs to create an evidence-bound supplier discovery report for a product or sourcing brief, especially for global buyers, cross-border eco...
Use this skill to help an agent discover where to search for suppliers and produce a structured, evidence-bound sourcing report. The skill is breadth-first: expand source surfaces, preserve raw signals, separate evidence from query fuel, and make uncertainty explicit.
This is a runtime-agnostic agent skill. It is not a crawler, not a supplier database, not a procurement recommendation engine, and not a trust or due-diligence score.
Do:
SearchResultSignal, SourceAttempt, SourceMapEntry, SupplierCandidate, QuerySuggestion, and Gap separately;Do not:
Ask for or infer:
search+fetch, search-only, or no-search;If live or credentialed actions are not explicitly authorized, operate in planning mode only.
Start with a Day 1 Answer:
text
If I did no research, I would expect the strongest suppliers to come from ______ because ______.
The actual outcome is ______.
This should be searched now because ______.
Adjacent sourcing capabilities that are out of scope are ______.
This skill assumes the agent runtime has access to:
If search is unavailable, operate in no-search mode (fail-fast with metadata only).
If fetch is unavailable, operate in search-only mode (C-grade candidates only).
This skill does NOT assume: paid API access, authenticated sessions, CAPTCHA solving, JavaScript rendering, or database storage.
When the agent runtime has search and/or fetch capability, execute the five-round workflow below to produce an evidence-bound supplier discovery report. The agent runs everything itself; no external script, adapter, or registry orchestrates the run.
Before starting, the agent must check which tools are available in its current runtime:
Do not assume specific tool names. Each runtime exposes different interfaces.
If neither search nor fetch is available, operate in no-search mode (see
Runtime Capability Assumptions).
Phase 1: Query Planning
Generate at least 6 deduplicated query combinations across target regions, product terms, and sourcing intents. Each query targets a specific source category (B2B platforms, trade shows, associations, government directories, company websites, media/community).
Phase 2: Search
Execute each query using the runtime's search tool. Record every result as a
SearchResultSignal (query fuel, not evidence). Track:
query_id, engine_or_entry, title, snippet, result_url, rankis_search_page_url (true for SERP / site-search results)admissibility (for SERP entries: inadmissible)Phase 3: Fetch and Extract
For each promising target URL from search results:
SourceAttempt with status and reason.Gap. Do not create
a SourceMapEntry or SupplierCandidate.SourceMapEntry.SupplierCandidate.Phase 4: Expansion
Run one base expansion pass if Supplier Candidates are fewer than 8 or source categories are fewer than 3. Generate targeted queries for uncovered regions or source types. Deduplicate actionable leads by canonical URL + normalized name.
Phase 5: Assemble Report
Assemble all required report fields:
execution_metadata (profile, runtime capabilities, started_at,
finished_at, elapsed_seconds, rounds_completed, stage_records, stop_reason,
limits_hit, all counters)execution_limit_auditsummarysource_mapsupplier_candidatessearch_result_signalssource_attemptsqueries_triedquery_suggestionsgapsnext_stepsrisk_noticePer run:
Every evidence link must satisfy ALL of these conditions:
Links that fail these criteria must be removed. If no valid evidence link remains, the candidate must not enter Supplier Candidates.
Additional rules:
When a fetch attempt fails (status: failed, restricted, missing_fields, rejected):
source_attempts with the failure reason.Gap entry referencing the source_attempt_id and describing
what was missing.search+fetch, search-only, or no-search.no-search, return fail-fast metadata and empty arrays immediately.A Source Map entry is a discovery surface — a URL-backed page that lists, indexes, or aggregates multiple potential suppliers (e.g., a B2B platform category page, a trade show exhibitor list, a government supplier directory). It is NOT a specific supplier. If the page describes a single supplier with contact/location/product details, it is a Supplier Candidate, not a Source Map entry.
Before extracting candidates, cross-map each plausible supplier candidate identity across the surfaces that expose it:
Mapping failures are source gaps, not market-absence claims.
A Supplier Candidate is a specific supplier entity with name, region, and product match. It must come from a Source Map entry or directly from a search result target URL. If the same URL serves as both a discovery surface AND describes a specific supplier, classify it as a Supplier Candidate and do NOT duplicate it in Source Map.
no-search or a hard limit has already stopped external actions. If Supplier Candidates are fewer than 8 or source categories are fewer than 3, run at most one targeted expansion or record why it is not possible.Stop new external search/fetch actions only under these conditions:
Do not skip ROUND_1 through ROUND_3 because of diminishing returns or coverage saturation. When a hard limit fires before all rounds complete, record the stop reason in execution_metadata.stop_reason, stop new external actions, continue to ROUND_5 with existing evidence, and mark only blocked external actions as skipped in stage_records.
Search-only candidates may enter as C-grade only when they are snippet-derived, not fetched, use a non-search-page target URL, and include explicit provenance.
When a fetch attempt fails (status: failed, restricted, missing_fields, rejected):
source_attempts with the failure reason.gap entry referencing the source_attempt_id and describing what was missing.When a fetched page uses collapsible/expandable sections (accordions, "Show more", tabs), the visible content may not represent the full page. For each Supplier Candidate:
field_origin whether critical fields (name, region, product_match_summary) came from visible or potentially-hidden content.gap entry: { reason: "collapsible_container_coverage_gap", detail: "..." }.Use sources.yaml as a source-family checklist for choosing discovery sources, not a mandatory taxonomy.
git pull in the skill directory, or re-run npx skills add its-how/bigdeal-supplier-finder to get the latest version.bigdeal-supplier-finder/ directory from your skills path.Report contract fields are specified in references/report-contract.md. Every report must include the fields listed there.
Live reports prove evidence-bound supplier discovery behavior within the runtime capability assumptions stated above. They do not prove provider readiness, browser/session readiness, account state, credential safety, external site compatibility, or production readiness.
Before any live/provider phase:
This skill has no deterministic test runner. Live reports are the primary validation path. The agent must verify its own output against the contract before declaring success.
For live reports:
evidence_scope: "live" and do not mix live reports with sample
or synthetic data.