cms-tbs-scene-created
核心定位
本 Skill 只做编排:按 references/step1-4/*.md 单主线推进。Step1 拉主数据;Step2 多轮采集与回显;Step3 校验通过后生成确认 title 与 sceneBackground;Step4.1 品种知识主题 → Step4.2 匹配/缺失阻断 → Step4.3 生成 doctorOnlyContext 与 coachOnlyContext;Step4.4 用户确认后校验落库。
任务分流(进入链路前先判断意图)
| 用户意图 | 判断依据 | 处理方式 |
|---------|---------|---------|
| 执行类(创建场景) | 表达"创建/新建/开始/生成场景"等主动动作 | 进入 Step1-4 完整编排链路 |
| 咨询类(了解规则/流程) | 提问"这个 Skill 怎么用/流程是什么/为什么要这样做" | 不执行任何脚本;仅结合 SKILL.md 与相关 references/ 解释 |
| 排障类(某步骤失败/结果异常) | 描述具体报错、字段异常、输出不对 | 先读 references/pitfalls.md;若未覆盖,再查 references/failure-examples.md;然后定向到对应 step 文档;不重新执行已通过的前置步骤 |
同一会话内,用户在"咨询"后表达创建意图,才切换到执行类。排障类优先查
pitfalls.md,不重置流程进度。
Quick Reference
每步必读(正常执行路径)
| 阶段 | 必读文档 |
|------|---------|
| 鉴权(进 Step1 前) | references/auth.md |
| Step1:拉主数据 | references/step1/tbs-scene-fetch-config.md |
| Step2:采集与回显 | references/step2/interaction-echo-confirmation.md + references/step2/default-input-template.md |
| Step3:校验与标题/背景 | references/step3/tbs-scene-validate.md |
| Step4.1:主题推荐与确认 | references/step4/tbs-knowledge-topic-generate.md |
| Step4.2:主题匹配与阻断 | references/step4/tbs-knowledge-topic-generate.md |
| Step4.3:上下文生成 | references/step4/scenario-parse.md |
| Step4.4:落库 | references/step4/tbs-scene-create.md |
按需查阅(出错 / 疑问时才读,正常路径不触发)
| 场景 | 查阅文档 |
|------|---------|
| 脚本校验失败 / 服务端报错 | references/qa.md |
| 字段名或展示词有疑问 | references/glossary.md |
| 步骤报错 / 输出异常排障 | references/pitfalls.md → references/failure-examples.md |
| 草稿 JSON 字段结构疑问 | references/step3/draft-schema.md |
全局约束(横切)
- 鉴权:细则见
references/auth.md(含必须做/禁止项/失败处理/环境自检)。 sceneBackground与repBriefing:用户确认的场景背景与落库字段repBriefing须一致(同源赋值,禁止两套文案);术语映射见references/glossary.md。scenario-parse:doctorOnlyContext/coachOnlyContext的固定 A/B 与章节顺序以references/step4/scenario-parse.md为准;这两个字段全程禁止向用户展示(含字段名、正文、节标题、生成依据)。- 知识匹配:主题名称匹配由
tbs-scene-validate.py --mode topics执行(确定性匹配,禁止 Agent 自行做字符串相似度判断);匹配结果与未命中处理规则见references/step4/tbs-knowledge-topic-generate.md。 - 内部错误/字段映射问题:脚本运行时遇到任何内部异常(字段名不符、数据结构问题、stderr 输出等),禁止将错误信息朗述给用户;应静默处理(按已有数据继续)或仅输出"处理遇到问题,请稍后重试";排障信息走
references/failure-examples.md,不在用户侧展示。 - ID 禁止外显:任何脚本返回的
id、knowledgeId、drugId、departmentId、businessDomainId等内部 ID 字段,一律禁止出现在向用户的任何输出中(含候选列表、话术、括号备注)。
门禁(必须遵守)
- 未取得有效
access-token(经cms-auth-skills)→ 禁止调用需要鉴权的脚本(tbs-scene-fetch-config.py、tbs-scene-create.py)。tbs-scene-validate.py可不携带 token。 - Step1:
tbs-scene-fetch-config.py未返回success=true,或state.businessDomains/departments/drugs任一为空数组 → 禁止进入 Step2;必须先解决主数据加载问题(见references/step1/tbs-scene-fetch-config.md失败处理)。 - Step1 补充说明:
state.productKnowledges允许为空数组(Step1 未解析到drugId时可能发生),不作为 Step1 阻断条件;但在进入 Step4.1 前必须按已确认品种刷新(见 Step4.1 文档)。 - Step2:业务领域/科室/品种名称未在
state.businessDomains/departments/drugs中命中确认 → 禁止进入 Step3;必须在 Step2 阶段完成名称选定(零命中时展示可用列表、多命中时让用户选定)。 - Step3:
tbs-scene-validate.py --mode step3未返回passed=true→ 禁止进入 Step4。 - Step4.2:任一主题无法匹配且用户未改为可命中项 → 禁止调用
tbs-scene-create.py,仅走上报。 - Step4.4:
doctorOnlyContext/coachOnlyContext未完成生成并落位 → 禁止调用tbs-scene-create.py。 - 用户未明确回复 「确认提交」 这一专属口令 → 禁止落库;Step4.2 的主题确认、Step4.3 的内容生成阶段均不构成落库授权。
标准执行流程(必须遵循)
- Step1–4 编排:
- 触发创建意图后,立即输出固定提示(不得改写):
正在为您加载配置,请稍候… 然后执行鉴权 + Step1;
state写入成功前禁止展示模板或收集任何字段。 - 鉴权:读取
references/auth.md,获取有效access-token;未就绪时禁止继续。 - Step1:读取
references/step1/tbs-scene-fetch-config.md;三个列表非空后进入 Step2。 - Step2:读取
references/step2/interaction-echo-confirmation.md+references/step2/default-input-template.md;Step1 完成后才可展示模板;名称校验通过后进入 Step3。 - Step3:读取
references/step3/tbs-scene-validate.md;title+sceneBackground用户确认后进入 Step4。 - Step4.1:读取
references/step4/tbs-knowledge-topic-generate.md(仅在title+sceneBackground已确认后执行);主题用户确认后进入 Step4.2。 - Step4.2:主题匹配;全部命中进入 Step4.3,有未命中走上报流程。
- Step4.3:读取
references/step4/scenario-parse.md;按文档约束生成并落位两份内容后进入 Step4.4。 - Step4.4:读取
references/step4/tbs-scene-create.md;用户确认提交后落库。
- 触发创建意图后,立即输出固定提示(不得改写):
- 若 Step4.2 触发缺失上报:
- 不调用落库脚本。
- 输出上报草稿并声明本次不允许落库。
QA / 排障说明(按需)
落库前脚本校验是正常路径的硬门禁,通过即可继续。references/qa.md 仅在校验失败或落库后服务端报错时按需查阅,不在正常路径中强制读取;其余按需查阅项见 Quick Reference。
微信扫一扫