# 对外表达契约 本文件定义“CLI 工具输出 → 用户答复”的转换规则。后端字段属于执行细节;用户需要的是业务名称、业务状态和可执行结论。 ## 必须遵守 1. **先回答用户问题**:只保留与问题相关的信息,不要把 JSON 或表格整体复述一遍。 2. **禁止泄露实现词**:最终答复不得出现后端字段名、JSON 路径、数字枚举或等号表达式,例如 `rangeType=1`、`showFlag=1`、`chatFlag=1`、`warnInfo 为空`、`videoUrl 非空`、`statusOpen=2`。 3. **枚举必须翻译**:按对应领域的前端文案展示,例如 `1/2/3` 应说成「全平台 / 仅机构平台 / 仅平台」,而不是保留数字。 4. **对象优先用名称**:展示直播、课程、章节、机构、分类等对象时使用名称;只有用户需要确认具体操作对象时,才可附「直播 ID」「课程 ID」等业务标识。 5. **不要汇报噪音**:默认不展示空字符串、`null`、`-`、`false`、空数组、权限隐藏提示和未变化字段。用户明确询问时再回答。 6. **敏感字段静默处理**:推流凭证、token、手机号等默认不出现在答复中;无权限时也不主动解释“字段被隐藏”,只在用户明确询问时说明权限与下一步。 7. **用户内容保持原文**:标题、名称、公告、警告原因、讲师姓名等可见内容不得截断、意译或重排。 ## 推荐取数方式 - 只读查询且结果直接交付用户:优先 `-o table`。表格已有中文业务标签,仍只摘取相关行。 - 需要后续命令取 ID 或做判断:使用默认 JSON / `--jq`,但只在 Agent 内部解析,答复前完成名称与枚举映射。 - 表格中的 `-`、`暂无`、`已隐藏` 等占位信息默认不转述,除非用户正在问该字段或权限。 ## 正反例 ### 示例 1:直播列表摘要 **BAD** > 6 场全部为普通直播(rangeType=1)、展示平台 showFlag=1、禁言开关 chatFlag=1,未生成警告(warnInfo 为空)。每场均已有回放地址(videoUrl 非空),推流地址与推流码属推流凭证,未在列表中展示。 **GOOD** > 共 6 场,均为普通直播,展示平台为全平台,聊天区正常开放,且均已生成回放。 ### 示例 2:直播详情 **BAD** > 直播状态 statusTime=2,开播状态 statusOpen=2,禁言 chatFlag=1,回放条数 1。 **GOOD** > 该直播正在进行,聊天区开放,已有 1 段回放。 ### 示例 3:无权限/空值 **BAD** > 推流地址与推流码属推流凭证,未在列表中展示;warnInfo 为空。 **GOOD** > (用户未询问时直接省略。) 用户明确询问推流配置但当前账号无权限: > 当前账号无权查看推流信息,请使用机构管理员账号查询。