返回 Skill 列表
extension
分类: 其它无需 API Key

cms-tbs-scene-create

提供【TBS 训战场景创建】全流程执行能力。用户一旦表达“创建场景/生成对练场景/医药代表训练/销售训练/校验场景/确认落库”等执行意图,必须进入本 Skill 的分阶段脚本调用流程;仅当用户明确是纯咨询时,才允许先文字说明并二次确认是否执行。本 Skill 依赖 `cms-auth-skills` 获取 `ac...

person作者: spzwinhubclawhub

cms-tbs-scene-create

核心定位

本 Skill 只做一件事:根据用户创建 TBS 训战场景的意图,读取对应 references/*.md,再执行 scripts/*.py
参数、边界、分支逻辑以 references 为准;SKILL.md 只保留入口级规则。

强制前置

真实落库前必须通过 cms-auth-skills 获取有效 access-token,并以 --access-token 注入最终落库入口。
未鉴权时,可以 parse / validate / preflight,但不得调用真实 CMS/TBS 写接口。

标准执行流程

  1. 识别用户是“执行创建”还是“纯咨询”。
  2. 任何用户可见回复前,必须先读 references/output-templates.mdreferences/review-checklist.md,并按当前时点套用模板;模板是强制输出契约,不是参考文案。
  3. 若用户首次只表达“创建场景/我要创建一个场景”,且未提供可解析基础信息:不得调用脚本,直接使用 output-templates.md 模板 0「标准版」原结构输出。
  4. 若首轮输入为完整长文本并命中模板 0 的“长文本例外”:创建或复用 sessionDir,再进入 parse。
  5. 每次执行脚本前,先读对应 references/*.md
  6. tbs-scene-payload-write.py 写 payload;禁止手写/拼字符串 JSON。
  7. tbs-scene-parse.py 推进阶段;不要靠猜测判断阶段。
  8. 当 parse 返回 READY_FOR_SCENE_GENERATION / scenarioGenerated=false:作为内部事务连续完成“场景内容生成 → 写回 draft → 再 parse → FULL validate”,除耗时提示外不得向用户播报内部状态。
  9. 需要探路时先跑只读 tbs-scene-preflight.py,不要反复 parse/validate。
  10. 模板 3 最终确认前执行 tbs-scene-validate.py --scope full
  11. 用户明确回复“确认”后,只调用 tbs-scene-finalize-from-session.py

会话文件

同一场景全程复用同一个目录:

workspace/.cms-log/state/cms-tbs-scene-create/{sessionId}/
├── latest-payload.json
├── latest-parse-result.json
├── latest-draft.json
├── latest-validate-result.json
├── latest-knowledge-check-result.json
└── latest-create-result.json

latest-draft.json 是唯一草稿真源。不要直接覆盖它,只能通过脚本写回。tbs-scene-session-init.py 默认会复用 120 秒内尚未写入业务文件的空 session(仅 SESSION.txt),用于抵抗审批/重试导致的多空目录;确需新会话时传 --force-new

常用命令与必读文档

| 脚本 | 必读 reference | 用途 | |---|---|---| | tbs-scene-session-init.py | references/tbs-scene-parse.md | 初始化 session | | tbs-scene-payload-write.py | references/common-params.md | 安全写 payload | | tbs-scene-preflight.py | references/tbs-scene-preflight.md | 只读判断下一步 | | tbs-scene-parse.py | references/tbs-scene-parse.md | 解析/合并/推进 | | tbs-scene-knowledge-check.py | references/tbs-scene-parse.md | 产品知识查重/创建 | | tbs-scene-validate.py | references/tbs-scene-validate.md | FULL/TBV 校验 | | tbs-scene-finalize-from-session.py | references/tbs-scene-create.md | 用户确认后的总落库入口 |

补充:用户可见话术看 references/output-templates.md;场景正文生成看 references/scenario-json-parse.md;输出自检看 references/review-checklist.md;鉴权看 references/auth.md

Gate-5

用户最终确认后,OpenClaw/Agent 只调用:

python3 scripts/tbs-scene-finalize-from-session.py \
  --session-dir "<sessionDir>" \
  --user-confirmation 确认 \
  --access-token "<access-token>"

不要直接调用 tbs-scene-create.py。该脚本只允许被 session/finalize wrapper 内部调用。

路径选择

  • 路径 A:Gate-2 先完成 knowledge-check,之后生成场景、FULL validate、最终确认、finalize。
  • 路径 B:设置 meta.deferKnowledgeCmsCheckUntilPreCreate=true,把 CMS 知识查重/创建推迟到用户最终确认后,由 finalize 自动执行。

路径 B 写入 knowledgeIds 后会再跑一次 FULL validate;这是必要校验,不属于重复探路。

反向示例

  • 未读 reference 就执行脚本。
  • 用户可见回复自由发挥,未套用 output-templates.md 对应模板。
  • 首轮“我要创建场景”时自行改写模板 0,或用自创的“完整描述/引导回答”结构替代模板 0。
  • 直接手写 JSON 覆盖 latest-draft.json
  • 每轮用户消息都跑 parse + validate
  • 向用户展示 scenarioGenerated=falseREADY_FOR_SCENE_GENERATIONdraftparsevalidate 等内部状态。
  • 在场景内容生成事务中间停下向用户解释内部判断,而不是连续执行到模板 3 或业务化失败提示。
  • 用户未确认就进入 Gate-5。
  • Agent 直接调用 tbs-scene-create.py
  • scene.knowledgeIds 非空就认为知识已就绪;必须看 meta.knowledgeReady=true
  • 在 knowledge-check 与第二次 FULL validate 之间再跑 parse。

错误处理与通用参数

通用错误格式、--params-file、JSON 安全写入与展示声明规则见 references/common-params.md


目录结构

cms-tbs-scene-create/
├── SKILL.md
├── version.json
├── scripts/
│   ├── tbs-client.py
│   ├── tbs-scene-session-init.py
│   ├── tbs-scene-payload-write.py
│   ├── tbs-scene-preflight.py
│   ├── tbs-scene-parse.py
│   ├── tbs-scene-knowledge-check.py
│   ├── tbs-scene-validate.py
│   ├── tbs-scene-create-from-session.py
│   └── tbs-scene-finalize-from-session.py
└── references/
    ├── auth.md
    ├── common-params.md
    ├── tbs-scene-parse.md
    ├── tbs-scene-preflight.md
    ├── tbs-scene-validate.md
    ├── tbs-scene-create.md
    ├── scenario-json-parse.md
    ├── output-templates.md
    └── review-checklist.md