name: admission-rules-scan description: > 信贷产品准入规则扫描技能。基于客户画像与目标产品的风控规则库,逐条匹配准入条件,输出"符合/不满足/需确认"三态评估报告,标注一票否决项与差距改进建议。用于授信方案设计阶段的主动预检,帮助客户经理提前识别准入障碍。当用户需要评估客户是否符合某产品准入条件、扫描准入规则、判断客户资质,或说"这个客户能做流贷吗"、"准入扫一下"、"产品准入评估"、"admission scan"、"规则扫描"、"准入检查"时使用此技能。不适用于:贷后管理、风险分类调整、不良资产处置、授信审批决策、或无具体客户背景的一般风控咨询。 target_role: 对公客户经理、信贷审批官、风险经理 business_domain: 信贷审批 > 贷前调查 > 准入评估 risk_level: high version: 2.0.0 status: review data_sources: - 客户画像(ECIF系统、征信报告、财务报表) - 产品规则库(信贷系统产品管理办法、风控引擎规则) - 工商数据(国家企业信用信息公示系统) - 司法数据(中国执行信息公开网) upstream_skills: - ai-risk-planning downstream_skills: - credit-due-diligence
L3 准入规则扫描
根据客户画像和目标信贷产品的风控规则库,判断客户是否满足准入条件,输出结构化扫描报告。
执行流程 (Workflow)
交互模式:模式 A - 报告生成型(Report Generation)
当用户要求评估客户产品准入条件时,按以下流程执行:
步骤 0:数据确认与验证(先读后写)
- 确认客户身份:提取客户名称或ID
- 确认目标产品:提取产品名称或编码
- 检查必填字段:客户名称、目标产品、申请授信金额(建议)
- 运行验证脚本:
python scripts/validate_admission_scan.py --check-customer --check-product - 若必填字段缺失,输出缺失清单,要求用户补充,停止后续流程
- 验证通过后进入步骤1
📋 数据来源:
user_upload📋 执行主体:ai📋 确认机制:none⚠️ 强制指令:不得跳过必填字段检查,必须确认客户和产品信息完整
步骤 1:加载客户画像
整合客户多维度信息,形成完整的准入评估基础数据。 对接提示:映射到贵行客户信息系统(ECIF)、征信查询接口、客户全景视图,或等效数据聚合工具
基础信息维度
- 企业工商:所属行业、经营年限、注册资本(认缴/实缴)、法人/实控人
- 经营规模:年营业收入、员工人数、资产总额、主要业务区域
- 财务状况:资产负债率、流动比率、速动比率、近2年净利润趋势
信用记录维度
- 征信报告:未结清贷款、逾期记录(近2年)、对外担保余额、征信查询频次
- 行内记录:历史授信使用情况、还款表现、是否存在关注类/不良类记录
关联信息维度
- 担保关系:对外担保总额、被担保方信用状况、是否存在互保/联保
- 关联方风险:实控人名下其他企业的涉诉/失信/经营异常情况
画像完整性自检
- 如关键字段缺失(如营收数据、征信报告),记录缺失项并标记为"需确认"来源,不得跳过或臆造
📋 数据来源:
system_api(ECIF系统、征信接口、工商数据) 📋 执行主体:ai📋 确认机制:none
步骤 2:加载产品准入规则
获取目标产品绑定的全部风控规则,按优先级排序。 对接提示:映射到贵行产品规则库/风控引擎规则接口,或等效规则管理工具
规则优先级
- 固定项(P0):全量客户必检的基础准入条件,如经营年限≥X年、征信无当前逾期
- 行业项(P1):针对特定行业的准入限制,如房地产、两高一剩行业的额外要求
- 针对项(P2):针对个案的补充规则,如大额授信额外要求、关联交易限制
规则分类 | 规则类别 | 典型示例 | 数据来源 | |---------|---------|---------|| | 主体资格 | 成立年限、注册资本实缴比例、法人变更频率 | 工商数据 | | 行业准入 | 鼓励类/限制类/淘汰类行业判断 | 产业政策 + 行内白名单 | | 财务门槛 | 资产负债率上限、营收下限、净利润要求 | 财报/征信 | | 信用记录 | 无当前逾期、近2年逾期次数上限 | 征信报告 | | 集中度 | 单一客户授信集中度、集团授信集中度 | 行内信贷系统 | | 合规要求 | 环保达标、安全生产许可、特许经营资质 | 外部监管数据 |
📋 数据来源:
system_api(信贷系统产品管理办法、风控引擎规则) 📋 执行主体:ai📋 确认机制:none
步骤 3:一票否决前置扫描(门控步骤)
门控步骤:此步骤触发任一A1-A6条件,立即终止后续规则匹配,直接输出"准入不通过"
一票否决条件(A1-A6)
| 编号 | 触发条件 | |------|---------|| | A1 | 企业或实控人当前存在未结清逾期(征信 M2 及以上) | | A2 | 企业属于监管明令淘汰类行业,且无合规转型证明 | | A3 | 企业已被列入失信被执行人名单,或实控人被限制高消费 | | A4 | 近 2 年内存在骗贷、抽逃资金、虚假报表等严重失信行为记录 | | A5 | 对外担保总额 > 净资产 100%,或存在风险互保/联保圈 | | A6 | 企业或实控人涉及洗钱、恐怖融资等合规黑名单 |
门控路径:
- ❌ 触发任一A1-A6 → 立即停止,输出"准入不通过"+触发条件+进入步骤4(生成扫描报告)
- ✅ 未触发任何一票否决 → 进入步骤4(逐条规则匹配)
📋 数据来源:
system_api(征信报告、司法数据、合规黑名单) 📋 执行主体:ai📋 确认机制:none⚠️ 强制指令:必须执行此步骤,不得跳过一票否决检查,不得因"客户资质好"而忽略
步骤 4:逐条规则匹配
对每条规则执行三态判断,严格按阈值比对
匹配结果定义 | 结果 | 判定标准 | 输出要求 | |------|---------|---------|| | ✅ 通过 | 客户条件完全满足规则阈值 | 列出规则名及匹配值 | | ❌ 不满足 | 客户条件不满足规则阈值 | 列出规则名、阈值要求、实际值、差距 | | ⏸️ 需确认 | 关键信息缺失,无法判断 | 列出缺失字段及建议补充材料 |
匹配执行要点
- 每条规则须记录:规则名称、规则类别(P0/P1/P2)、阈值要求、客户实际值、匹配结果、差距(如有)
- 财务类规则使用最近一期经审计财报数据,如无则标注"未审计"风险
- 行业分类以国标 GB/T 4754 为准,与行内白名单交叉校验
📋 数据来源:
context(客户画像、产品规则) 📋 执行主体:ai📋 确认机制:none⚠️ 强制指令:不得模糊判断,所有数值类规则必须精确到小数点后两位,必须展示计算过程
步骤 5:生成扫描报告
汇总匹配结果,输出结构化评估报告
执行步骤4后,进入步骤5,按Output Format章节要求生成完整报告。
📋 数据来源:
context(匹配结果) 📋 执行主体:ai📋 确认机制:none
输出格式 (Output Format)
本输出可被 credit-due-diligence Skill 解析使用
使用 assets/admission-scan-template.md 模板。扫描报告必须包含以下6个章节:
| 章节 | 内容 | 下游可解析字段 |
|---|---|---|
| 1.总评 | 准入结论、关键指标速览 | admission_result(enum)、key_indicators(array) |
| 2.符合项 | 通过规则列表 | passed_rules(array)、passed_count(int) |
| 3.不符合项 | 不满足规则列表+差距分析 | failed_rules(array)、failed_count(int)、gaps(array) |
| 4.需确认项 | 缺失字段及补充材料清单 | pending_rules(array)、missing_fields(array) |
| 5.风险提示 | 政策/集中度/趋势风险 | risk_warnings(array) |
| 6.改进建议 | 短期/中期/结构性建议 | improvement_suggestions(array) |
免责声明要求: 报告末尾必须包含以下声明(引用 shared/disclaimer-template.md 模板):
---
> ⚠️ 免责声明:本扫描结果仅供授信方案设计参考,不构成最终审批意见。实际审批结果以信贷审批委员会决议为准。
> 数据来源:[列出数据源及时间戳] | 规则库版本:[版本号] | 扫描时间:[YYYY-MM-DD HH:MM]
核心约束 (Constraints)
监管依据
- 《商业银行贷款业务管理办法》(银监会令2010年第2号)—— 贷款对象与条件
- 《商业银行信用风险内部评级体系监管指引》—— 客户评级与准入标准
- 《商业银行大额风险暴露管理办法》(银保监会令2018年第1号)—— 集中度管控
- 银行内部信贷政策与产品管理办法 —— 具体准入规则来源
硬性执行约束
- 规则优先序:固定项(全量客户必检) > 行业项(行业专属) > 针对项(个案补充),按序执行
- 一票否决前置:先扫描 A1-A6 一票否决条件,触发即终止后续规则匹配,直接输出"准入不通过"
- 阈值严格对照:规则中的量化阈值(如营收下限、负债率上限)须精确比对,不得模糊判断
- 信息不足即标"需确认":缺少数据时不得推断为"通过"或"不满足",须明确标记并列出补充材料
- 差距量化:不符合项须给出具体差距数值(如"要求营收≥5000万,实际约3200万,差距1800万")
- 禁止跳过步骤:不得跳过步骤0(数据确认)和步骤3(一票否决检查),必须执行完整流程
- 红线执行强制:如触发任何一票否决条件(A1-A6),必须立即停止后续匹配,不得因"客户资质好"而忽略
审计追踪 (Audit Trail)
每次执行后生成审计日志 audit/{customer_name}_{date}_admission_scan_audit.json:
{
"skill_name": "admission-rules-scan",
"skill_version": "2.0.0",
"execution_time": "2026-05-05T17:00:00+08:00",
"customer_name": "[客户名称]",
"operator": "[客户经理姓名]",
"steps": [
{
"step": "数据确认与验证",
"executor": "ai",
"data_source": {"type": "user_upload"},
"result": "pass",
"details": "必填字段完整,客户名称和产品名称已确认"
},
{
"step": "一票否决前置扫描",
"executor": "ai",
"data_source": {"type": "system_api"},
"result": "pass",
"details": "A1-A6均未触发"
},
{
"step": "逐条规则匹配",
"executor": "ai",
"data_source": {"type": "context"},
"result": "pass",
"details": "P0规则8条(通过6条,不满足1条,需确认1条),P1规则3条(通过3条),P2规则2条(通过2条)"
}
],
"admission_result": "准入通过",
"triggered_veto": [],
"compliance_check": {
"all_rules_scanned": true,
"threshold_exact_match": true,
"gap_quantified": true
},
"log_retention_years": 3
}
审计日志保留期限:至少 3 年。
踩坑记录 (Gotchas)
#1:一票否决检查被跳过导致正式审批被否决
- 症状:准入扫描显示"通过",但正式授信审批时被一票否决。
- 原因:扫描时未严格执行A1-A6检查,或使用了过期的征信数据。
- 解决:步骤3增加强制指令"必须执行此步骤,不得跳过一票否决检查",审计日志记录triggered_veto字段。
#2:差距分析不具体,客户经理无法制定改进方案
- 症状:不符合项仅显示"不满足",未给出具体差距数值。
- 原因:未严格执行差距量化要求。
- 解决:质量要求第4条增加"必须给出差距的绝对值和相对比例"。
#3:需确认项被臆测为通过
- 症状:关键字段缺失时,模型推断为"通过",导致风险评估不准确。
- 原因:未严格执行信息不足即标"需确认"原则。
- 解决:步骤1增加画像完整性自检,约束第4条增加"不得推断为通过或不满足"。
#4:规则库版本未标注,扫描结果无法追溯
- 症状:同一客户不同时间扫描结果不一致,但无法确认是规则变化还是客户变化。
- 原因:未记录规则库版本号。
- 解决:输出格式强制要求标注"规则库版本"和"扫描时间"。
示例 (Examples)
示例1:标准制造业企业流动资金贷款准入扫描
用户输入:
客户:XX机械制造有限公司
产品:流动资金贷款
申请金额:5000万元
行业:C34 通用设备制造业
Skill 执行流程:
- 步骤0:确认客户名称、产品名称、申请金额
- 步骤1:加载客户画像(ECIF系统、征信报告、财务报表)
- 步骤2:加载流动资金贷款产品规则库(P0/P1/P2)
- 步骤3:执行一票否决扫描(A1-A6)→ 未触发
- 步骤4:逐条规则匹配→ P0(6/8通过),P1(3/3通过),P2(2/2通过)
- 步骤5:生成扫描报告→ 准入通过(2条不满足,1条需确认)
输出要点:
- 总评:准入通过
- 不符合项:资产负债率超标(要求≤70%,实际75%,差距5%)
- 需确认项:缺最近一期审计报告
- 改进建议:短期补充审计报告,中期降低负债率
示例2:淘汰类行业客户准入扫描(触发一票否决)
用户输入:
客户:XX造纸厂
产品:流动资金贷款
申请金额:3000万元
行业:C22 造纸和纸制品业(淘汰类)
Skill 执行流程:
- 步骤0-2:正常执行
- 步骤3:执行一票否决扫描→ 触发A2(淘汰类行业,无合规转型证明)
- 立即停止,输出"准入不通过"
- 步骤5:生成扫描报告→ 准入不通过(A2触发)
输出要点:
- 总评:准入不通过
- 一票否决:A2触发(淘汰类行业)
- 改进建议:结构性障碍(建议更换产品或提供合规转型证明)
非功能范围 (Out of Scope)
- 本 Skill 不执行授信审批决策,仅提供准入预检参考
- 本 Skill 不直接修改客户画像或产品规则库
- 本 Skill 不处理贷后管理、风险分类调整、不良资产处置
- 本 Skill 不生成正式的尽职调查报告(请使用 credit-due-diligence Skill)
- 如果用户请求以上内容,明确告知并建议使用合适的工具或联系架构团队。
质量要求
- 规则覆盖完整:P0/P1/P2 三类规则须全部扫描,不得遗漏
- 阈值精确比对:数值类规则精确到小数点后两位,文字类规则逐字对照
- 一票否决不漏检:A1-A6 须在规则匹配前单独扫描,触发即终止
- 差距量化具体:不符合项须给出差距的绝对值和相对比例
- 信息不足不推断:“需确认”项不得臆测为通过或不满足
- 改进建议可操作:建议须具体、可执行、有时限,不得泛泛而谈
- 报告时效标注:规则库版本号、扫描时间须明确标注
- 风险提示前瞻性:不仅报告当前状态,还须提示趋势性风险
- 数据脱敏:输出报告中不得包含真实客户身份证号、银行账号等敏感信息,须使用占位符
- 数据时效性:所有数据须标注采集时间,超过30天的数据须标注“可能过期”
数据脱敏规则
- 客户名称:使用“[客户名称]”占位符
- 身份证号:使用“[证件号码]”占位符
- 银行账号:使用“[银行账号]”占位符
- 授信金额:使用“[金额]”占位符(测试用例除外)
- 案件编号:使用“[案件编号]”占位符
降级策略
| 降级场景 | 处理措施 | 输出标注 |
|---|---|---|
| ECIF系统不可用 | 使用用户上传的客户画像,标注数据来源 | “数据来源:用户上传(非ECIF)” |
| 征信接口超时 | 跳过征信类规则,标记“需确认” | “征信数据不可用,X条规则需确认” |
| 产品规则库版本缺失 | 使用最新版本,标注版本号 | “规则库版本:最新(未指定)” |
| 工商数据不可用 | 使用用户上传的工商资料,标注数据来源 | “工商数据:用户上传” |
典型应用场景
| 场景 | 扫描重点 |
|---|---|
| 新客户首次申请授信 | 全规则扫描,重点关注主体资格、行业准入、信用记录 |
| 客户申请升级产品(如从小额升级到大额流贷) | 重点扫描新增规则(P2针对项),关注集中度、财务门槛变化 |
| 客户申请跨产品线授信 | 新产品的行业项(P1)和固定项(P0)重新扫描 |
| 规则库更新后老客户复核 | 对比新旧规则差异,识别新增的不符合项 |
| 授信方案设计阶段预检 | 快速扫描关键规则(P0 + 相关P1),评估可行性 |
输入参数说明
| 参数 | 级别 | 说明 |
|---|---|---|
| 客户名称/ID | 必填 | 用于加载客户画像 |
| 目标产品名称/编码 | 必填 | 用于加载对应规则库 |
| 申请授信金额 | 建议 | 影响集中度规则和针对项(P2)的触发 |
| 申请期限 | 选填 | 影响部分产品的期限相关规则 |
| 担保方式 | 选填 | 影响担保类规则的匹配 |
| 征信授权状态 | 建议 | 决定是否执行征信类规则扫描 |
| 规则库版本 | 选填 | 默认使用最新版本,可指定历史版本用于对比 |