visit-prep-new
- 简介
- 输入客户号自动生成拜访准备报告,含双层存续诊断、CIO摘要、市场热点、适配产品推荐及专属RM话术。
- 触发词
- 拜访前准备,拜访准备v2,visit prep,见客户前
- 分发渠道
- CRM Claude、ARK Engine
- 功能测试
- — · 业务评审:—
- 技能包文件
- visit-prep-new/SKILL.md、visit-prep-new/references/kyh-shared-framework.md
SKILL.md 全文
Frontmatter
| name | visit-prep-new |
|---|---|
| description | | |
拜访前准备 Skill v2.3 · 编排升级版(visit-prep-new)
⚠️ 本 Skill 名为>visit-prep-new,与 plugin 内旧版visit-prep并存。RM 用/visit-prep-new、「拜访准备v2.3」触发。
v2.3 视觉精简:L3 只展示真链接附录卡片;产品池排序提示不再出现在面向 RM 的章节标题中。
概述
根据客户集团号,自动从 CRM 拉取三地持仓数据,对每只关键持仓自动调用对应资产类别的 KYH 深度存续分析,再结合 CIO 报告、实时市场搜索、产品货架,生成一份完整的中文拜访准备 HTML 报告(含产品级健康度评级矩阵 + 单产品完整存续报告附录链接)。
---
使用前提
- CRM MCP(cn / hk / sg 三套)已连接
- oliveam-mcp 已连接(产品货架 + 海外私募二级存续)
- Gopher MCP(
95cbe625)已连接(人民币 PE/FOF 存续) - Olive MCP(
64977b91)已连接(人民币私募证券存续) - CIO 报告已上传至「Noah CIO Report」Project Files(一次性配置)
- 4 个 KYH Skill 已升级到支持「精简模式 / 附录模式」:
- kyh-rmb-equity-holding-analysis
- kyh-rmb-upright-holding-analysis
- kyh-usd-hedge-fund-analysis
- kyh-usd-pe-fund-analysis
- 共享框架已就位:
references/kyh-shared-framework.md(评级/话术/视觉 token 全部对齐)
---
执行流程总览
Step 0 收集输入(集团号) Step 1 拉取客户全量数据(KYC / 三地持仓 / 服务记录 / 动态)— 并行 Step 1.5 ⭐ 资产分类路由(识别 TOP 5-10 关键持仓 + 打 KYH 标签) Step 1.6 ⭐ KYH 精简模式并行调用(深度评级 + 一句话判断 + RM message) Step 1.7 ⭐ KYH 附录模式并行调用(生成每只产品的完整 HTML 存续报告) Step 2 读取 CIO 报告(从 Project Files) Step 3 搜索近期热点事件 — 并行 Step 4 获取产品推荐 — 并行 Step 4.2 Strategic Reading 深层洞察 Step 4.5 生成谈话策略 Step 5 生成 HTML 主报告(含 L1/L2/L3/L4 四层存续诊断)
集团号确认后,立即并行启动 Step 1,Step 1.5/1.6/1.7 在 Step 1 持仓数据返回后立刻触发,与 Step 2/3/4 同时跑,最大化并行度。
---
Step 0 — 收集输入
检查对话中是否已有: 1. 客户集团号:如没有,向顾问询问
集团号确认后,立即并行执行 Step 1-4,不要等待每步完成再开始下一步。
---
Step 1 — 拉取客户全量数据(全部并行调用)
以下所有 MCP 调用同时并行发起,不要串行等待:
1a. 客户 KYC 画像
cn_get_customer_kyc(集团号)提取:客户姓名、风险等级、投资偏好、AUM 量级、KYC 有效期
⚠️ 客户姓名脱敏规则(必须执行): 从 CRM 获取到客户全名后,在报告中全程只显示「姓氏 + 总」,例如:张三 → 张总。 此规则适用于报告标题、正文、文件名、对话回复等所有出现客户姓名的地方。
1b. 三地存续持仓(国内 + 香港 + 新加坡)
第一轮:通过 CN CRM MCP 同时拉取三地(并行)
cn_get_domestic_holdings(集团号) cn_get_hk_holdings(集团号) cn_get_sg_holdings(集团号)
第二轮:Fallback — 如果 HK 或 SG 数据缺失,通过对应地区 CRM MCP 补拉
⚠️ Fallback 触发条件(必须严格判断):
- 返回为空(
null、[]、{}) - 返回报错
- 返回内容包含
"暂无数据"等文字 data字段为字符串而非数组/对象- 返回的产品列表长度为 0
关键:{"data": "暂无数据"} 不等于「客户没有持仓」,必须走 Fallback 去对应地区 CRM 再拉一次。
hk_get_hk_holdings(集团号) ← 香港持仓 Fallback sg_get_sg_holdings(集团号) ← 新加坡持仓 Fallback
Fallback 调用可同时并行发起。只有当 Fallback 也返回空时,才能最终判定「该地区确实无持仓」。
合并逻辑:
- 同一地区两个来源都有数据时,优先使用字段更完整的那个
- 三地数据合并为一份全景持仓表,每条产品标注所属地区(🇨🇳/🇭🇰/🇸🇬)
1c. 客户服务记录
cn_get_service_records(集团号)
1d. 客户近期动态
cn_get_customer_dynamics(集团号)
---
Step 1.5 — ⭐ 资产分类路由(新增)
对 Step 1b 拉到的所有持仓产品逐条打 KYH 标签,依据 references/kyh-shared-framework.md 第 8 节的路由规则:
| 判断维度 | 路由到 | |---------|--------| | 国内 · 股权/PE/FOF/有限合伙/母基金 | kyh-rmb-equity | | 国内 · 私募证券/量化/CTA/多头/中性/宏观 | kyh-rmb-upright | | 海外 · 对冲基金/Hedge/L/S/Multi-Strategy/相对价值 | kyh-usd-hedge | | 海外 · PE/S 基金/地产/基础设施/并购/机会型 | kyh-usd-pe | | 公募/保险/信托/标准化/货基 | 不路由,标注「不参与深度分析」 |
TOP N 关键持仓筛选规则: 1. 按 AUM 占客户总持仓比例降序排列 2. 从大到小累加,累计占比 ≥ 80% 即截断 3. 上限 10 只,下限 5 只 4. 30 天内到期 / KYC 风险等级不匹配 / 近期客户主动询问的产品 → 强制纳入 TOP N(即使占比不达标)
输出:top_holdings_list[],每条包含:
- 产品名称、产品代码、所属地区、币种、AUM 金额、AUM 占比
- 已分配的 KYH 标签(
asset_class) - 是否「强制纳入」标记 + 原因
---
Step 1.6 — ⭐ KYH 精简模式并行调用(新增)
对 top_holdings_list 中的每只产品,并行调用对应 KYH 的「精简模式」:
kyh-rmb-equity-holding-analysis( product_identifier=<产品代码>, mode="concise", client_id=<集团号> )
并行度上限:5(避免 MCP 压力过大) 单只超时:60s
每个 KYH 返回标准化 JSON(字段定义见 references/kyh-shared-framework.md 第 2 节):
{
"product_name": "...",
"product_code": "...",
"asset_class": "...",
"region": "...",
"rating": "🟢|🟡|🟠|🔴",
"rating_label": "...",
"headline": "一句话判断 ≤25字",
"key_metrics": { "primary": "...", "secondary": "...", "tertiary": "..." },
"key_risks": ["≤30字", "≤30字"],
"rm_message": "...",
"next_action_date": "YYYY-MM-DD",
"data_as_of": "YYYY-MM-DD",
"data_source": "...",
"full_report_path": null
}
失败降级:MCP 报错或超时时返回 rating=null, headline="数据获取中",不阻塞整体报告。失败的产品在 L2 矩阵中标注「数据待补充」。
汇总所有 JSON → concise_kyh_results[],供 Step 5 渲染 L2 评级矩阵。
---
Step 1.7 — ⭐ KYH 附录模式并行调用(v2.2 强化触发)
v2.2 关键升级:原 v2.0/v2.2 只对「🟠/🔴 + 30 天内到期」触发附录,实测覆盖太窄。本版主动展开触发面——只要满足下表任一条件,就必须调用附录模式生成完整 HTML(不允许只输出"建议手动触发"的文本):
| 触发条件(任一命中即生成附录) | 说明 | |------|------| | 评级 🟠 边际减仓 | v2.0 原条件 | | 评级 🔴 建议赎回 | v2.0 原条件 | | 90 天内到期 | 原 30 天放宽到 90 天,覆盖拜访讨论窗口 | | TVPI < 1.0 | 账面亏损产品,客户必问 | | 期限已超期或进入退出期最后 1 年 | 退出节奏是核心议题 | | 底层有项目部分退出 / 已上市未减持 | 清算路径需要可视化 | | 净值历史 80% 分位以上 | 高位风险产品 | | 当前回撤超过产品说明书阈值 | 已触发风险硬规则 | | 客户近 30 天在 APP 中浏览过该产品/类似产品 | 客户已在关注 | | RM 显式指定的产品(输入时附带的关注项) | 人工优先级 |
Top N 产品中如无任何产品命中以上条件,至少对 AUM 占比最大的 1 只 生成附录(确保 L3 区至少有 1 个真实可点击的报告)。
调用方式(不变):
kyh-rmb-equity-holding-analysis( product_identifier=<产品代码>, mode="appendix", client_id=<集团号>, client_surname="<姓氏>", output_dir="/mnt/user-data/outputs/visit-prep-appendix/<集团号>/" )
附录命名规范:
{客户姓氏总}_{产品简称}_存续报告_{YYYYMMDD}.html
例:张总_黑石地产S_存续报告_20260527.html并行度与超时(与 Step 1.6 一致):
- 并行度上限 5
- 单只超时 90s(附录模式比精简模式重,时限放宽)
- 任一超时/报错 → 该产品在
appendix_paths[]中标记path=null, status="failed"
返回 appendix_paths[]:
[
{
"product_name": "黑石地产S基金",
"product_code": "L03215",
"full_report_path": "/mnt/user-data/outputs/visit-prep-appendix/<集团号>/张总_黑石地产S_存续报告_20260527.html",
"status": "ok",
"trigger_reason": "评级 🟠 + TVPI 1.07x 接近账面平衡"
},
{
"product_name": "XXX",
"product_code": "X12345",
"full_report_path": null,
"status": "failed",
"trigger_reason": "评级 🔴",
"failure_note": "kyh-rmb-equity MCP 超时"
}
]
强约束: Step 1.7 即使失败,也必须返回 appendix_paths[] 数组(即使所有 path 都是 null)。后续 Step 5 的 L3 卡片渲染规范会根据 status 字段决定按钮交互形态(见 L3 章节)。
---
Step 2 — 查询 CIO 报告(并行 · 三地兜底)
v2.2 升级:从「读 Project Files」改为「调用三地 CRM MCP 查询接口」。三地任一返回成功即可。
并行调用三个 MCP,同时发起:
cn_query_cio_report(...) ← 国内 CIO 报告 hk_query_cio_report(...) ← 香港 CIO 报告 sg_query_cio_report(...) ← 新加坡 CIO 报告
优先级与兜底逻辑(强约束):
1. 优先采用与客户主要持仓地区匹配的 CIO 报告:
- 国内持仓占比最高 → 优先
cn_query_cio_report - 香港持仓占比最高 → 优先
hk_query_cio_report - 新加坡持仓占比最高 → 优先
sg_query_cio_report
cn → hk → sg 顺序取第一个成功返回的报告
3. 三地全部失败才在报告该模块注明「三地 CIO 报告均未能获取」,继续生成其余模块;不再提示用户上传文件Fallback 触发判断(与 Step 1b 持仓数据一致的严格判断):
- 返回为空(
null、[]、{}) - 返回报错(HTTP 错误、异常信息)
- 返回内容包含
"暂无数据"、"无数据"、"no data"、"not found"等文字 - 报告内容字段长度为 0
提取内容(不超过 3 条各):
- 宏观经济判断
- 大类资产配置建议
- 主要风险提示
报告中标注: 在 CIO 观点模块顶部显示「📍 数据来源:CN/HK/SG CIO 报告 | 截至 YYYY-MM-DD」,明确客户能感知是哪一地区的口径。
---
Step 3 — 搜索近期热点事件(并行)
执行 2-3 次 web 搜索,聚焦与客户持仓相关的行业动态:
搜索1: "中国市场 宏观经济 最新动态 {本月}"
搜索2: 根据客户主要持仓产品类型,搜索对应行业热点
搜索3: 根据 KYH 精简模式中识别出的关键风险点(如某只产品 IPO 进展、某策略当前市场环境),定向搜索
筛选标准:选 3 条最近 30 天内、与客户持仓最相关的热点,每条 50 字以内概括。
---
Step 4 — Curated Picks · 产品推荐(并行 · 三大产品池)
v2.2 升级:明确产品池优先级。Olive > Glory > Upright,绝对不可僭越。
产品池优先级表(不可僭越):
| 优先级 | 产品池 | 工具示例 | 适用场景 |
|--------|--------|---------|---------|
| P1 · 优先 | 🌊 Olive 海外货架(海外私募二级 / 海外 PE / 对冲 / 多策略 / 资管全球) | oliveam-mcp 系列:search_funds / list_funds / list_fund_cards / get_fund_detail | 海外配置 / 美元资产 / 跨境高净值客户 |
| P2 · 次选 | 🛡️ Glory 海外金融 + 身份规划(海外保险 / 信托 / 移民 / 签证) | glory-mcp 系列:glory_insurance_overseas_ / sg_glory_trust_ / sg_glory_visa_ / cn_glory_insurance_domestic_ | 家族传承 / 身份规划 / 跨境保障 |
| P3 · 兜底 | 🇨🇳 Upright 正行人民币(私募证券:量化 / 多头 / CTA / 中性 / 宏观) | search_private_fund / search_private_fund_by_strategy | 国内配置 / 人民币需求 |
执行步骤:
1. 三池并行查询(同时发起,不串行等待):
并发 1: oliveam-mcp · 拉海外货架候选池(不超过 20 个候选) 并发 2: glory-mcp · 拉海外保险/信托/签证候选池(不超过 20 个候选) 并发 3: Upright MCP · 拉正行人民币货架候选池(不超过 20 个候选)
2. 候选合并 + 筛选(产出 3 个最终推荐):
- 产品风险等级 ≤ 客户风险等级(硬约束)
- 优先推荐与 L2 矩阵中 🟠/🔴 评级产品形成替代 / 补缺的方向(如客户某只对冲基金被评 🔴 → 优先从 Olive 推另一类策略的对冲基金)
- 同等条件下来源优先级:Olive > Glory > Upright
- 优先推荐客户存续配置中占比较低的类别(补缺口)
- 优先推荐近期热销或新上架产品
3. 推荐配比建议(在候选充足时尽量满足):
- 至少 1 个 Olive 产品(除非客户明确不做海外配置)
- 若客户有家族传承 / 身份规划诉求(KYC 提及)→ 至少 1 个 Glory 产品
- 若客户仍有大量人民币配置需求 → 至少 1 个 Upright 产品
展示规范(每个推荐产品卡片):
- 来源标识:🌊 Olive / 🛡️ Glory / 🇨🇳 Upright(左上角金色 pill)
- 产品名称(Cormorant 18px navy)
- 类型 + 策略大类
- 预期收益区间 + 风险等级
- 推荐理由(一句话,必须显式说明:「为什么这个客户在这个时点适合这只产品」)
- 起投门槛 + 锁定期 / 开放赎回信息
降级规则: 任一产品池 MCP 报错时跳过该池,其余继续;3 个产品池全部失败时注明「产品推荐暂时无法获取,请稍后重试」。
---
Step 4.2 — Strategic Reading · 深层洞察
本模块的角色设定: 你不是在填表,你是一位看过上千个客户组合的首席投资顾问。你的任务是透过数据表面,读出 RM 肉眼看不到的信号——这些信号决定了这次拜访是「例行公事」还是「关键转折点」。
这一步基于 Step 1-4 全部数据 + Step 1.6 的 KYH 精简结果,做跨数据源的交叉分析。每个洞察必须有数据支撑。
4.2a. 客户真实意图推断(Reading Between the Lines)
从以下信号交叉推断客户当前的真实状态和潜在需求:
| 信号来源 | 看什么 | 推断什么 | |---------|--------|---------| | 客户动态(APP 行为) | 最近密集浏览某类资讯/直播 | 客户在主动研究什么方向 | | 服务记录 | 客户主动 vs RM 发起的沟通比例 | 决策窗口是否在打开 | | 持仓变化 | 近期有无赎回/申购动作 | 赎回是不满还是流动性需求 | | KYC vs 实际持仓 | 风险等级 vs 实际配置偏离方向 | 客户的真实风险偏好 | | KYH 矩阵评级分布 | 客户持仓中 🟠/🔴 占比 | 是否到了「组合体检」的关键时点 | | 触达频率变化 | 最近 3 个月 vs 之前 | 流失预警或观望信号 |
输出:2-3 条「深层判断」,每条格式:
- 信号:具体观察到的数据事实
- 推断:这背后可能意味着什么
- 对 RM 的意义:这次拜访应该怎么应对
4.2b. 组合叙事诊断(Portfolio Narrative)
每个客户的持仓背后都有一个「故事」。结合 KYH 矩阵的评级分布、各产品的 headline 和 key_risks,分析维度:
- 这个组合是怎么形成的?
- 组合的内在矛盾是什么?(如 KYC 是稳健型但持仓里多只 🔴 评级的高波动产品 → 这个矛盾背后往往有故事)
- 客户对这个组合的「自我认知」可能是什么?
输出:一段 50-80 字的「组合画像叙述」。
4.2c. 关系健康度评估(Relationship Health Check)
- 触达质量
- 客户响应度
- 未兑现承诺
- 竞争信号
输出:交通灯判断(🟢/🟡/🔴)+ 一句话原因。
4.2d. 隐藏的经营机会(Hidden Opportunities)
- 🟠/🔴 评级产品 + 配置缺口 = 天然调仓窗口(这是 v2 新增的核心机会来源)
- 客户行业背景 + 在售产品主题匹配
- 客户生命阶段信号
- 跨地区套利
输出:1-2 个具体机会点,每个含:机会描述、数据依据、如何自然引出。
---
Step 4.5 — 生成谈话策略
本模块的角色设定: 你是一位服务超高净值客户 15 年以上的顶级私行顾问,同时具备顶尖销售的沟通直觉。
4.5a. 开场破冰(The First 3 Minutes)
按优先级选择切入点: 1. 客户主业/行业关联 2. KYH 矩阵中 🟢 评级产品的近期亮点(先报喜) 3. CIO 观点中与客户相关的部分 4. 近期市场热点
输出:推荐切入角度 + 💬 话术示例 + 🎯 目的
4.5b. 核心议题编排(最多 2 个)
| 优先级 | 触发条件 | 议题类型 | |--------|---------|---------| | P0 紧急 | KYH 矩阵中有 🔴 建议赎回 或 30 天内到期 | 风险处置 + 续接方案 | | P1 重要 | KYH 矩阵中有 🟠 边际减仓 或 31-90 天内到期 | 提前锁定调仓意向 | | P2 重要 | 配置明显偏离 CIO 建议 / KYC 与持仓风险不匹配 | 配置优化建议 | | P3 机会 | KYH 矩阵评级整体健康 + 有高度匹配的新产品 | 新产品引荐 | | P4 维护 | 以上都无 | 关系维护 + 市场观点同步 |
每个议题输出:
- 议题名称
- 为什么要谈(数据支撑,优先引用 KYH 矩阵的
headline和key_risks) - 💬 推荐话术(口语化,直接使用对应产品 KYH 返回的
rm_message作为基础,再根据现场气氛润色) - ⚠️ 客户可能的反应 + 应对
话术设计原则:先肯定再建议、用具体数字说话、给客户选择权、禁止书面腔。
4.5c. 收尾 & 下一步(The Close)
- 💬 收尾话术示例
- 📋 拜访后待办清单(2-3 项,自动包含「跟进 🔴 产品的赎回手续」「跟进 🟠 产品的下一开放日」等 KYH 矩阵衍生事项)
4.5d. 风险与合规备忘
- KYC 即将过期提醒
- KYH 矩阵中 🔴 评级产品的客户预期管理(预判客户不满情绪,给出安抚话术)
- 合规红线标注
---
Step 5 — 生成 HTML 报告(v2 结构升级)
报告结构(v2):
┌──────────────────────────────────────────┐ │ 诺亚财富 · 拜访前准备报告 v2.0 │ │ 某总 | 集团号 | 生成时间 │ ├──────────────────────────────────────────┤ │ 📋 Executive Summary — 30 秒速览 │ │ · 客户一句话画像 │ │ · 3 个优先行动项 │ │ · 今日推荐开场话题 │ ├──────────────────────────────────────────┤ │ 一、存续诊断(v2 · 四层升级) │ │ L1 多地域持仓概览(地区卡片) │ │ L1.5 配置健康度诊断(callout) │ │ L2 ⭐ 单产品健康度矩阵(按地域分组) │ │ · L2.1 🇨🇳 国内持仓健康度 │ │ · L2.2 🇭🇰 香港持仓健康度 │ │ · L2.3 🇸🇬 新加坡持仓健康度 │ │ L3 ⭐ 完整存续报告附录链接 │ │ L4 到期预警(红/黄/灰分级) │ ├──────────────────────────────────────────┤ │ 二、CIO 报告核心观点 │ │ 三、近期市场热点 │ │ 四、Curated Picks · 产品推荐 │ │ 五、Strategic Reading 深层洞察 │ │ 六、谈话策略(RM 专属作战手册) │ └──────────────────────────────────────────┘
Executive Summary 设计要求
- 位置:报告最顶部,紧接标题之后
- 视觉:深蓝底色 strip(
--navy-deep),白色/金色文字 - 内容(严格只放以下三项):
- 🔴 紧急:如「持仓中 1 只 🔴 评级(XX 量化),建议下次开放日(6/15)赎回 50%」
- 🟡 重要:如「持仓中 2 只 🟠 评级,需在拜访中铺垫调仓意向」
- 🔵 建议:如「客户主业与 AI 基建相关,可作为开场话题」
L1 多地域持仓概览(保留原版)
地区卡片并排展示,每张包含:地区标识、当前估值、累计投资、累计回款、预估盈亏、产品类型分布、配置账户分布。
L1.5 配置健康度诊断(保留原版)
callout 引用框(金色左边框 + 暖白底),综合判断 2-4 句。
L2 单产品健康度矩阵(按地域分组)⭐ 新增 · v2.2 升级
v2.2 升级:从「单张大表混排所有地域」改为「按 CN / HK / SG 三地分别独立 sub-section 展示」。 这样 RM 在拜访中可以按地域分段讨论——讨论国内仓位时聚焦 L2.1,讨论海外配置时聚焦 L2.2 + L2.3。
基于 Step 1.6 的 concise_kyh_results[] 按 region 字段分组渲染。
每个地区内的产品按 AUM 占比降序排列。仅当该地区有持仓时才显示对应 sub-section。
整体排序: L2.1 → L2.2 → L2.3(如果三地都有持仓)。如客户只在两地有持仓,跳过空地区。
---
##### L2.1 🇨🇳 国内持仓健康度
显示条件: 客户在国内有持仓时显示。 覆盖资产类别: CN-PE(rmb-equity)/ CN-UPRIGHT(rmb-upright)/ 国内标准化(不路由产品按「-」标注)。
┌──────────────────────────────────────────────────────────────────────┐ │ 🇨🇳 国内持仓健康度 · 共 N 只产品 · AUM ¥XXX 万 │ ├──────────────────────────────────────────────────────────────────────┤ │ 产品 类型 AUM占比 评级 一句话判断 │ ├──────────────────────────────────────────────────────────────────────┤ │ 歌斐XX人民币FOF CN-PE 22.1% 🟠 已上市2个未减持 │ │ 正行XX量化中性 CN-UPRIGHT 8.7% 🔴 分位92%,建议赎回50% │ │ ... │ └──────────────────────────────────────────────────────────────────────┘
##### L2.2 🇭🇰 香港持仓健康度
显示条件: 客户在香港有持仓时显示。 覆盖资产类别: USD-PE(usd-pe)/ USD-HEDGE(usd-hedge)/ 海外保险信托(不路由产品按「-」标注)。
┌──────────────────────────────────────────────────────────────────────┐ │ 🇭🇰 香港持仓健康度 · 共 N 只产品 · AUM US$XXX │ ├──────────────────────────────────────────────────────────────────────┤ │ 产品 类型 AUM占比 评级 一句话判断 │ ├──────────────────────────────────────────────────────────────────────┤ │ 黑石地产S基金 USD-PE 18.5% 🟢 TVPI 1.07x,分配健康 │ │ AQR HELIX USD-HEDGE 12.3% 🟡 YTD 跑输HFRI,需观察 │ │ ... │ └──────────────────────────────────────────────────────────────────────┘
##### L2.3 🇸🇬 新加坡持仓健康度
显示条件: 客户在新加坡有持仓时显示。 覆盖资产类别: USD-PE / USD-HEDGE / 海外保险信托。
┌──────────────────────────────────────────────────────────────────────┐ │ 🇸🇬 新加坡持仓健康度 · 共 N 只产品 · AUM US$XXX │ ├──────────────────────────────────────────────────────────────────────┤ │ 产品 类型 AUM占比 评级 一句话判断 │ ├──────────────────────────────────────────────────────────────────────┤ │ XX 海外对冲基金 USD-HEDGE 9.4% 🟢 Sharpe 1.8,运行稳定 │ │ ... │ └──────────────────────────────────────────────────────────────────────┘
---
视觉规范(三个 sub-section 共用):
- 每个 sub-section 顶部用 H4 标题 + 该地区聚合摘要(产品数 + 地区 AUM)
- 表头:Inter 10px uppercase letter-spacing 0.18em,底部 2px navy 分隔线
- 表格内:评级单元格使用
references/kyh-shared-framework.md第 7.3 节的评级配色(透明底色 + 主色文字) - AUM 占比列:右对齐,tabular-nums + 微型横向条形图(数字后方)
- 一句话判断:
Cormorant Italic 14px navy - 每行可点击展开「关键风险点 + RM message + 完整报告链接」
- 表格之间用 40px 间距 + 浅金色细横线分隔
截断规则(按地区独立计算):
- 每个地区默认展示 TOP 10
- 单地区超过 10 只时,提供「展开全部」按钮
- 强制纳入的产品(30 天内到期 / 风险不匹配)即使排序靠后也必须出现
地区聚合摘要内容:
- 该地区持仓产品总数
- 该地区 AUM 总额(含币种)
- 该地区评级分布:🟢 N 只 / 🟡 N 只 / 🟠 N 只 / 🔴 N 只
- 如该地区有 🔴 评级产品,在摘要行加红色高亮提示
数据缺失行:
rating=null的产品标注「数据获取中」,对应 KYH 服务名(如「kyh-rmb-equity 超时,建议手动触发」)
跨地区汇总条(L2 末尾、L3 之前):
- 一行简短汇总:
全部 TOP N 持仓中,🟢 N 只 / 🟡 N 只 / 🟠 N 只 / 🔴 N 只 · 重点关注 N 只 - 用于 Executive Summary 引用
L3 完整存续报告附录 ⭐ v2.3 极简版
基于 Step 1.7 的 appendix_paths[] 渲染。v2.3 关键变更:L3 只展示「已成功生成完整 HTML 附录」的卡片,不再为「未生成」的产品单独渲染卡片(消除视觉冗余)。
##### 展示策略(v2.3 极简版 · 强约束)
| 卡片情况 | v2.3 行为 |
|---------|----------|
| status="ok" 且 full_report_path 非空 | 渲染真链接卡片(见下方"卡片渲染规范") |
| status="failed" 或 full_report_path=null | 不渲染单独卡片。RM 如需单独触发完整 KYH,可从 L2 矩阵中找到产品代码并在对话中直接输入 /kyh-xxx-xxx。 |
| 所有附录都失败的极端兜底场景 | 不渲染卡片列表。改为在 L3 顶部用 1 行说明 + 1 个「📋 批量复制全部 KYH 触发命令」按钮(点击复制所有未生成产品的命令到剪贴板)。 |
禁止:
- ❌ 不展示「单产品 KYH 90s 深度版」这种与已生成的合并附录重复的卡片
- ❌ 不展示装作可点击但点不了的死按钮
- ❌ 不为每只未生成附录的产品单独渲染一张「复制命令」卡片
##### 真链接卡片渲染规范(status="ok")
按钮必须是真链接,可一键打开本地 HTML 完整报告:
<a href="file://<full_report_path>" target="_blank" rel="noopener" class="kyh-report-link"> 深度分析 → </a>
视觉:
- 「深度分析 →」深蓝底 + 金色文字 + hover 反色
- 鼠标悬停 tooltip:
查看 {产品名} 完整存续报告(HTML)
##### 卡片布局
┌─────────────────────────────────────────────────────────────────┐
│ 📎 产品名 · 简短诊断标题 [深度分析→] │
│ {产品简介一句话 / TOP N 持仓合并诊断说明} │
│ 触发原因:评级 🟠 + TVPI 1.07x + 期限已超期 │
└─────────────────────────────────────────────────────────────────┘
视觉规范:
- 标题:
COMPLETE HOLDING REPORTS · 完整存续报告(Cormorant 28px navy) - 卡片:暖白 paper 底色 + 1px 浅金描边 + 16px 圆角 + 18px 内边距
- 产品名:Cormorant 18px navy bold
- 触发原因:Inter 12px graphite
- 按钮区固定在卡片右侧 vertical center
##### L3 区顶部说明栏
根据生成情况显示不同说明文案:
| 场景 | 顶部说明文案 |
|------|------------|
| 至少 1 份附录已生成(默认场景) | 「📎 本次为 TOP N 持仓生成了 X 份完整存续诊断报告。如需对其他产品做单产品级深度分析,可在对话中输入 /kyh-xxx-xxx 产品代码=xxx 单独触发。」 |
| 生成了 1 份合并诊断附录(覆盖 TOP N 全部持仓) | 「📎 本次为 TOP N 持仓生成了 1 份合并存续诊断报告(含逐只产品的子项目明细、关键风险点、RM 推荐话术、下一关键节点)。」 |
| 所有附录都失败的极端兜底 | 「📎 本次未自动生成完整附录附件。如需深度分析,可点击下方按钮一键复制全部 KYH 触发命令到剪贴板:[📋 批量复制 N 条命令]」 |
强约束(重要):
- ✅ Step 1.7 中只要 Top N 中没有任何产品命中触发条件,必须对 AUM 最大的 1 只生成附录,确保 L3 至少有 1 张真链接卡片
- ✅ L3 卡片数量 =
status="ok"的附录数量,不再为status="failed"的产品渲染单独卡片 - ✅ RM 如需对未生成附录的产品做深度分析,从 L2 矩阵的产品代码出发,自行在对话中触发对应 KYH(顶部说明栏会引导)
- ✅ 在 L2 矩阵中已标注「点击查看完整报告」的产品,与 L3 的真链接卡片一一对应(不重复列出)
L4 到期预警(保留原版)
计算每个产品距今天剩余天数,标记:
- 🔴 紧急:30 天内
- 🟡 预警:31-90 天
- ⚪ 正常:90 天以上
到期预警产品同时汇总到 Executive Summary 行动项。
谈话策略模块设计(保留 v1)
- 话术用引用样式(左侧竖线 + 浅底色)
- 异议应对用折叠/缩进
- 拜访后待办用 checkbox(☐)
- 合规备忘用橙色边框
---
视觉设计要求
⚠️ 必须先读取 references/kyh-shared-framework.md 的第 7 节(Editorial 视觉 Token)
整体美学方向:Private Bank Editorial。不是 dashboard,不是后台系统。是一份你放在 JPM Private Bank 桌上不会违和的客户专属文件。
字体、配色、章节结构、表格样式、卡片样式、callout、timeline、行动清单、图表、footer、响应式 & 打印 —— 全部使用 kyh-shared-framework.md 第 7 节定义的 token,4 个 KYH 和 visit-prep 共用一套设计语言,确保 L3 附录中的 KYH 报告与 visit-prep 主报告视觉一致。
评级配色映射(强一致性,4 个 KYH + visit-prep L2 矩阵都用同一套):
| 评级 | 主色 | 透明底色 |
|------|------|---------|
| 🟢 继续持有 | --green | rgba(74,107,62,0.08) |
| 🟡 观察持有 | --amber | rgba(168,116,26,0.08) |
| 🟠 边际减仓 | --gold | rgba(184,147,90,0.10) |
| 🔴 建议赎回 | --red | rgba(139,46,46,0.08) |
禁止事项(继承 kyh-shared-framework 第 7.4 节):
- ❌ 不使用 Inter/Roboto/Arial 以外的系统字体作为主字体
- ❌ 不使用紫色渐变、彩虹色、粉色等 AI 味审美
- ❌ 不使用 Bootstrap/Tailwind 默认类名
- ❌ 不使用 emoji 作装饰(仅 🇨🇳🇭🇰🇸🇬 国旗和 🟢🟡🟠🔴 评级允许)
- ❌ 不使用深色作主体背景(仅 exec-strip 和 footer 用深蓝)
---
错误处理
| 情况 | 处理方式 |
|------|---------|
| CRM 无此集团号 | 提示顾问确认集团号是否正确 |
| 客户无存续产品 | 报告中注明「暂无存续产品记录」,跳过 Step 1.5/1.6/1.7 |
| Step 1.5 路由不到对应 KYH | L2 矩阵中标注「未识别资产类别」,并提示产品类型 |
| Step 1.6 某只 KYH 超时/报错 | 该产品行标注「数据获取中」,不阻塞整体报告 |
| Step 1.7 附录生成失败 | L3 标注「附录生成失败,请单独触发对应 KYH」 |
| Step 2 三地 CIO MCP 全部失败 | 该模块注明「三地 CIO 报告均未能获取」,不再提示用户上传文件,继续生成其余模块 |
| Step 2 某地 CIO MCP 失败 | 按 cn → hk → sg 顺序自动取下一个成功的;报告中标注实际采用了哪一地 |
| Step 4 某个产品池失败(Olive/Glory/Upright) | 跳过该池,其余池继续;按剩余候选优选 |
| Step 4 三个产品池全部失败 | 注明「产品推荐暂时无法获取,请稍后重试」 |
| 网络搜索无结果 | 使用通用市场热点,注明「数据获取受限」 |
---
输出
- 主报告文件名:
拜访准备_{某总}_{YYYYMMDD}.html - 附录目录:
/mnt/user-data/outputs/visit-prep-appendix/{集团号}/ - 附录命名:
{某总}_{产品简称}_存续报告_{YYYYMMDD}.html - 主报告保存路径:
/mnt/user-data/outputs/ - 使用
present_files同时提供主报告 + 所有附录给顾问下载 - 同时在对话中简要总结(不超过 8 行):
- Executive Summary 中的 3 个行动项
- L2 矩阵中 🟠/🔴 评级产品清单
- 推荐的开场话题
- 提醒顾问查看完整报告中的谈话策略部分 + L3 附录
---
参考文件索引
| 文件 | 用途 |
|------|------|
| references/kyh-shared-framework.md | 必读。共享调用模式、评级标准、话术格式、合规免责、视觉 token、资产分类路由规则 |
---
版本变更
| 版本 | 日期 | 变更 |
|------|------|------|
| v1.0 | 2025-05-03 | 初版:客户级广度存续诊断 + CIO + 热点 + 产品 + 话术 |
| v2.0 | 2026-05-27 | 新增 Step 1.5/1.6/1.7(资产分类路由 + KYH 精简/附录模式并行调用),存续诊断升级为 L1/L2/L3/L4 四层;引入 kyh-shared-framework.md 共享标准 |
| v2.1 | 2026-05-27 | 3 处实战优化:① Step 2 CIO 报告从「读 Project Files」改为「三地 MCP 并行查询 + cn→hk→sg 兜底」;② Step 4 Curated Picks 明确产品池优先级(Olive > Glory > Upright),三池并行查询;③ L2 单产品健康度矩阵从「单表混排」改为「按 CN / HK / SG 三地分组展示」 |
| v2.2 | 2026-05-27 | 修复 L3 死按钮问题:① Step 1.7 附录触发条件从「仅 🟠/🔴 + 30 天内到期」放宽至 10 项触发条件(TVPI<1.0、期限超期、底层项目部分退出、高位分位等),Top N 无命中时强制对 AUM 最大 1 只生成附录;② L3 卡片渲染拆分为「状态 A 真链接 / 状态 B 复制命令按钮」两种形态;③ Step 1.7 必须返回 appendix_paths[](即使失败,含 status/trigger_reason/failure_note 字段) |
| v2.3 | 2026-05-27 | 视觉精简:① 报告结构图去掉「Curated Picks(Olive>Glory>Upright)」中的产品池排序提示,改为「Curated Picks · 产品推荐」,内部优先级仅在 Step 4 SKILL.md 中说明,不向 RM 展示;② L3 改为只展示 status="ok" 的真链接卡片,不再为 status="failed" 的产品渲染单独的「复制命令」卡片(消除与合并附录的视觉冗余);③ 顶部说明栏按生成情况自动切换文案;④ 仅当所有附录全失败的极端兜底场景才出现「批量复制全部 KYH 命令」按钮 |