with one click
company-research
// 红龙获客系统·海外B2B企业背景调查 — 输入海外企业名称,自动搜集企业公开信息并输出结构化背调报告,用于客户资质评估和开发信个性化。支持全球搜索引擎、LinkedIn、海关数据交叉验证。背调结果自动保存到NAS知识库,全员复用。
// 红龙获客系统·海外B2B企业背景调查 — 输入海外企业名称,自动搜集企业公开信息并输出结构化背调报告,用于客户资质评估和开发信个性化。支持全球搜索引擎、LinkedIn、海关数据交叉验证。背调结果自动保存到NAS知识库,全员复用。
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | company-research |
| version | 3.1.0 |
| description | 红龙获客系统·海外B2B企业背景调查 — 输入海外企业名称,自动搜集企业公开信息并输出结构化背调报告,用于客户资质评估和开发信个性化。支持全球搜索引擎、LinkedIn、海关数据交叉验证。背调结果自动保存到NAS知识库,全员复用。 |
| allowed-tools | Bash |
| triggers | ["公司调研","company research","企业背调","调查公司","调研客户","research company","background check"] |
红龙获客系统的海外客户企业背调工具。输入企业名称(英文),自动搜索公开信息并输出结构化背调报告。
v3.1 变更:修复 NAS 保存路径;NAS 挂载失败时强制降级存本地并告知用户;脚本路径修正为相对于知识库根目录。 v3.0 变更:搜索工具从 agent-browser 切换为 Exa MCP(mcporter),不再依赖浏览器。
知识库脚本需要 NAS 访问凭据,仅需配置一次:
# 创建凭据文件(只需运行一次,IP 已写死为 192.168.0.194)
$cred = Get-Credential -Message "输入 NAS 登录账号(格式: 用户名 或 域名\用户名)"
$cred | Select-Object -ExpandProperty UserName | Out-File "$env:USERPROFILE\.openclaw\.nas_credentials" -Encoding UTF8
$pass = $cred.Password | ConvertFrom-SecureString
@{User=$cred.UserName; Pass=$pass} | ConvertTo-Json | Out-File "$env:USERPROFILE\.openclaw\.nas_credentials" -Encoding UTF8
或者手动创建 C:\Users\你的用户名\.openclaw\.nas_credentials,内容为:
{"User":"你的NAS账号","Pass":"加密密码(由上面脚本生成)"}
技能执行时会自动尝试挂载 K: 盘指向
\\192.168.0.194\home,无需手动挂载。
输入:公司名
↓
[Step 1] 读知识库 — 检查是否已有档案
↓
[Step 2] 执行背调 — 搜索 + 生成报告
↓
[Step 3] 保存知识库(必须)— NAS 或本地降级
↓
[Step 4] 输出报告 + A2UI 卡片
禁止跳过 Step 3。 无论 NAS 是否可用,背调结果必须存入知识库。
# 通用搜索
mcporter call exa.web_search_exa 'query={搜索关键词}&numResults=10'
# 高级搜索(支持日期范围、域名过滤)
mcporter call exa.web_search_advanced_exa 'query={关键词}&numResults=10&startPublishedDate=2025-01-01'
# 公司专属搜索
mcporter call exa.company_research_exa 'query={公司名}&numResults=5'
# 人物搜索(LinkedIn 决策者)
mcporter call exa.people_search_exa 'query={姓名} {公司名}&numResults=5'
当 mcporter 不可用时,使用内置工具:
web_search({query: "搜索关键词"})
web_fetch({url: "https://目标URL"})
1. 先执行 mcporter call exa.web_search_exa 测试连通性
2. 如果返回正常结果 → 使用 Exa MCP 完成所有搜索
3. 如果报错或超时 → 降级到 web_search + web_fetch
4. 降级时告知用户:"Exa 搜索暂不可用,使用内置搜索工具"
搜索结果中常见的残缺 URL 必须补全:
| 残缺格式 | 补全为 |
|---|---|
br.linkedin.com/in/xxx | https://br.linkedin.com/in/xxx |
linkedin.com/in/xxx | https://www.linkedin.com/in/xxx |
www.example.com | https://www.example.com |
example.com/path | https://example.com/path |
规则:所有输出的 URL 必须包含 https:// 协议前缀。如果搜索结果中的链接缺少协议前缀,自动补全后再输出。
收到企业名称 {company}(通常为英文)后,按以下顺序执行:
# 1. 公司综合搜索
mcporter call exa.company_research_exa 'query={company}&numResults=5'
# 提取:官网URL、总部地址、行业、员工规模、主营业务
# 2. 补充企业信息
mcporter call exa.web_search_exa 'query={company} company profile headquarters industry employees&numResults=8'
# 提取:成立年份、员工规模、子公司、业务范围
# 3. LinkedIn 企业页(注意URL补全)
mcporter call exa.web_search_exa 'query=site:linkedin.com/company {company}&numResults=5'
# 提取:员工总数、行业分类、specialties
# 4. 产品和业务范围
mcporter call exa.web_search_exa 'query={company} products services business model&numResults=8'
# 提取:主要产品线、目标市场、业务范围
# 5. 近期动态
mcporter call exa.web_search_advanced_exa 'query={company} news expansion partnership&numResults=8&startPublishedDate=2025-06-01'
# 提取:近6个月新闻、扩张动态、合作签约
# 6. 进出口贸易信息
mcporter call exa.web_search_exa 'query={company} import export trade customs&numResults=5'
# 提取:贸易伙伴、进出口品类、采购规模
# 7. 关键决策者
mcporter call exa.people_search_exa 'query={company} CEO CTO director procurement&numResults=10'
# 提取:关键人姓名、职位、LinkedIn链接(注意URL补全)
# 8. 采购需求线索
mcporter call exa.web_search_exa 'query="{company}" procurement OR sourcing OR supplier OR equipment&numResults=5'
# 提取:采购需求、当前供应商、设备需求
# 9. 招聘信息(采购需求信号)
mcporter call exa.web_search_exa 'query="{company}" jobs procurement OR buyer OR sourcing&numResults=5'
# 提取:正在招聘的采购相关职位 → 说明有采购需求
注意:每轮搜索后评估已获取信息,如某维度已有充分数据则跳过后续同类查询。
严格按以下结构输出。如果某个小节没有搜索到相关信息,直接省略该小节,不要输出空内容或"暂无"。
采用 360 度(6+6)分析框架,参考标准:
全球大客户战略地图.md中的 Habasit 示范案例。
对每位决策者输出:
按优先级排序:采购决策人 > 技术决策人 > 高管
对每位决策者输出:
按优先级排序:采购决策人 > 技术决策人 > 高管
根据搜得的企业信息,按以下 6 维度体系评估:
| 维度 | 匹配条件 | 匹配结果 | 得分 |
|---|---|---|---|
| 行业匹配度(20分) | 制造业/加工业/矿业/物流 | ✅/❌ | {}/20 |
| 采购能力(20分) | 企业规模和营收推断 | ✅/❌ | {}/20 |
| 采购频率(20分) | 招聘信号+贸易活跃度 | ✅/❌ | {}/20 |
| 客户类型(15分) | 制造商/经销商/终端等 | ✅/❌ | {}/15 |
| 决策周期(15分) | 企业规模推断 | ✅/❌ | {}/15 |
| 决策人联系(10分) | LinkedIn/官网联系方式 | ✅/❌ | {}/10 |
综合得分:{}/100 → {A/B/C/D 级}
阈值:A≥75(立即触达)| B 50-74(正常跟进)| C 30-49(低优先级)| D<30(暂不开发)
匹配理由:{一句话说明为什么匹配或不匹配}
根据企业特征,推荐最适合的红龙产品:
# 脚本位于 knowledge-base 技能目录
# 工作目录:acquisition-agent/skills/knowledge-base/scripts/
# 检查是否已有档案(存在则跳过背调,直接返回摘要)
.\read-knowledge.ps1 -Type company -Name "{公司名}"
# 返回 {exists: true} → 已有档案,显示摘要 + research_count++
# 返回 {exists: false} → 无档案,继续执行背调
注意:脚本路径是相对于 knowledge-base/scripts/ 目录,不是 company-research/scripts/。
# 背调完成后必须调用,路径同上
.\write-knowledge.ps1 -Type company -Name "{公司名}" -Content $report -DriveLetter K:
# 成功 → 返回 {success: true, path: "K:\knowledge\companies\{slug}.md"}
# 失败 → 返回 {success: false, error: "NAS mount failed"}
背调报告是叙事性长文本,应保存为 .docx 格式供业务员打印、分享:
from docx import Document
from docx.shared import Pt, Cm
from docx.oxml.ns import qn
doc = Document()
# 中文字体设置
style = doc.styles['Normal']
style.font.name = 'Microsoft YaHei'
style.element.rPr.rFonts.set(qn('w:eastAsia'), 'Microsoft YaHei')
style.font.size = Pt(11)
style.paragraph_format.line_spacing = 1.5
# 填充报告内容...
doc.add_heading(f'公司背调报告 — {company_name}', level=0)
# ... 完整报告内容 ...
# 保存到工作区
workspace = r'C:\Users\Administrator\.holo-desktop\workspace'
doc.save(f'{workspace}\\背调报告_{company_name}_{date}.docx')
.docx 生成详情见
word-docx技能。
NAS 挂载失败的降级路径:
# 如果 K: 盘不存在或 NAS 凭据缺失,自动降级存本地
$localPath = "$env:USERPROFILE\.openclaw\workspace-agents\acquisition-agent\knowledge\companies\{slug}.md"
New-Item -ItemType Directory -Path (Split-Path $localPath) -Force | Out-Null
$report | Out-File -FilePath $localPath -Encoding UTF8
# 输出时必须告知用户:
# "⚠️ NAS 暂不可用,档案已暂存本地($localPath),请手动同步到共享盘"
禁止静默跳过。 NAS 失败时必须降级存本地并明确告知用户。
档案格式由
write-knowledge.ps1脚本自动生成,包含 frontmatter 元数据(icp_score、icp_grade、research_count 等),无需手动拼装。
https:// 协议前缀完成背调后,在 Markdown 报告末尾附加 A2UI 交互卡片,让业务员一键操作。
参考文件:references/a2ui-output-guide.md(读取此文件获取完整格式说明)
输出规则:
a2ui 卡片,包含:
send_email,context 含 to/subject)generate_quote,context 含 company/product)cr-{公司域名关键词}-{日期}