| name | customer-discovery |
| description | 外贸B2B客户搜索与准入筛选技能(找客户/搜客户/开发客户名单/prospecting/lead generation/地图找客户/Google Maps prospecting)。当用户要求搜索潜在客户、建立客户名单、按关键词找进口商/批发商/经销商/品牌商、筛选或排除搜索结果、判断某公司是否目标客户、给客户名单做准入分流时,必须使用本技能。支持六种搜索方法(关键词矩阵、AI语义搜索、展会名录、竞品经销商反查、数据库筛选、地理搜索)和四道准入Gate。即使用户只是说"帮我找一些德国的汽配进口商"或"看看这家公司是不是我们的目标客户",也应触发本技能。 |
客户发现 Skill(Customer Discovery)
把"搜索 → 逐项排除 → 准入分流"这个人工流程标准化。核心原则:搜索即验证——搜到名单不是目的,每家公司必须带证据、过四道 Gate、给出可追溯的结论。搜到的公司只能叫 Data(数据),不能叫客户。
环境前置检查
开始客户搜索前读取环境初始化前置检查。当前清单无有效状态时,先使用 b2b-marketing-automation:environment-setup。
任务目标
输入一份业务配置(卖什么、找谁、排除谁),输出一张合格的候选客户表:每家公司有来源链接、有产品证据、有身份判断、有准入结论(进入背调 / 低优先 / 人工复查 / 放弃)和原因。
开始前必须确认的输入
缺任何一项,先向用户要,不要自己编:
- 产品定义:卖什么,目标产品的准确英文名 + 易混淆产品清单(哪些看起来像但不是)
- 目标客户类型:进口商 / 品牌商 / 批发商 / 经销商 / 连锁零售 / 电商卖家 / OEM·ODM 客户,哪些是主攻
- 排除客户:明确不要的类型(个人买家、纯零售小店、纯维修店、同行制造商等)
- 目标国家/区域
- 价格带定位:高端 / 中端 / 走量(决定该排除低端清仓渠道还是高端精品渠道)
配置来源优先级(本技能通用于任何行业):① 用户提供的 Business Profile 配置文件(business-profile 技能产出)优先;② 若无配置且行业恰好命中 references/industries.md 中已有的行业模板(当前含 RC玩具车/车灯/压铸,仅为可选加速器),可作为默认起点;③ 都没有则按上面 5 项现场向用户收集。任何新行业不依赖内置模板,走 ①或③ 即可完整执行。
网页情报能力路由(必需)
公开网页获客和官网轻量核验必须先按 references/web-intelligence-routing.md 使用 webIntelligenceGateway.prospect_search。标准路径是:关键词矩阵 → webIntelligenceGateway.prospect_search → canonical-domain dedup → webIntelligenceGateway.page_extract 的官网产品/身份轻量核验 → 四道 Gate → discovery_to_research 交接。
交给 customer-research 时,严格使用 shared/schemas/handoff-contracts.json 的 discovery_to_research 合同。gateway 返回的 task_id 映射为 gateway_task_id,候选表的 website 规范化为 canonical_domain;展示列可以保留原值。该合同列出的共同网关交接字段必须原名透传;有值就保留,无值不猜填,尤其不得丢失 continuation_cursor。
gateway 负责 Plan A/Plan B;每次返回都保留 fallback_level、attempted_providers、selected_provider、fallback_reason、degradation_status、coverage_gaps、manual_review_required 与 continuation_cursor。同一公开网页请求不得同时发送给 gateway 与 agent-reach,也不得把 partial、unavailable 或 coverage gap 当作 Gate 的支持性证据。
agent-reach 仍用于其他平台/社媒获客;对于公开 LinkedIn 公司、产品或 Showcase,或 gateway 明确报告的匹配 capability coverage gap,才可作为 Plan C 的单一路径。开始此 Plan C 前先确认当前环境是否提供 agent-reach;不可用时保留已有证据与 coverage gap,写入 continuation cursor 并转人工复查。用户已提供完整客户名单且只要求离线整理或筛选时,可以不调用任何网页能力。
六种搜索方法(按任务选择,可组合)
详细打法见 references/methods.md。选择逻辑:
| 方法 | 适用场景 | 何时用 |
|---|
| ① 关键词矩阵搜索 | 通用主力,成本最低 | 默认起手式 |
| ② AI 语义搜索 | 细分客户类型,传统数据库没有的 | 关键词搜索噪音太大时补充 |
| ③ 展会名录挖掘 | 质量最高(参展=真实经营+有预算) | 已知目标行业主要展会时优先 |
| ④ 竞品经销商反查 | 单位质量最高(锚点已证明会买) | 手里有竞品名单或已成交客户时必做 |
| ⑤ 数据库筛选(Apollo等) | 只做联系人补全,不当搜索主渠道 | 公司已确定后查联系人 |
| ⑥ 地理搜索(Google Maps) | 渠道型客户密集区域扫描(如汽配店) | 仅零售/安装渠道类目标 |
地图获客路由(方法⑥)
REQUIRED SUB-SKILL: 地图获客任务必须使用 seo-maps 获取商家、地址、电话、网站、类别、营业状态和评价等地图数据,并完整遵循 references/maps-prospecting.md。
执行边界:
- 开始前检测
seo-maps 的 Tier 0/1/2 能力并向用户说明数据源、覆盖限制和成本。
- 付费 API 调用必须先展示预计请求数与成本,并取得用户确认。
- 地图类别、评分、评论、地址和营业状态只能用于发现及辅助判断。
- 先用
webIntelligenceGateway.page_extract 对已知官网页面完成 gateway A/B 读取;只有同一官网/page-read capability 返回 matching unresolved Plan C coverage gap,才可使用 agent-reach public page reader。 同一 URL 不得同时发送给 gateway 与 agent-reach;partial 或 unavailable 输出只保留为缺口,不能作为产品页、身份或联系入口的支持性证据。
- 地图结果不得单独支持
enter_research;官网补证前通常进入 manual_review,产品门通过但仍有未知项时可进入 low_priority_research。
seo-maps 负责地图数据获取;本技能继续负责关键词矩阵、去重、四道 Gate、分流和 Excel 输出。
关键词矩阵构造公式(方法①):
[产品词] × [客户类型词] × [国家/语言词] - [排除词]
- 产品词:主词 + 同义词 + 当地语言词(德语/西语/意语市场必须用当地语言各搜一轮)
- 客户类型词:importer / wholesaler / distributor / wholesale supplier / B2B / trade
- 排除词加在判断阶段而非搜索阶段(搜索阶段排除词会漏掉页面同时含两类词的真目标)
搜索即验证:硬规则(不可跳过)
对每一个搜索结果,收录进候选表之前必须完成:
- 不允许只看首页。必须检查产品页/类目页/详情页,以及 About、Contact、Supplier/Dealer 页
- 区分目标产品、相邻产品、易混淆产品。对照配置里的易混淆清单逐一排查,不能把"看似相关"写成"明确对口"
- 每条结论必须带证据链接。产品对口的结论必须附产品页 URL;无链接只能写"待验证"
- 识别实体混淆:同名公司、品牌站 vs 经销商站、母公司 vs 子公司、跳转域名——核对域名、国家、地址是否一致,绝不拼接不同实体的信息
- 识别无效网站:域名待售、长期403、SSL异常、跳转异常、明显空壳 → 标记原因后丢弃
- 地址初判(有地址时):工业区/商业街/住宅区/写字楼/仓库,只作为规模信号;没有比例尺和参照物时禁止编造面积或"大工厂"结论;宣传是工厂但地址是商业街小门店 → 降级或转人工
四道准入 Gate(每家公司必须全部有结论)
| Gate | 判断内容 | 可能结论 |
|---|
| 身份门 identity_gate | 它是进口商/品牌商/批发商/零售商/维修店/同行/终端用户中的哪个? | 通过 / 需复查 / 不通过 |
| 产品证据门 product_gate | 有没有真实产品页证明对口? | 通过 / 需复查 / 不通过 |
| 联系方式门 contact_gate | 有没有至少一种可用联系入口(邮箱/表单/电话/LinkedIn)? | 通过 / 未知 / 不通过 |
| 网站活跃门 website_activity_gate | 官网是活的吗?12个月内有更新迹象吗? | 通过 / 未知 / 不通过 |
综合分流规则:
- 四门全过 →
进入背调
- 产品门过、其他有"未知" →
低优先背调
- 身份不确定 / 证据不足但有潜力 / 同名混淆未排除 / 高潜力但与画像冲突 →
人工复查(宁转人工不硬判)
- 明确同行、竞对、个人卖家、纯维修店、空壳、无关行业 →
放弃(必须写原因)
- 不匹配 ≠ 删除:当前不符合画像但渠道真实、方向对口的,标"储备"而不是放弃
输出格式(硬性要求:一个 Excel 文件,字段对齐系统数据表)
最终成果必须是一个 Excel 文件(.xlsx),字段名与营销自动化系统的候选客户表(candidate_account)严格对齐,保证结果可直接导入数据库。聊天中可给摘要,但正式交付物是 Excel。文件名必须以 project_code 开头,并遵守 shared/schemas/crm-output-contract.json 的 file_naming 合同;只有 project_code 已由用户明确确认并持久化后才能命名,禁止默认、猜测或写入真实项目代码。
固定工作表结构:
Sheet 1「候选客户」(对齐 candidate_account,每行一家公司,列名固定):
company_id | project_code | company_name | country | website | canonical_domain |
product_line | visibility_level | source_system | crm_account_id |
account_owner_email | deal_owner_email | shared_with_teams | source_record_id |
source_url | search_keyword |
customer_type_guess | product_evidence_url | contact_entry |
identity_gate(pass/review/fail) | product_gate(pass/review/fail) |
contact_gate(pass/unknown/fail) | website_activity_gate(pass/unknown/fail) |
gate_decision(enter_research/low_priority_research/manual_review/discard) |
gate_reason | tenant | 对口程度 | 风险备注 | 待复查事项
company_id 只能从 bd-pipeline 台账读取或由其分配,customer-discovery 不得独立编号。
project_code 只能从用户明确确认的 bd-pipeline 项目代码透传;未确认时必须停止,不得根据公司名、域名或产品名猜测。
product_line 只能从已确认的业务配置透传;不确定时保留空值并人工复查,不得猜填。
visibility_level 默认 company_only。
source_system 对本流水线新发现记录默认 pipeline。
- 未进入 CRM 时
crm_account_id 保持空值,不得编造。
Sheet 2「排除与储备」:discard 与储备项,每条带原因(bad_fit ≠ 删除,储备项必须保留)
Sheet 3「汇总」:准入结论分布、国家/赛道分布、主要放弃原因 TOP3、人工复查清单、诚实声明(哪些证据是弱证据、哪些未核验)、下一步建议
枚举值必须用表内规定的英文值(pass/review/fail 等),不得自创;中文说明放 gate_reason 和备注列。
禁止行为(forbidden_actions)
- 禁止编造联系人、邮箱、进口记录、公司规模、工厂面积、采购需求
- 禁止把推测写成事实;把"看似相关"写成"明确对口"
- 禁止把目录站条目、电商泛类目、搜索摘要当作强证据
- 禁止在未核实产品页的情况下给出"高优先/重点客户"结论
- 禁止把不同实体(同名公司/母子公司/品牌与经销商)的信息拼在一起
- 禁止因当前画像不匹配就建议删除渠道真实的公司
置信度与人工复查触发(confidence_rules)
每家公司的结论自带置信度心态:证据齐全一致 = 高;有证据但单一来源 = 中;仅间接信号 = 低。以下情况必须在输出中明确标记"建议人工复查"而不是给出确定结论:
- 客户类型在两可之间(批发商 vs 大零售店)
- 价格带/档次匹配存疑
- 同名公司或多主体未能排除
- 网站信息与地图/注册信息矛盾
- 高潜力但不符合当前画像
通过标准(pass_criteria)
一批搜索结果合格的标志:每家收录公司有来源链接;无一例"无证据收录";放弃的都有原因;明显垃圾(目录站/同行/无关)被清掉;模糊项进了人工复查而不是被硬判;用户人工抽查 10 家,与技能结论一致 ≥ 8 家。