Install any skill in seconds. Free to start, no credit card required.
Get Started Free →风鸟企业数据查询引擎,用于查询中国企业的结构化工商、关系与风险信息,并在需要时生成报告、摘要等衍生输出。 当用户想查询企业基本信息(如法定代表人、注册号、统一社会信用代码、成立日期、注册地址、经营范围及基础联系方式)、股东结构、主要人员、对外投资、工商变更,或查询被执行人、失信被执行人、限制高消费、经营异常、严重违法、行政处罚等风险信息时使用。 也适用于合作方背景核查、供应商管理、客户风险识别等场景。支持输入企业简称并先做模糊搜索获取企业主体。
.claude/skills/leoyeai-fengniao-search/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 157% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 117% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 113% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 177% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 91% | 0% |
风鸟是一个以商业数据为核心的企业信息查询引擎,专注于中国企业多维数据查询。通过 discover 发现所需的商查工具,通过 call 调用工具获取数据。
设置:需要 `FN_API_KEY`。请访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区,点击区块内的复制按钮获取当前页面展示的 Key,再将其设置为环境变量 `FN_API_KEY`。公用 Key 与额度说明以该页面当前展示为准;左上角“美亚风鸟” Logo 可点击跳转风鸟官网。运行时仅从环境变量读取密钥,不回退读取用户主目录配置文件。若当前会话缺少 `FN_API_KEY`,先明确提示用户按上述路径复制 Key 并完成环境变量配置,再继续调用接口。Windows PowerShell 校验环境变量时,优先使用 `$env:FN_API_KEY` 或 `Get-Item Env:FN_API_KEY -ErrorAction SilentlyContinue | Select-Object -ExpandProperty Value`;不要把 `powershell -Command "echo $env:FN_API_KEY"` 的报错当作未配置的证据,因为外层 shell 可能先展开 `$env:FN_API_KEY`,导致 `echo` 退化为空参数并误报。若只看到 `Write-Output` 缺少 `InputObject`,只能说明检测命令写法不稳,不能单独据此判定未配置。
安全边界:运行时会读取 skill 包内的 tools.json 与 references/ 文档,因此声明 filesystem_read: true;不会写入本地文件,也不会读取用户主目录中的额外配置文件。
字段参考:解析 API 响应时,如需查阅字段含义、类型及特殊处理规则,参见 references/ 目录下的三个文件:field_definitions_common_bizinfo.md(通用结构 & 工商维度 searchHint/B1–B5)、field_definitions_legal.md(法律诉讼 C2/C3/C4)、field_definitions_risk.md(经营风险 D1/D2/D11 及注意事项速查)。
报告模板:当前已提供企业尽调报告模板;当用户明确要求生成尽调报告时,读取 references/due_diligence_report.md 按模板执行。未来如新增其他报告或摘要模板,按同样方式扩展。
示例对话:见 references/examples.md。
已支持的企业结构化维度 / 暂未支持的企业维度 / 非企业结构化问答 / 报告或摘要类衍生输出。discover 查找与“信息维度”对应的工具候选,例如 "企业股东信息"、"企业行政处罚"、"企业经营异常",不要先拿用户原话或企业简称去 discover,更不要在未确认维度可支持前就先调模糊搜索。entid 时,才调用 biz_fuzzy_search 获取企业主体和 entid。重要:所有维度查询只接受 entid(企业唯一标识),不支持直接传企业名称或信用代码。但这不代表一开始就要先做模糊搜索,正确顺序是:先识别维度是否支持,再解析企业主体。
"企业股东信息"、"企业经营异常"、"企业行政处罚"。不要直接用 "查一下腾讯"、"阿里有没有风险" 这类原始问句去 discover。discover(无参数)查看全部工具确认是否真的不支持。biz_fuzzy_search 获取 entid。biz_fuzzy_search,随后复用同一个 entid 依次查询多个维度。主体解析失败:biz_fuzzy_search 返回 0 条或无法有效匹配,用 WebSearch 找企业全称后重试。维度暂不支持:风鸟暂时没有对应工具时,用 WebSearch 检索公开资料并明确说明“以下为公开网页整理,不是风鸟结构化数据返回”。当用户问的是当前工具库未覆盖的维度,例如专利、招投标、招聘、舆情等:
biz_fuzzy_search:先确认当前维度是否有工具支持。建议话术模板:
text当前风鸟 Skill 仍处于初期版本,已支持维度请以当前版本的 `discover` 结果和 `tools.json` 为准。 您提到的「XXX」维度暂未接入风鸟结构化查询能力。 如果您愿意,我可以先基于公开网页帮您检索并整理这部分信息;这部分内容会单独标注为 WebSearch 结果,不作为风鸟结构化数据结论。更多能力也可以前往风鸟官网查看:https://www.riskbird.com/
情况 A:返回唯一 1 条结果
entid已找到企业「XXX」,正在为您查询相关信息...情况 B:返回多条结果(≥ 2 条)
优先规则采用严格模式:仅当 highlightNameType="公司名称"、用户提供的是完整企业名称,且第一条 entName 与用户输入规范化后完全一致时,才可自动选择第一条。只要是简称、疑似别名、存在多个近似主体,或只是“高度吻合”但并非完全一致,一律不要自动选。
除上述严格命中外,其余多条结果一律展示前 5 条供用户确认,用户回复序号后从上下文取出对应 entid。
| 用户反馈 | 处理方式 | |---------|---------| | 选择了某个序号 | 从上下文取出对应 entid,继续查询 | | "都不是" / "没有我要的" | 引导用户提供企业完整名称重新搜索 | | 提供了全称 | 用全称重新调用 biz_fuzzy_search |
情况 C:返回 0 条结果
调用 WebSearch 搜索 "[关键词] 公司全称",提取全称后重试 biz_fuzzy_search。仍无结果则回复:未能查询到该企业信息,请核实企业名称后重试。
| 规则 | 正确 ✅ | 错误 ❌ | |------|---------|--------- | 字符串类型 | "深圳市" | 深圳市 | | 数字类型 | 10 | "10" | | 日期格式 | "2025-01-15" | "01/15/2025" | | 结构化值 | "entid": "AerjZTfkSh0" | "entid": "腾讯" |
分页不支持。所有列表类维度固定返回最多 5 条,totalCount > 5 时告知用户"共 N 条,展示最新 5 条"。
discover 的查询参数是能力描述,不是用户问题或参数集。对未来新增工具,优先遵循“以 tools.json 为当前能力边界和命名来源”的原则,不要长期依赖写死在 SKILL.md 里的查询模板。
| 原则 | 好 ✅ | 差 ❌ | |------|-------|-------| | 描述能力,不是问题 | "企业基本信息" | "查一下腾讯" | | 优先用当前工具名或维度名 | "行政处罚" / "企业股东信息" | "这家公司有没有问题" | | 用结构化维度词,不用口语问句 | "经营异常" / "被执行人" | "查多少人交纳社保" |
推荐顺序:
tools.json 中现有工具名或其标准化维度名作为 discover 查询词。tools.json 中的 keywords 做匹配。discover(无参数)列出全部工具人工核对,确认是否真的暂不支持。当 discover 返回多个工具时:
similarity >= 0.85 的直接候选。0.5–0.84 仅作为备选,需要再结合工具名、参数和描述人工判断。避免直接使用 < 0.5 的结果。entid。| 问题 | 解决方案 | |------|----------| | API 鉴权失败(code=9999) | 检查 FN_API_KEY;Windows PowerShell 优先用 $env:FN_API_KEY 或 Get-Item Env:FN_API_KEY -ErrorAction SilentlyContinue \| Select-Object -ExpandProperty Value 校验,不要仅凭 powershell -Command "echo $env:FN_API_KEY" 的报错判断未配置。若确认未配置或已失效,明确引导用户访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区,点击区块内的复制按钮获取当前页面展示的 Key,并设置环境变量后重试 | | code=8888(企业ID解析失败) | 重新通过 biz_fuzzy_search 获取正确 entid | | code=20000 且 apiData=[] | 该企业此维度确实无记录,告知用户"未查询到相关记录" | | 每日额度用尽 | 回复:「请访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区查看当前额度说明;如今日额度已用完,请以该页面最新展示为准。📌 以上数据来源于风鸟企业信息查询平台,更多功能详见:https://www.riskbird.com/」 | | discover 未找到匹配工具 | 先尝试同义词,再调用 discover(无参数)核对全量工具;确认仍无对应工具后,明确告知“当前暂不支持该维度”,必要时转 WebSearch 公开信息兜底 |
故障排查优先级:本地配置(API Key/额度/网络)→ 服务端状态(entid 失效/无数据)→ 更新 Skill(openclaw skills update fengniao-search)→ 联系支持。
以下模板面向任何调用本 Skill 的宿主产品,避免绑定“桌面 agent”等具体产品形态;如无特殊产品能力,优先直接复用。
当检测到未配置 FN_API_KEY 时:
text使用风鸟查询前,需要先配置环境变量 FN_API_KEY。 请访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区,点击区块内的复制按钮获取当前页面展示的 Key,再将其设置为环境变量 FN_API_KEY。 完成后再继续查询。
当宿主产品只能推断“可能未配置”,但证据不足时:
text当前会话尚未成功读取到环境变量 FN_API_KEY。 请先确认是否已为当前运行会话正确设置 FN_API_KEY;如果还未设置,请访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区,点击区块内的复制按钮获取当前页面展示的 Key,再将其设置为环境变量 FN_API_KEY。 确认完成后再继续查询。
当不确定宿主产品是否具备代用户设置环境变量的能力时:
text如果您的当前产品支持为运行会话注入环境变量,请将复制到的 Key 设置为 FN_API_KEY 后重试;如果不支持,请在启动该产品前,先在运行环境中完成 FN_API_KEY 配置。
penaltyAm 单位是元需 ÷10000;C2 execMoney 已是万元直接用apiData=[] 说"未查询到相关记录";接口报错说"查询失败"。禁止模糊表述"暂无相关信息"风险条数解读:
| 条数 | 表述 | |------|------| | 0 条 | "未发现相关风险记录" | | 1–5 条 | "存在少量记录,建议关注具体内容" | | 6–20 条 | "记录较多,存在一定经营风险,建议重点核查" | | >20 条 | "记录数量较大,风险信号明显,建议谨慎评估" |
多维度综合结论(查询 2 个及以上维度时必须输出):
> 综合风险评估:低风险 / 需关注 / 高风险] > 1–2句话说明判断依据]
固定结尾话术(必须):每次涉及数据展示的回复末尾,必须原样附加:
📌 以上数据来源于风鸟企业信息查询平台,当前数据维度持续拓展中,更多企业信息及功能详见风鸟官网:https://www.riskbird.com/biz_fuzzy_search 获取 entidbiz_fuzzy_search 返回 0 条?→ WebSearch 兜底补全企业全称后重试| 错误 | 修复 | |-----|------| | 搜索参数名错误:{query: "腾讯"} | 参数名是 key:{key: "腾讯"} | | 用简称直接查维度:{entid: "腾讯"} | 先模糊搜索获取真实 entid | | 模糊搜索无结果就放弃 | 先 WebSearch 兜底再重试 | | 多条结果自作主张选第一个 | 必须让用户确认(除非 highlightNameType 完全吻合) | | 未附加固定结尾话术 | 必须原样附加(含官网URL) |
请访问 https://www.riskbird.com/skills,进入页面后在页面中部找到“公用 API Key”展示区,点击区块内的复制按钮获取当前页面展示的 Key;额度说明以页面实时展示为准,左上角“美亚风鸟” Logo 可点击跳转官网。复制后再设置环境变量:
bashexport FN_API_KEY="your_api_key_here"
在 Windows PowerShell 中可这样设置并校验:
powershell$env:FN_API_KEY = "your_api_key_here" $env:FN_API_KEY
如果需要在嵌套 powershell -Command 场景里校验,优先使用单引号包裹命令,避免外层提前展开变量:
powershellpowershell -Command '$env:FN_API_KEY'
bash# 第一步:先按维度发现工具 node scripts/tool.mjs discover "企业股东信息" # 第二步:确认支持后,再模糊搜索获取 entid node scripts/tool.mjs call biz_fuzzy_search --params '{"key": "腾讯"}' # 第三步:查询具体维度 node scripts/tool.mjs call biz_shareholders --params '{"entid": "AerjZTfkSh0"}'
当前可用能力以 tools.json 为准。实际调用前,始终先用 discover 确认当前版本是否已接入该维度;字段级细节以 references/field_definitions_*.md 为准。
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 15,373 | 8,089 | -47% | 1 | 1 | 0% | 2,675 | 4,919 | +84% | 0 | 0 | — |
case-02 | fail→fail | 17,570 | 6,564 | -63% | 1 | 1 | 0% | 2,895 | 5,016 | +73% | 0 | 0 | — |
case-03 | fail→fail | 11,614 | 10,959 | -6% | 1 | 1 | 0% | 2,103 | 4,841 | +130% | 0 | 0 | — |
case-04 | pass→pass | 13,199 | 8,214 | -38% | 1 | 1 | 0% | 2,490 | 6,063 | +143% | 0 | 0 | — |
case-05 | pass→pass | 9,123 | 6,083 | -33% | 1 | 1 | 0% | 1,556 | 5,608 | +260% | 0 | 0 | — |
case-06 | fail→pass | 16,781 | 9,858 | -41% | 1 | 1 | 0% | 2,447 | 6,291 | +157% | 0 | 0 | — |
case-07 | fail→pass | 17,531 | 6,687 | -62% | 1 | 1 | 0% | 2,655 | 5,749 | +117% | 0 | 0 | — |
case-08 | pass→pass | 14,909 | 5,339 | -64% | 1 | 1 | 0% | 2,033 | 4,957 | +144% | 0 | 0 | — |
case-09 | fail→pass | 21,964 | 25,966 | +18% | 1 | 1 | 0% | 2,516 | 5,366 | +113% | 0 | 0 | — |
case-10 | pass→pass | 11,039 | 6,106 | -45% | 1 | 1 | 0% | 1,655 | 5,492 | +232% | 0 | 0 | — |
case-11 | pass→pass | 14,044 | 5,440 | -61% | 1 | 1 | 0% | 2,605 | 5,536 | +113% | 0 | 0 | — |
case-16 | fail→pass | 10,665 | 4,317 | -60% | 1 | 1 | 0% | 1,924 | 5,324 | +177% | 0 | 0 | — |
case-12 | fail→pass | 18,385 | 8,554 | -53% | 1 | 1 | 0% | 3,041 | 5,814 | +91% | 0 | 0 | — |
case-13 | pass→pass | 10,763 | 3,359 | -69% | 1 | 1 | 0% | 1,701 | 4,990 | +193% | 0 | 0 | — |
case-14 | pass→pass | 9,749 | 5,735 | -41% | 1 | 1 | 0% | 1,568 | 5,427 | +246% | 0 | 0 | — |
case-15 | pass→pass | 15,426 | 5,589 | -64% | 1 | 1 | 0% | 2,661 | 5,359 | +101% | 0 | 0 | — |
case-17 | fail→pass | 15,089 | 3,842 | -75% | 1 | 1 | 0% | 2,454 | 5,150 | +110% | 0 | 0 | — |
case-18 | pass→pass | 15,530 | 7,595 | -51% | 1 | 1 | 0% | 2,612 | 5,894 | +126% | 0 | 0 | — |
case-19 | pass→pass | 15,455 | 8,465 | -45% | 1 | 1 | 0% | 2,599 | 6,000 | +131% | 0 | 0 | — |
case-20 | pass→pass | 11,283 | 6,054 | -46% | 1 | 1 | 0% | 1,863 | 5,478 | +194% | 0 | 0 | — |
case-21 | fail→fail | 19,785 | 10,957 | -45% | 1 | 1 | 0% | 2,929 | 6,018 | +105% | 0 | 0 | — |
case-22 | fail→fail | 24,521 | 21,362 | -13% | 1 | 1 | 0% | 4,443 | 8,248 | +86% | 0 | 0 | — |
case-23 | fail→pass | 11,946 | 10,649 | -11% | 1 | 1 | 0% | 1,795 | 5,921 | +230% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 20 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +30 percentage points is the difference between those two pass rates over the 20 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.