360 Secure SkillHub
360 安全技能中心

dealcenter

辅助型技能:回答涉及具体客户的问题前,按需检索 DealCenter 中客户、商机、联系人、活动与文档档案,只用工具实际返回字段增强回答;查不到或调用失败则静默降级。写入仅在用户明确要求或确认后进行,按客户、联系人、商机、活动、文档顺序先查后建,并按要求带 sources。

summerzb
summerzb
热度 7.65
最近更新 2026-09-18 15:44:55
分类:知识依赖:MCP 服务应用场景:CRM / 笔记整理 / 研究

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add dealcenter
Metadata
name
dealcenter
description
当回答用户问题需要某个客户(公司/商机/联系人/历史活动/文档)的过往档案背景时先查读 dealcenter 档案;或用户明确要求把信息记录/回填到客户档案时使用。查档是辅助——查不到静默继续,写入仅限用户明确要求或确认后。

dealcenter 客户档案查读与回填

定位(先读这个)

本 skill 是回答用户问题时的辅助能力:在动手干活前提供客户过往信息,让回答更准;不是主要任务。由此推出两条铁律:

  1. 静默:查不到档案、某个维度读不了、工具调用报错/超时(通道坏了)——一律不说、不问、不推销建档,直接当没有档案,按正常流程回答用户。唯一例外:配置卡点(通道没接,见下节)不静默,引路一次。
  2. 不喧宾夺主:给用户的回复以原任务为主体。档案信息只用于把活干得更好,除非用户问,否则不单独汇报「我查了档案」。引路也一样:一句话给出口,原任务仍是主体。

档案服务名是 DealCenter(工具前缀 dealcenter.*,客户主体是 account 不是 company)——对用户提服务名时一律说 DealCenter,不称 CRM。连接器页的卡片名是 OmniMay MCP(以连接器页当前版本为准),引路到连接器页时一律称 OmniMay MCP。

配置卡点引路(铁律1 的唯一例外)

判定(满足其一即是——「通道没接」,不是「通道坏了」):

  • 未安装:工具清单里根本没有 dealcenter.* 工具(工具搜索不到该工具组、提示未安装/未接入/未连接)
  • 未授权:调用返回 401 / 未授权 / 授权过期类错误(已安装但未授权)

动作(按分支执行,说完立刻回到原任务,把手头能做的部分做完):

  • 未安装 → 插一句引路:> OmniMay MCP 还没安装:到「连接器」页找到「OmniMay MCP」添加并点「连接」(首次会走浏览器授权),弄好后叫我重查就行。

  • 未授权 → 插一句引路:> OmniMay MCP 还没授权:到「连接器」页找到「OmniMay MCP」点「连接」完成浏览器授权,弄好后叫我重查就行。

  • 只说/做这一次:不追问、不展开、不等用户授权/安装完成才交付本轮原任务

  • 用户明确要查档案而通道不通时,绝不答「没有档案 / 没有记录」——数据可能存在,只是通道没通;此时必须引路

何时使用 / 不使用

使用:

  • 回答前需要了解客户以往档案信息(公司/商机/联系人/经历活动/文档)——典型:写跟进邮件、准备拜访、出方案、客户问「上次聊到哪了」
  • 用户明确要求把信息记录/回填到档案("记一下""录到档案""更新商机阶段"),或对 skill 产出的建议回填项点头确认后

不使用:

  • 任务与具体客户无关(通用翻译/PPT/方法论问答)
  • 只查不写的场景不需要走写入流程;批量提取非结构化文本落库不归本 skill(按需走结构化回填流程分步录入)

一、读档流程

判断本次回答是否需要客户档案背景
  ├─ 不需要 → 直接执行任务
  └─ 需要 → dealcenter.account.search(客户名)
       ├─ 0 命中 / 工具报错 → 静默继续,直接执行任务(不提"没查到",不建议建档)
       ├─ 1 命中 → dealcenter.account.get_full(id)
       └─ 多命中 → 自行判断最符合的一家(用对话里的行业/业务/联系人线索),
                    判断依据充分就不问用户;实在判不出才问,一句话问清
       *注:若工具清单里根本没有 `dealcenter.*` 工具,或调用返回 401/未授权 → 走「配置卡点引路」分支,不是 0 命中/运行失败*
→ 从 get_full 提取对当前任务有用的:公司基本面 / 商机与阶段 / 联系人 / 最近活动 / 文档
→ 需要更深时按需补:dealcenter.deal.get_full / dealcenter.activity.list_recent /
                    dealcenter.contact.search / dealcenter.doc.list_full(工具契约见 references/mcp-tools.md)
→ 带着档案背景执行原任务

读档纪律:

  • 禁止脑补档案内容:引用的每一条过往信息(上次聊了什么、谁负责、什么阶段)必须来自工具实际返回的字段。档案里没有的不编、不补叙事,宁可不提。
  • 未确认值要标注:档案字段有 suggested(AI 记的、未经销售确认)与 confirmed 之分。引用 suggested 值时向用户说明"这是之前 AI 记录的,未经确认"。
  • 读档失败不重试超过 1 次,失败即静默放弃该维度。

二、写入流程(仅用户明确要求或确认后)

没有用户点头,一个写入工具都不调。 业务 skill 执行完产出值得入档的事实时,先评估信息质量:

  • 高质量(明确、可验证、字段对齐契约,例如完整手机号 + 真实姓名 + 明确来源):用 1-2 句话问用户是否录入;问完不追问,不展开推荐
  • 低质量(脱敏、残缺、纯推断、来源模糊):不主动提,绝不借机推荐建档;回复里也别再以任何形式把这条话题拽回来(不附条件、不建议补建、不问要不要挂补查清单)

只有用户明确说"记一下""录到档案""更新商机"等,或对建议项明确点头后,才进入写入执行。

有序四步(先查后建,防重复)

按 客户(account)→ 联系人/商机 → 活动 → 文档 顺序,每步先 search 再建:

步 查 建 必挂约束(缺则不建该项)
1 客户 account.search(名) account.create name
2 联系人 contact.search(核心词, account_id)(剥"总/经理"等称谓) contact.upsert account_id + contact_methods ≥1(缺真实联系方式则该项挂起,不造假值)
3 商机 deal.search(主体词),只看当前客户下的结果 deal.upsert account_id + name
4 活动 不查(append-only),同次运行内 (deal_id, happened_at, summary) 三元组自去重 activity.batch_create(单批 ≤100) deal_id(无商机则不建活动)
文档 doc.list_full(account_id) 按 file_uri 判重 doc.create account_id +(content 或 file_uri 二选一,见 mcp-tools.md)

写入侧查重原则(不可妥协):每步 search 是写入的前置必做而非可省。如果 search 工具暂时不可用(故障面里的 404/-32603),该实体直接挂起 pending,绝不绕过查重直接建。account.create 是按名幂等的(同名返现有、不更新字段)所以客户步可建;contact/deal/doc 的 upsert 都不是名字幂等——查重缺位 = 必重。

sources 必填——第一次就带,不等报错

每次写入 sources[] 必填非空,格式逐字按契约:

[{ "kind": "chat_turn", "title": "用户原话前 80 字", "quote": "用户确认的那句原话", "occurred_at": "2026-09-04T14:30:00+08:00" }]

错误处置(这些不是失败)

响应 动作
DUPLICATE_ACTIVITY_HINT / DUPLICATE_FILE_URI 记 reused,简短汇报"已存在",不追问用户
409 AMBIGUOUS(多候选) 先自行判断,判不出才问用户(写错污染库,标准比读侧严)
400 MISSING_REQUIRED_FIELD 缺真实值则该项挂起,绝不造假值占位
422 RENAME_NOT_ALLOWED name 创建后只读,不改名绕过
404 REFERENCE_NOT_FOUND 检查前置步骤是否被跳过,不硬建

写完简短汇报四态

一行一项列 created / reused / pending / skipped(pending 注明缺什么、等人定),不展开细节、不追问。

纪律红线

念头 正确做法
"没查到档案,得告诉用户/问要不要继续" 静默继续。查档是辅助,用户要的是任务本身
"顺手建议用户建档,是增值服务" 不推销。用户没问就不提
"调研里发现了新联系人,借机提一句" 信息质量门槛:脱敏/残缺/推断的不提;只有明确且可用才用 1-2 句话问是否录入
"低质量信息虽不入档,但可以提一下'以后补齐再录'或问要不要挂补查清单" 低质量就当不存在,回复里不重新引入话题、不附条件、不留钩子
"档案里大概是聊过 XX,写进邮件" 只引用工具实际返回的字段,没有就不提
"sources 等服务端报错再补" 第一次就带,格式按契约
"字段名写 date/contact_ids 差不多就行" 逐字按 references/mcp-tools.md 的字段契约
"DUPLICATE 提示了,跟用户确认下" 记 reused 汇报一句即可
"多个候选,选最像的直接建" 写入侧判不出必须问人;读入侧可自判但要有依据
"工具报错了,告诉用户通道挂了/止步于此" 先分清:未安装/未授权(工具缺失或 401)→ 引路到连接器页添加/连接「OmniMay MCP」;运行失败(超时/500/查不到)→ 静默降级
"引路一次没反应,再催一下" 只说一次,立刻回原任务;用户装好后叫你重查即可
"通道没接,答'没有档案'也算如实" 不是如实,是错误回答——数据可能存在只是通道没通。配置卡点必须引路,不假称查无档案

工具契约

工具名、参数、字段类型、错误码、当前故障面(哪些工具暂不可用及降级方式)全部在 references/mcp-tools.md——调工具前必读,通道口径变更只改该文件。