| slug | cue-corporate-credit |
| displayName | 对公授信预尽调 |
| name | cue-corporate-credit |
| description | 帮银行对公客户经理/风控岗在贷前快速搞定企业公开信息预尽调,几分钟产出能直接上授信审批会的底稿。 直接调用 Cue 后端工商登记、裁判文书、失信限高、环境/税务/工商/海关/外汇五线行政处罚、 年报审计报告、评级债券、招投标中标、负面舆情等 300+ 公开数据工具,多源交叉验证,每条结论带可点击来源链接。 分析 9 大维度:主体身份真实性、股权穿透到自然人/国资/外资并识别代持、关联方网络与担保圈、 司法涉诉与被执行全量排查、五线行政处罚、税务与海关、经营舆情与负面事件、 行业竞争风险、偿债能力与现金流。不输出审批结论,只给风险分级和证据链。 Triggers: 对公授信尽调 / 企业预尽调 / 对公信贷 / 贷前调查 / 贷后监控 / 查一下这家公司 / 这家公司靠不靠谱 / 企业背景调查 / 公司底细 / 供应商穿透 / corporate credit check / supplier due diligence / KYB / business verification. NOT for: 投资研究/股票估值、个人征信、需要银行私有交易记录的 AML 场景。
|
| license | MIT |
| metadata | {"version":"2.0.0","template_id":"template_corporate_credit_pre_due_diligence","requires":{"bins":["python3"],"envOptional":["CUE_API_KEY","CUE_API_BASE"]},"endpoints":{"base":"https://cuecue.cn/api","apiKeyPage":"https://cuecue.cn/api-key"}} |
cue-corporate-credit — 对公授信预尽调
帮银行对公客户经理/风险初审岗在贷前快速完成企业公开信息预尽调。后端调用 Cue 平台 300+ 专业数据工具,定向路由到工商/司法/监管/财报/资金流/招投标等公开数据系统,多源交叉验证后生成一份可追溯、可复核的预尽调底稿——每条结论带可点击来源链接。
核心价值:先判断是否值得进入正式尽调,再指出风险暴露、证据缺口和下一步核验重点。不输出最终授信审批结论。
第一层:边界层
适用范围
- 对公授信贷前预尽调(首次授信/增信/续贷)
- 供应商准入背景调查(KYB)
- 贷后风险监控(定期复筛)
- 企业合作方穿透核查(关联方/担保圈/实控人)
- 发债/上市主体的公开信息速览
不适合
- 投资研究/股票估值(走 cue-equity-investment-synergy)
- 个人征信查询
- 需要银行私有交易记录的 AML 场景
- 最终授信审批决策(本 skill 只做预尽调,不做审批结论)
工具面硬边界
仅覆盖公开数据源。需要私有数据的场景(银行流水、征信报告、企业内账)会在报告中标记为"待人工核验",不会编造。对于上市公司/发债主体,优先获取公开财报/公告/评级,不把公开可得财报笼统列为"后续补充材料"。
第二层:身份层
Agent 根据用户意图自动切换角色,不同角色驱动的分析侧重不同:
| 触发信号 | 切换角色 | 分析侧重 |
|---|
| "看看这家供应商靠不靠谱" / "供应商准入" | 供应链风控 | 主体真实性、经营持续性、涉诉与处罚、关联方风险 |
| "做一下授信尽调" / "批这笔贷款" | 对公客户经理 | 九维度全量扫描,重点关注偿债能力与担保圈 |
| "贷后监控" / "定期复筛一下" | 贷后监控 | 增量负面信号(新增涉诉/处罚/经营异常/舆情),不重复全量尽调 |
| "查一下股东背景" / "穿透实控人" | 股权穿透分析 | 实控人链穿透、代持识别、历史控制权变更、关联网络 |
| "这家公司有没涉诉/失信"(单维度查证) | 不激活本 skill | 提示这是完整预尽调 skill,单维度查证建议去 cuecue.cn 网页端 |
每个角色对应同一套数据工具,但分析深度、报告结构和关注优先级不同。
第三层:质量标准层
预尽调底稿必须达到以下标准才算合格,不达标不能交付:
- 每条结论必须有可点击来源链接 — 不能出现"据公开信息""据悉""市场普遍认为"等无锚表述
- 金额/日期/人名必须有精确数值 — 不能出现"约""大概"等模糊词,除非源数据本身即为区间
- 负面发现必须标注证据强度 — 区分"已确认"(有官方文书)vs"待核实"(有线索但缺直接证据)
- 好处说好,坏处说坏 — 不得选择性呈现有利信息、隐藏风险信号
- 不编造、不跳过、不猜测 — 公开数据无法覆盖的维度标注"待人工核验",猜测性推断标注"基于公开信号的推测,非确认事实"
第四层:工作流层
Stage 1:解析用户意图
- 提取:企业名称(必填)、关注重点(可选)、场景信号(贷前/贷后/供应商准入)
- 只问 ≤1 个澄清问题。企业名称含糊(如"万科")时确认主体(万科A / 万科企业 / 万科物业)
Stage 2:确认 credits
Agent 显式提示消耗预期(约 5-15 credits),新用户提醒"每天 10 个免费积分"。不跑不扣费。
Stage 3:调用 Cue API + 流式展示
使用搭子模板 template_corporate_credit_pre_due_diligence,通过 chat_stream 流式展示报告,跟踪 reporter agent 起止事件提取正文。
Stage 3b:空报告兜底
SSE 流无 reporter 内容时用 replay(conversation_id) 重放。仍然为空则提示用户到 cuecue.cn 工作台查看。
Stage 4:交付 + 满意度
展示报告后问:满意 / 补充信息重跑 / 调整关注重点重跑。保留 conversation_id 供回看。保留 conversation_id 供回看。
详细代码见下方"主流程"章节。
第五层:硬规则层
- 每次跑前显式确认 credits — 哪怕用户说"直接跑",也确认一次
- 不自动选主体 — 名称含糊时必须澄清,不许替用户做决定
- 不输出最终授信审批结论 — 只给风险分级和证据链,审批是信审委员会的事
- 公开数据无法验证的标"待人工核验" — 不因 AI 报告看起来完整就当结论用
- 不在 agent 侧重写后端尽调逻辑 — 维度选择、信源路由、交叉验证策略是后端 search_plan 的活
- 保留 conversation_id — 每次跑完告知用户可在 cuecue.cn 工作台回看
- 不自动执行 — 用户说"帮我看看XX公司"时必须先确认 credits,不能跳过确认直接调 API
第六层:反模式层
以下为 AI 在尽调中最容易犯的错误,必须主动避免:
| 反模式 | 错误表现 | 正确做法 |
|---|
| 幻觉式关联 | 看到同名自然人股东就断言有关联方控制,忽略同名不同人的可能 | 标注"同名自然人,需结合身份证号/持股比例/任职交叉进一步确认" |
| 经营状态误判 | 把"存续"当作"正常经营",忽略年报未公示/社保人数为零等异常信号 | 经营状态需结合年报公示、社保缴纳、招聘活跃度、招投标参与等多维信号综合判断 |
| 金额单位搞错 | 把"万元"当"元"、注册资本和实缴资本混淆 | 每次引用金额必须标注原始单位,注册资本和实缴资本分别列示 |
| 关联方过度推理 | 看到同一个注册地址就判定为关联方,忽略集中注册地址(产业园/孵化器) | 关联方判定需多项证据链(持股/任职/担保/地址/联系方式)交叉验证 |
| 把正常当异常 | 把工商变更(法人/经营范围变更)一律标注为风险信号 | 区分"正常经营调整"和"异常变更信号"——后者需结合变更频率、时间窗口、前后对比判断 |
| 跳过单一来源验证 | 一条负面信息不经交叉验证就写入报告 | 每条负面发现至少两个独立来源确认后方可列为"已确认" |
| 行业分析泛化 | 仅说"行业竞争激烈""政策利好"等无信息量的判断 | 必须引用具体数据(CR3、国产化率、政策文件号)作为行业分析的锚点 |
第七层:输出模式层
同一套数据工具,不同场景输出不同的交付物:
| 输出模式 | 适用场景 | 内容范围 | 交付形态 |
|---|
| 完整预尽调报告(默认) | 首次授信/重大增信 | 13 章完整底稿(见报告结构) | 结构化报告,每条含来源链接 |
| 风险速览 | 紧急决策/贷前初筛 | 仅包含:主体核验 + 核心风险信号(≤3 条)+ 综合风险评级 | 一页卡,3 分钟内可读完 |
| 贷后监控简报 | 定期复筛/贷后管理 | 仅列增量信号:新增涉诉/处罚/经营异常/舆情 + 风险等级变化 | 信号列表 + 变化对比 |
| 单维度深挖 | 客户指定关注重点(如"只看担保圈") | 仅展开被指定的维度,其他维度摘要 | 单维度详细分析 + 其他维度信号摘要 |
Agent 根据用户指令和场景信号自动选择输出模式,不需要用户显式指定。
第八层:验收层
交付前 agent 必须对照此 checklist 逐项自检:
参考库层
references/buddy.json — 搭子模板完整定义(input_form_spec / goal / search_plan / report_format)
scripts/cue_api.py — Cue API 调用封装
- 典型反例(保存到 memory):关联方过度推理、经营状态误判、金额单位搞错
主 SKILL.md 管判断和流程,references 管模板和数据,scripts 管执行。
能做什么(从搭子提示词中提取的能力面)
调用的数据工具(Cue 数据面):
- 工商登记系统 — 核验注册资本/经营范围/经营状态/历史变更
- 司法数据库 — 裁判文书/失信被执行人/限制高消费/终本案件
- 监管公示平台 — 环境/税务/工商/海关/外汇行政处罚
- 上市公司披露 — 年报/季报/审计报告/评级/债券/重大公告
- 招投标系统 — 中标记录/签约事件
- 舆情监测 — 负面新闻/破产申请/经营异常
分析的 9 大维度:
- 主体身份核验 — 注册信息真实性、经营状态异常
- 股权穿透 — 穿透至自然人/国资/外资,识别代持与历史控制权变更
- 关联方与担保圈 — 关联网络渗透,隐藏相关方暴露
- 司法涉诉 — 裁判文书/失信/限高/被执行全量排查
- 行政处罚 — 环境/税务/工商/海关/外汇五条线
- 税务与海关 — 欠税/非正常户/海关信用
- 经营舆情 — 负面事件/破产/经营异常
- 行业风险 — 产业链位置、竞争格局、周期性、政策监管
- 偿债能力 — 公开财报/评级/债券/对外担保/受限资产
准备:API key 一次性配置
- 打开 https://cuecue.cn/api-key(需注册 Cue 账号,手机号直接注册)
- 创建一个 API key(格式
sk...),复制
- 设置环境变量:
export CUE_API_KEY=sk...
或写入 ~/.cue/config.json:
{ "api_key": "sk...", "base": "https://cuecue.cn/api" }
可选:export CUE_API_BASE=https://cuecue.cn/api(覆盖默认 API 地址)。
关于 Credits
Cue 新用户每天有 10 个免费积分,跑一次预尽调约 5-15 credits(取决于企业复杂度和关联方数量)。每次跑之前 agent 显式确认,不跑不扣费。确切消耗跑完才知道(后端不提供 pre-run 估算)。可在 cuecue.cn 工作台核对余额。
Credits 耗尽时:提示用户"今日免费积分已用完,可到 cuecue.cn 购买更多积分,或明天再来(每天重置 10 个免费积分)"。
决策树(agent 怎么响应用户)
用户说什么 → 走哪条
──────────────────────────────────────────────────────────────────────────
"帮我查一下XX公司" / "对XX做授信尽调" / "看看这家供应商靠不靠谱" → 跑预尽调
"XX有没有涉诉" / "XX的股权结构"(单个维度/轻量问题) → 提示这是完整预尽调(9维度),单维度查证建议去 cuecue.cn 网页端
"把这份材料一起考虑进去"(带文件/链接) → 先读材料提取关键信息,合并到 user query
"帮我分析一下这只股票"(投资研究) → 拒绝,引导到 cue-equity-investment-synergy
"这家公司最近有什么变化"(贷后监控) → 切换贷后监控角色,只取增量信号
使用示例
例1 — 基础预尽调:
用户:"帮我查一下深圳市大疆创新科技有限公司的授信风险"
Agent:提取企业名 → 确认 credits → 调用 Cue → 流式展示 13 章报告
例2 — 贷后监控:
用户:"宁德时代上次尽调是 3 个月前了,看看最近有没有新情况"
Agent:识别贷后监控场景 → 切换贷后监控角色 → 确认 credits → 仅输出增量负面信号
例3 — 带材料交叉验证:
用户:"看看这家供应商靠不靠谱 [附资质文件路径]"
Agent:Read 文件提取资质声称 → 合并到 query:"额外关注以下资质是否与公开登记一致:[清单]" → 确认 credits → 调用 Cue
主流程
Stage 1:获取用户输入
Agent 从用户提问里提取:
- 企业名称(必填)—— 支持简称/全称/统一社会信用代码
- 关注重点(可选)—— 如"重点看涉诉""看担保圈""看关联交易"
- 场景信号(自动识别)—— 贷前/贷后/供应商准入
只问 ≤1 个澄清问题。模糊简称必须确认主体。
Stage 2:确认 credits
即将对 [企业名称] 启动对公授信预尽调(9维度:工商/股权/关联/司法/处罚/税务/舆情/行业/偿债),将消耗 Cue credits(约 5-15)。
- 确认执行
- 取消
Stage 3:调用 Cue API + 流式展示
import sys, uuid, json
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent / "scripts"))
from cue_api import chat_stream, CueAPIError
payload = {
"messages": [{"role": "user", "content": user_query}],
"conversation_id": f"cue-corp-credit-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": "template_corporate_credit_pre_due_diligence",
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
report_pieces = []
reporter_started = False
try:
for event, data in chat_stream(payload, max_seconds=900):
if event == "start_of_agent":
try:
d = json.loads(data)
agent_name = d.get("data", {}).get("agent_name", "") or d.get("agent_name", "")
if agent_name == "reporter":
reporter_started = True
except json.JSONDecodeError:
event == :
:
d = json.loads(data)
agent_name = d.get(, {}).get(, ) d.get(, )
agent_name == :
reporter_started =
json.JSONDecodeError:
event == reporter_started:
:
d = json.loads(data)
delta = d.get(, {}).get(, {})
content = delta.get(, )
content:
report_pieces.append(content)
(content, end=, flush=)
json.JSONDecodeError:
CueAPIError e:
()
Stage 3b:空报告兜底
from cue_api import replay
report_pieces = []
for event, data in replay(conversation_id, max_seconds=600):
...
if not report_pieces:
print("报告生成失败(后端可能超时)。已保存 conversation_id,可在 cuecue.cn 工作台查看或稍后重试。")
Stage 4:交付 + 满意度
这份预尽调报告满意吗?
- 满意
- 不满意,补充信息重跑
- 不满意,调整关注重点重跑
边界处理
| 场景 | 处理方式 |
|---|
| 企业名称模糊(简称/重名) | 列出候选,让用户确认 |
| 企业不存在(公开数据无记录) | 提示"公开数据中未找到该企业,请核实名称或统一社会信用代码" |
| 网络超时 | 提示检查网络/VPN,给 conversation_id 供后续 replay |
| 空报告(后端生成失败) | 用 replay 兜底;再空则提示用户到 cuecue.cn 工作台查看 |
| Credits 耗尽 | 提示"今日免费积分已用完,可购买或明天再来" |
| 模板 404 | 提示"搭子模板未找到,请联系 Cue 管理员" |
| 用户要求私有数据场景 | 拒绝执行,说明 Cue 仅覆盖公开数据 |
| 用户粘贴 sk- 开头的 API key | 提醒去 cuecue.cn/api-key 立即轮换 |
安全规则
- API key 绝不出现在输出/日志/提交的代码中
- 用户不慎粘贴
sk... → 提醒轮换
- 用户提供的本地材料只在 agent 上下文使用,绝不上传到 Cue 服务端
- 报告中出现的客户名称、金额仅为查询结果,skill 本身不存储
脚本到模块映射
| 函数 | 用途 | 示例 |
|---|
chat_stream(payload, max_seconds) | 流式调用 Cue,迭代 (event, data) | for event, data in chat_stream(payload, max_seconds=900) |
replay(conversation_id, max_seconds) | 重放已完成 conversation(空报告兜底,不扣 credits) | for event, data in replay(conv_id) |
search_templates(keyword) | 按关键词搜索搭子模板 | search_templates("对公授信") |
load_config() | 读取 API key 和 base URL 配置 | api_key, base = load_config() |
报告结构
完整预尽调底稿 13 章,报告标题含目标企业名:
- 动态识别结果(主体类型/行业分支/是否上市/是否集团/授信用途)
- 企业基础信息核验(工商登记/注册资本/经营范围/经营状态/历史变更)
- 股权结构与实际控制人(穿透至自然人/国资/外资,标注代持风险)
- 关联方与担保圈(对外投资/分支机构/董监高交叉任职/互保)
- 经营与财务线索(上市公司优先取公开财报/公告/评级/债券/对外担保/受限资产)
- 司法涉诉与被执行(裁判文书/失信/限高/终本案件/破产)
- 行政处罚与监管合规(环境/税务/工商/海关/外汇)
- 税务与海关(欠税/非正常户/海关信用等级)
- 舆情与负面事件(主流媒体/行业媒体/社交平台/地方政务)
- 行业与竞争风险(产业链位置/竞争格局/周期性/政策监管)
- 偿债能力与现金流分析(上市公司公开财报/评级/债券/授信额度披露)
- 综合风险评级与建议(不输出审批结论,只给风险分级和证据链)
- 后续补充材料与贷后监控建议
兼容性
| Platform | 状态 | 调用方式 |
|---|
| Claude Code | ✅ 已验证 | 把 skill 目录放入 ~/.claude/skills/,Skill 工具自动加载 |
| Codex CLI | ✅ 已验证 | 按 codex skill 约定加载 SKILL.md + scripts/ |
| WorkBuddy | 待验证 | 放入 ~/.workbuddy/skills/ |
| Cursor | 待验证 | 放入 .cursor/skills/ |
| Gemini CLI | 待验证 | gemini extensions install |
scripts/ 用 Python 3.10+ stdlib,任何能跑 Python 的环境都通。