Files
agent-desk-ng/internal/pkg/i18nx/locales/zh-CN.yml
mono 63e0457886 fix: harden identity, live access, drafts and setup (review only)
Source-reviewed hardening changes and regression tests. UNBUILT / UNTESTED: not a deployable release. Go formatting, compilation, automated regression tests, full frontend validation and staging acceptance remain required. See docs/hardening/VALIDATION.md. Main remains the original clean snapshot; no upstream Git history imported.
2026-10-16 12:15:20 +00:00

580 lines
34 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Modified in the independent hardening fork; upstream notices retained.
error.e0001: "AI Agent not found"
error.e0002: "AI Agent 不存在"
error.e0003: "AI Agent 不存在或已停用"
error.e0004: "AI Agent 不存在或未启用"
error.e0005: "AI Agent 名称不能为空"
error.e0006: "AI Agent 名称已存在"
error.e0007: "AI Agent不存在或未启用"
error.e0008: "AI Agent关联的AI配置不存在"
error.e0009: "AI 配置不存在"
error.e0010: "AI 配置不能为空"
error.e0011: "AI 配置未启用"
error.e0012: "AI配置不存在"
error.e0014: "CheckPoint 不存在"
error.e0015: "CheckPoint 与 AI Agent 不匹配"
error.e0016: "MCP Tool 的 toolCode 与 serverCode 不一致"
error.e0017: "MCP Tool 的 toolCode 与 toolName 不一致"
error.e0018: "MCP Tool 的 toolCode 格式不合法"
error.e0019: "MCP Tool 的 toolCode、serverCode 和 toolName 不能为空"
error.e0020: "仅允许配置 MCP Tool"
error.e0021: "MCP Tool 配置格式不合法"
error.e0022: "Excel文件为空"
error.e0023: "Excel文件解析失败"
error.e0024: "Excel文件读取失败"
error.e0025: "FAQ不存在"
error.e0026: "FAQ知识库不支持文档"
error.e0027: "Graph Tools 仅允许配置 Graph Tool"
error.e0028: "Graph Tools 配置格式不合法"
error.e0029: "HTML 消息内容为空"
error.e0030: "HTML消息中的图片必须使用已上传文件"
error.e0031: "JSON 数组格式不合法"
error.e0032: "MCP endpoint不能为空"
error.e0033: "MCP服务未启用"
error.e0034: "MCP服务配置不存在"
error.e0035: "MCP未启用"
error.e0036: "OIDC clientId 未配置"
error.e0037: "OIDC clientSecret 未配置"
error.e0038: "OIDC id_token 不存在"
error.e0039: "OIDC issuer 未配置"
error.e0040: "OIDC redirectUrl 未配置"
error.e0041: "OIDC 授权 code 不能为空"
error.e0042: "OIDC 用户信息不存在"
error.e0043: "OIDC 用户标识不存在"
error.e0044: "OIDC 登录密钥未配置"
error.e0045: "OIDC 登录未启用"
error.e0046: "OIDC 登录状态无效或已过期"
error.e0047: "OIDC 账号绑定的系统用户不存在"
error.e0048: "OSS accessKeyId 未配置"
error.e0049: "OSS accessKeySecret 未配置"
error.e0050: "OSS bucket 未配置"
error.e0051: "OSS endpoint 未配置"
error.e0052: "Skill ID 不合法"
error.e0053: "Skill 不存在"
error.e0054: "Skill 不存在或未启用"
error.e0055: "Skill 名称不能为空"
error.e0056: "Skill 未启用"
error.e0057: "Skill 参数不能为空"
error.e0058: "Skill 已存在"
error.e0059: "Web渠道配置 position 只能为 left 或 right"
error.e0060: "Web渠道配置不合法"
error.e0061: "aiAgentId不能为空"
error.e0062: "channel not found"
error.e0063: "checkPointId不能为空"
error.e0064: "conversationId不能为空"
error.e0065: "customerId 必填"
error.e0066: "documentId或faqId不能为空"
error.e0067: "indexStatus参数不合法"
error.e0068: "openKfID不能为空"
error.e0069: "openKfId 已被其他渠道使用"
error.e0070: "serverCode不能为空"
error.e0071: "skillDefinitionId不能为空"
error.e0072: "ticket 不能为空"
error.e0073: "toolCode 绑定的 MCP 服务不存在或未启用"
error.e0074: "toolCode不能为空"
error.e0075: "toolCode格式不合法"
error.e0076: "toolName不能为空"
error.e0077: "tool_search 只支持调用 MCP toolCode"
error.e0078: "userMessage不能为空"
error.e0079: "上传文件超过大小限制"
error.e0080: "不支持的发送人类型"
error.e0081: "不支持的已读操作类型"
error.e0082: "不支持的文件存储类型"
error.e0083: "不能将标签设为自己的子标签"
error.e0084: "不能将目录设为自己的子目录"
error.e0085: "不能添加或修改历史日期的排班"
error.e0086: "事务上下文不能为空"
error.e0087: "仅允许撤回自己发送的消息"
error.e0088: "仅已删除的 Skill 支持恢复"
error.e0089: "仅支持.xlsx文件"
error.e0090: "仅支持上传图片文件"
error.e0091: "仅支持撤回客服消息"
error.e0092: "仅能指定一条主联系方式"
error.e0093: "企业微信 AgentID 未配置"
error.e0094: "企业微信 openKfID 不能为空"
error.e0095: "企业微信媒体ID不能为空"
error.e0096: "企业微信客户ID不能为空"
error.e0097: "企业微信手机号已被系统用户占用"
error.e0098: "企业微信接入渠道未绑定AI Agent"
error.e0099: "企业微信接入渠道绑定的AI Agent不存在或已禁用"
error.e0100: "企业微信未启用或配置不完整"
error.e0101: "企业微信消息ID不能为空"
error.e0102: "企业微信渠道配置不合法"
error.e0103: "企业微信渠道配置缺少 openKfId"
error.e0104: "企业微信用户ID已被系统用户名占用"
error.e0105: "企业微信用户ID获取失败"
error.e0106: "企业微信用户信息不存在"
error.e0107: "企业微信登录回调地址未配置"
error.e0108: "企业微信登录密钥未配置"
error.e0109: "企业微信登录未启用"
error.e0110: "企业微信登录状态无效"
error.e0111: "企业微信登录状态无效或已过期"
error.e0112: "企业微信账号绑定的系统用户不存在"
error.e0113: "企业微信返回的图片 media_id 为空"
error.e0114: "企业微信返回的消息ID为空"
error.e0115: "企业微信邮箱已被系统用户占用"
error.e0116: "会话不存在"
error.e0117: "会话与 AI Agent 不匹配"
error.e0118: "会话与客户不匹配"
error.e0119: "会话已关闭"
error.e0120: "会话未分配客服,暂不允许发送消息"
error.e0121: "会话筛选项不合法"
error.e0122: "供应商不能为空"
error.e0123: "知识不足回复策略不合法"
error.e0124: "公司不存在"
error.e0125: "公司名称不能为空"
error.e0126: "公司名称已存在"
error.e0127: "关联用户不存在"
error.e0128: "关闭原因不能为空"
error.e0129: "内容类型不支持"
error.e0130: "分块策略不支持"
error.e0131: "创建会话失败"
error.e0132: "单条排班记录不能跨天"
error.e0133: "参数不合法"
error.e0134: "只有处理中会话允许转接"
error.e0135: "只有待接入会话允许分配"
error.e0136: "只有待接入会话允许自动分配"
error.e0137: "只有待接入未分配会话允许自动分配"
error.e0138: "只能移动当前知识库下的FAQ"
error.e0139: "只能移动当前知识库下的文档"
error.e0140: "只能调整同知识库同级目录排序"
error.e0141: "同级下已存在相同名称的标签"
error.e0142: "同级下已存在相同名称的目录"
error.e0143: "启用中的AI配置不允许删除"
error.e0144: "回复超时秒数不能小于 0"
error.e0145: "图片消息缺少 assetId"
error.e0146: "图片资源不存在"
error.e0147: "基础地址不能为空"
error.e0148: "处理进展不能为空"
error.e0149: "外部用户标识不能为空"
error.e0150: "外部身份未初始化"
error.e0151: "存在冲突排班,请先处理冲突"
error.e0152: "存在子目录的目录不能移动到二级目录"
error.e0153: "存在无效工单标签"
error.e0154: "存在未启用的工单标签"
error.e0155: "客户不存在"
error.e0156: "客户名称不能为空"
error.e0157: "客服会话不能为空"
error.e0158: "客服会话参数不完整"
error.e0159: "客服会话密钥未配置"
error.e0160: "客服会话已过期"
error.e0161: "客服会话校验失败"
error.e0162: "客服工号和展示名不能为空"
error.e0163: "客服工号已存在"
error.e0164: "客服档案不存在"
error.e0165: "客服状态不合法"
error.e0166: "客服组下仍有关联 AI Agent,无法删除"
error.e0167: "客服组下仍有关联客服档案,无法删除"
error.e0168: "客服组下仍有关联组排班,无法删除"
error.e0169: "客服组不存在"
error.e0170: "客服组名称不能为空"
error.e0171: "客服组名称已存在"
error.e0172: "客服组排班不存在"
error.e0173: "客服组未启用"
error.e0174: "客服组状态不合法"
error.e0175: "密码长度不合法"
error.e0176: "导入文件读取失败"
error.e0177: "导入模式不合法"
error.e0178: "工单不存在"
error.e0179: "工单描述不能为空"
error.e0180: "工单来源不合法"
error.e0181: "工单标题不能为空"
error.e0182: "工单状态不合法"
error.e0183: "已关闭的会话无法关联客户"
error.e0184: "已删除的 Skill 不能直接修改状态,请先恢复"
error.e0185: "已有接入渠道绑定该 AI Agent,无法删除"
error.e0186: "平台消息不存在"
error.e0187: "当前 OIDC 绑定已停用"
error.e0188: "当前企业微信绑定已停用"
error.e0189: "当前会话不处于 AI 接待状态"
error.e0190: "当前会话已分配客服"
error.e0191: "当前会话已分配给其他客服"
error.e0192: "当前会话已由人工客服接管"
error.e0193: "当前会话未分配客服"
error.e0194: "当前暂不在人工客服服务时间内"
error.e0195: "当前暂不支持该存储类型的文件读取"
error.e0196: "当前渠道不支持用户 JWT Secret"
error.e0197: "当前状态不允许关闭会话"
error.e0198: "当前登录身份不是企业内部成员"
error.e0199: "当前知识库不是FAQ知识库"
error.e0200: "当前系统账号已被禁用"
error.e0201: "微信公众号渠道配置不合法"
error.e0202: "微信授权 code 不能为空"
error.e0203: "快捷回复不存在"
error.e0204: "所属公司不存在"
error.e0205: "所属客服组不存在"
error.e0206: "手机号已存在"
error.e0207: "技能说明不能为空"
error.e0208: "接入渠道不存在"
error.e0209: "接入渠道不存在或已停用"
error.e0210: "接入渠道异常"
error.e0211: "接入渠道未初始化"
error.e0212: "接收人不能为空"
error.e0213: "文件不可访问"
error.e0214: "文件不存在"
error.e0215: "文本内容不能为空"
error.e0216: "文本列表不能为空"
error.e0217: "文本消息内容为空"
error.e0218: "文档不存在"
error.e0219: "文档知识库不能使用FAQ分块策略"
error.e0220: "新密码不能为空"
error.e0221: "无权关闭该会话"
error.e0222: "无权访问该会话"
error.e0223: "无权转接该会话"
error.e0224: "无权限关联该会话"
error.e0225: "无权限执行该操作"
error.e0226: "无权限操作"
error.e0227: "时间格式错误"
error.e0228: "星期必须在 1 到 7 之间"
error.e0229: "最大并发接待数不能小于 0"
error.e0230: "服务模式不合法"
error.e0231: "未找到匹配的企业微信接入渠道"
error.e0232: "未生成任何排班"
error.auth.expired: "未登录或登录已过期"
error.auth.passwordLoginDisabled: "账号密码登录已禁用,请使用第三方登录。"
error.auth.staffSsoOnPortal: "单点登录仅供客服人员使用,请使用邮箱和密码登录。"
error.e0234: "未配置可用的 AI 配置"
error.e0235: "未配置可用的 Embedding 模型"
error.e0236: "权限不存在"
error.e0237: "标准问题已存在,已跳过"
error.e0238: "标签不存在"
error.e0239: "标签名称不能为空"
error.e0240: "标题和内容不能为空"
error.e0241: "检索日志不存在"
error.e0242: "模型名称不能为空"
error.e0243: "模型类型不能为空"
error.e0244: "消息不存在"
error.e0245: "消息内容不能为空"
error.e0246: "消息已撤回"
error.e0247: "渠道名称不能为空"
error.e0248: "渠道标识已存在"
error.e0249: "渠道状态不合法"
error.e0250: "渠道类型不合法"
error.e0251: "父标签不存在"
error.e0252: "父目录不存在"
error.e0253: "父目录不属于当前知识库"
error.e0254: "状态值不合法"
error.e0255: "用户不存在"
error.e0256: "用户不存在或已被禁用"
error.e0257: "用户名不能为空"
error.e0258: "用户名和密码不能为空"
error.e0259: "用户名已存在"
error.e0260: "用户名或密码错误"
error.e0261: "用户名称不能为空"
error.e0262: "用户标识不能为空"
error.e0263: "用户身份不能为空"
error.e0264: "用户身份已过期"
error.e0265: "用户身份校验失败"
error.e0266: "用户身份校验未配置"
error.e0267: "登录凭证已失效"
error.e0268: "登录凭证已过期"
error.e0269: "登录凭证无效"
error.e0270: "登录失败次数过多,请稍后再试"
error.e0271: "登录票据无效或已过期"
error.e0272: "登录结果不能为空"
error.e0273: "目录不存在"
error.e0274: "目录不能移动到其他知识库"
error.e0275: "目录名称不能为空"
error.e0276: "目标客服不存在"
error.e0277: "目标客服不能与当前指派人相同"
error.e0278: "目标客服不能为空"
error.e0279: "目标工具未被当前会话授权"
error.e0280: "相似问格式不合法"
error.e0281: "知识库下存在FAQ,无法删除"
error.e0282: "知识库下存在文档,无法删除"
error.e0283: "知识库不存在"
error.e0284: "知识库不能为空"
error.e0285: "知识库未启用"
error.e0286: "知识库目录不可用"
error.e0287: "知识库目录不存在"
error.e0288: "知识库目录不属于当前知识库"
error.e0289: "知识库目录最多支持二级"
error.e0290: "知识库类型不支持"
error.e0291: "禁用角色不允许分配"
error.e0292: "答案不能为空"
error.e0293: "系统内置角色不允许删除"
error.e0294: "组长用户不存在"
error.e0295: "结束日期必须晚于或等于开始日期"
error.e0296: "结束时间必须晚于开始时间"
error.e0297: "缺少标准问题列"
error.e0298: "缺少答案列"
error.e0299: "联系方式不存在"
error.e0300: "联系方式不能为空"
error.e0301: "联系方式类型不合法"
error.e0302: "视图不存在"
error.e0303: "视图名称不能为空"
error.e0304: "视图筛选条件格式不正确"
error.e0305: "角色不存在"
error.e0306: "角色名称和编码不能为空"
error.e0307: "角色已被用户使用,无法删除"
error.e0308: "角色编码已存在"
error.e0309: "该客服组在所选时间段已存在排班"
error.e0310: "该标签下存在子标签,无法删除"
error.e0311: "该标签已关联会话,无法删除"
error.e0312: "该标签已关联工单,无法删除"
error.e0313: "该渠道不支持开放客服配置"
error.e0314: "该用户已存在客服档案"
error.e0315: "该目录下存在FAQ,无法删除"
error.e0316: "该目录下存在子目录,无法删除"
error.e0317: "该目录下存在文档,无法删除"
error.e0318: "该联系方式已存在"
error.e0319: "请使用删除接口处理删除状态"
error.e0320: "请至少选择一个知识库"
error.e0321: "请选择 AI Agent"
error.e0322: "请选择上传图片"
error.e0323: "请选择上传文件"
error.e0324: "请选择上传附件"
error.e0325: "请选择关联用户"
error.e0326: "请选择客服组"
error.e0327: "请选择导入文件"
error.e0328: "请选择所属客服组"
error.e0329: "请选择星期"
error.e0330: "请选择要删除的FAQ"
error.e0331: "请选择要删除的文档"
error.e0332: "请选择要移动的FAQ"
error.e0333: "请选择要移动的文档"
error.e0334: "负责人不存在"
error.path.invalid: "路径参数错误"
error.invalidParam: "参数不合法"
error.e0336: "转人工执行方式不合法"
error.e0337: "通知不存在"
error.e0338: "邮箱已存在"
error.e0339: "配置名称不能为空"
error.e0340: "问题不能为空"
error.e0341: "问题不能超过500字"
error.e0342: "附件不存在"
error.e0343: "附件尚未上传完成"
error.e0344: "附件消息 payload 格式错误"
error.e0345: "附件消息缺少 assetId"
error.e0346: "附件消息缺少 payload"
error.e0347: "默认客服组待接入池模式必须至少选择一个客服组"
error.e0348: "出于安全考虑,此文件类型不支持上传"
error.e0354: "请求过于频繁,请稍后再试。"
error.profile.nicknameRequired: "请输入昵称"
error.profile.nicknameTooLong: "昵称不能超过 100 个字符"
error.profile.avatarTooLong: "头像链接不能超过 255 个字符"
error.profile.emailInvalid: "邮箱格式不正确"
error.notFound: "数据不存在"
error.knowledgeBase.referencedByAgent: "知识库已被 AI Agent「%s」引用,请先解除绑定"
error.knowledgeBase.referencedByAgents: "知识库已被 %d 个 AI Agent 引用,请先解除绑定"
error.agentTeamSchedule.batchLimit: "单次最多生成 %d 条排班"
error.agentTeamSchedule.conflictRange: "该客服组在 %s 至 %s 已存在排班"
error.knowledgeFAQImport.duplicateQuestionInFile: "同一文件中标准问题重复,首次出现于第%d行"
error.mcp.listToolsFailed: "列出 MCP 工具失败: %v"
error.mcp.callToolFailed: "调用 MCP 工具失败: %v"
error.mcp.connectServerFailed: "连接 MCP Server 失败: %v"
error.wxwork.unsupportedOutboundMessageType: "不支持的企业微信下行消息类型: %s"
error.wxwork.currentUnsupportedOutboundMessageType: "当前暂不支持企业微信下行消息类型: %s"
error.param.required: "参数:%s不能为空"
error.oidc.loginDisabled: "OIDC 登录未启用"
error.oidc.stateSecretMissing: "OIDC 登录密钥未配置"
error.oidc.profileMissing: "OIDC 用户信息不存在"
error.oidc.bindingDisabled: "当前 OIDC 绑定已停用"
error.oidc.boundUserMissing: "OIDC 账号绑定的系统用户不存在"
error.wxwork.loginDisabled: "企业微信登录未启用"
error.wxwork.loginSecretMissing: "企业微信登录密钥未配置"
error.wxwork.profileMissing: "企业微信用户信息不存在"
error.wxwork.bindingDisabled: "当前企业微信绑定已停用"
error.wxwork.boundUserMissing: "企业微信账号绑定的系统用户不存在"
error.wxwork.userIDMissing: "企业微信用户ID获取失败"
error.wxwork.userIDTaken: "企业微信用户ID已被系统用户名占用"
error.wxwork.mobileTaken: "企业微信手机号已被系统用户占用"
error.wxwork.emailTaken: "企业微信邮箱已被系统用户占用"
error.wxwork.configIncomplete: "企业微信未启用或配置不完整"
error.customerSession.secretMissing: "客服会话密钥未配置"
error.conversation.createFailed: "创建会话失败"
error.conversation.tooManyOpen: "您已有 %d 个进行中的请求,请先关闭其中一个再新建。"
error.conversation.tagNotFound: "标签不存在"
error.aiConfig.noneEnabled: "未配置可用的 AI 配置"
error.embeddingModel.noneEnabled: "未配置可用的 Embedding 模型"
error.agentTeamSchedule.startAtInvalid: "开始时间格式错误"
error.agentTeamSchedule.startAtInvalidWithFormat: "开始时间格式错误,请使用 yyyy-MM-dd HH:mm:ss 或 RFC3339"
error.agentTeamSchedule.endAtInvalid: "结束时间格式错误"
error.agentTeamSchedule.endAtInvalidWithFormat: "结束时间格式错误,请使用 yyyy-MM-dd HH:mm:ss 或 RFC3339"
error.agentTeamSchedule.startDateInvalid: "开始日期格式错误"
error.agentTeamSchedule.startDateInvalidWithFormat: "开始日期格式错误,请使用 yyyy-MM-dd"
error.agentTeamSchedule.endDateInvalid: "结束日期格式错误"
error.agentTeamSchedule.endDateInvalidWithFormat: "结束日期格式错误,请使用 yyyy-MM-dd"
error.agentTeamSchedule.startTimeInvalid: "开始时间格式错误"
error.agentTeamSchedule.startTimeInvalidWithFormat: "开始时间格式错误,请使用 HH:mm 或 HH:mm:ss"
error.agentTeamSchedule.endTimeInvalid: "结束时间格式错误"
error.agentTeamSchedule.endTimeInvalidWithFormat: "结束时间格式错误,请使用 HH:mm 或 HH:mm:ss"
tool.builtin.toolSearch.title: "搜索并调用动态工具"
tool.builtin.toolSearch.description: "用于搜索当前允许使用的 MCP 工具,并在确认目标 toolCode 后动态调用该工具。适合处理长尾工具,不应替代固定内置流程工具。"
tool.builtin.toolSearch.appendix: |-
当你需要使用长尾 MCP 能力时,优先使用 tool_search 工具,并遵守以下规则:
1. 先调用 tool_search 搜索需要的动态工具,再继续使用已选中的真实工具。
2. 不要假设所有长尾工具一开始就可见;只有被 tool_search 选中的工具,后续模型调用才会暴露出来。
3. 如果当前已有固定内置工具可以完成任务,优先使用固定工具,不要滥用 tool_search。
tool.builtin.skill.title: "加载专项技能说明"
tool.builtin.skill.description: "用于按需加载当前 Agent 可用的专项技能说明文档,适合在需要专项处理规则时再注入上下文。"
tool.graph.triageServiceRequest.title: "服务请求分流"
tool.graph.triageServiceRequest.description: "Graph Tool。分析当前会话,判断应继续回答、准备工单草稿还是转人工;当适合创建工单时,也会准备工单草稿。"
tool.graph.triageServiceRequest.appendix: |-
当你需要在继续回答、创建工单、转人工之间做判断时,优先调用 triage_service_request,并遵守以下规则:
1. 工具会返回 recommendedAction,并在需要创建工单时包含 ticketDraft。
2. 如果 recommendedAction=continue_answering,继续澄清或回答,不要直接升级。
3. 如果 recommendedAction=prepare_ticket,使用 ticketDraft 或补充缺失字段后,再考虑调用 create_ticket_with_confirmation。
4. 如果 recommendedAction=handoff_to_human,先确认转人工原因足够明确,再调用 handoff_to_human。
5. 当升级路径不明确时,使用此工具,而不是只依赖主提示词做复杂路由判断。
tool.graph.analyzeConversation.title: "分析会话风险和摘要"
tool.graph.analyzeConversation.description: "Graph Tool。总结当前会话,识别风险信号,并建议继续回答、创建工单或转人工。"
tool.graph.analyzeConversation.appendix: |-
当会话可能涉及升级、退款、赔偿、明显负面情绪、创建工单或转人工时,优先调用 analyze_conversation,并遵守以下规则:
1. 此工具返回结构化摘要、风险信号和下一步建议;它不会创建工单或执行转人工。
2. 如果工具建议 handoff_to_human,先确认转人工条件,再调用 handoff_to_human。
3. 如果工具建议 prepare_ticket,调用 prepare_ticket_draft 或继续收集信息后再创建工单。
4. 如果工具建议 continue_answering,继续澄清和回答,不要过早升级。
tool.graph.prepareTicketDraft.title: "准备工单草稿"
tool.graph.prepareTicketDraft.description: "Graph Tool。基于当前会话和已收集信息准备工单草稿,包括建议标题、描述、缺失字段和追问问题。"
tool.graph.prepareTicketDraft.appendix: |-
当用户要求创建工单、投诉、报障或售后处理,但标题或描述仍不清晰时,优先调用 prepare_ticket_draft,并遵守以下规则:
1. 此工具会准备工单草稿,并返回建议标题、建议描述、缺失字段和追问问题。
2. 如果 ready=false,根据 missingFields 和 followUpQuestions 继续追问,不要直接创建工单。
3. 如果 ready=true,使用结果考虑调用 create_ticket_with_confirmation。
4. 此工具只准备草稿,不会创建工单。
tool.graph.createTicketConfirm.title: "创建工单确认流程"
tool.graph.createTicketConfirm.description: "Graph Tool。处理工单参数准备、用户确认、实际创建工单和结果返回。"
tool.graph.createTicketConfirm.appendix: |-
收集到足够信息后,可以调用 create_ticket_with_confirmation,但必须遵守以下规则:
1. 只有当用户明确想提交工单、投诉、问题报告或售后请求时,才考虑使用此工具。
2. 调用前准备清晰的工单标题和问题描述;如果信息仍然分散,先调用 prepare_ticket_draft 或继续追问。
3. 一旦准备创建工单,必须调用 create_ticket_with_confirmation,不要只用文本声称工单已创建。
4. 此 Graph Tool 会先请求用户确认;只有用户确认后才会创建工单,用户取消则流程结束。
5. 如果用户只是提问、泛泛抱怨或表达不满但没有明确要求创建工单,应继续澄清,而不是主动创建。
tool.graph.handoffConversation.title: "转人工确认流程"
tool.graph.handoffConversation.description: "Graph Tool。处理转人工原因准备、用户确认、实际转人工和结果返回。"
tool.graph.handoffConversation.appendix: |-
确认需要人工帮助后,可以调用 handoff_to_human,但必须遵守以下规则:
1. 只有当用户明确要求人工客服,或你判断该问题必须由人工处理时才调用此工具。
2. 调用前清晰总结转人工原因;如果原因模糊,先追问。
3. 一旦决定转人工,必须调用 handoff_to_human,不要只用文本声称已接入人工。
4. 此 Graph Tool 会先请求用户确认;只有用户确认后才会转人工,用户取消则流程结束。
5. 如果问题仍可在当前会话解决,继续帮助用户,不要过早升级。
6. 如果工具返回 terminal=true 且 shouldRetry=false,说明转人工流程已结束,不要重复调用。
conversation.handoff.waiting: "正在为你接入人工客服,请稍候。"
conversation.handoff.offHours: "当前不在人工客服服务时间内。您的请求已进入排队队列,客服上班后将尽快为您处理。"
notification.ticketAssigned.title: "工单指派提醒"
notification.ticketAssigned.line: "工单 %s 已指派给你"
notification.ticketAssigned.reason: "指派原因: %s"
notification.conversationTransferred.title: "会话转接提醒"
notification.conversationAutoAssigned.title: "会话自动分配提醒"
notification.conversationAssigned.title: "会话分配提醒"
notification.conversationAssigned.line: "会话 #%s 已分配给你"
notification.conversationAssigned.reason: "分配原因: %s"
notification.conversationTransferred.reason: "转接原因: %s"
notification.ticketAssigned.wxwork.no: "工单号: %s"
notification.ticketAssigned.wxwork.title: "工单标题: %s"
notification.ticketAssigned.wxwork.status: "当前状态: %s"
notification.assignee: "处理人: %s"
notification.conversationAssigned.wxwork.id: "会话ID: #%d"
notification.conversationAssigned.wxwork.summary: "摘要: %s"
notification.conversationAssigned.wxwork.channel: "渠道: %s"
notification.conversationAssigned.wxwork.status: "状态: %s"
notification.time: "时间: %s"
graph.confirmOrCancel: "请回复“确认”或“取消”。"
graph.needExplicitConfirmation: "需要你明确确认。请回复“确认”或“取消”。"
graph.confirmationExpired: "本次确认已过期,请重新发起。"
graph.cancelCreateTicket: "已取消本次工单创建。"
graph.cancelHandoff: "已取消本次转人工。"
graph.ticketCreated: "工单已创建。工单号:%s。标题:%s。"
graph.createTicketConfirmPrompt: |-
我已准备好为你创建工单。
标题:%s
描述:%s
请回复“确认”或“取消”。
graph.defaultHandoffReason: "用户需要人工客服支持。"
graph.handoffConfirmPrompt: |-
我已准备好为你接入人工客服。
原因:%s
请回复“确认”或“取消”。
conversation.interrupt.defaultPrompt: "请补充更多信息后再试。"
conversation.summary.image: "[图片]"
error.auth.invalidSignature: "签名无效。"
error.email.channelNotFound: "未找到可用的邮件渠道。"
error.email.channelConfigInvalid: "邮件渠道配置无效。"
error.email.requestEmailInvalid: "请填写有效的邮箱地址。"
error.email.requestMessageRequired: "请求内容不能为空。"
error.email.requestSecretNotConfigured: "提交了密钥,但当前部署未配置可用于校验的密钥。"
error.email.request.acknowledgement: "感谢您的联系。我们已收到您的请求,团队正在处理中。回复将发送至本邮箱,您可以直接在本邮件线程中补充更多信息。"
error.email.request.chatContinuation: "我们收到您的消息时,您仍有一个进行中的会话,因此已将其添加到该会话中。请在会话中继续,以便我们的团队尽快回复您。"
email.contact.verifiedRemark: "地址已由提交方集成验证。"
email.contact.unverifiedRemark: "由提交方自行填写,未经验证。"
error.email.channelIdRequired: "请指定渠道。"
error.email.probeRequiresSmtp: "只有 SMTP 绑定可以用此方式验证。"
error.email.smtpHostMissing: "该渠道未配置 SMTP 主机。"
error.email.probeFailed: "无法连接邮件服务器:%s"
error.branding.companyNameInvalid: "平台名称必须是文本。"
error.branding.companyNameTooLong: "平台名称最多 120 个字符。"
error.branding.companyLogoUrlInvalid: "Logo 必须是相对路径或 http(s) 地址。"
error.branding.companyLogoUrlTooLong: "Logo 地址最多 500 个字符。"
systemConfig.branding.companyName.title: "平台名称"
systemConfig.branding.companyName.description: "显示在门户页头、控制台和页面标题中。"
systemConfig.branding.companyLogoUrl.title: "平台 Logo"
systemConfig.branding.companyLogoUrl.description: "留空则使用内置 Logo。"
conversation.summary.attachment: "[附件]"
conversation.summary.recalled: "该消息已撤回。"
ticket.defaultConversationTitle: "会话工单"
error.docPage.sortScopeMismatch: "排序页面必须完整属于同一父页面"
error.docPage.sortDuplicate: "排序页面中存在重复项"
error.docPage.notFound: "帮助文档不存在"
error.docPage.invalidStatus: "帮助文档状态不合法"
error.docPage.invalidSlug: "Slug 仅支持字母、数字和连字符(-)"
error.docPage.slugRequired: "请填写 Slug"
error.docPage.slugDuplicate: "同一父页面下的 Slug 不能重复"
error.docPage.publishParentFirst: "请先发布父级文档"
error.docPage.unpublishChildrenFirst: "请先撤回已发布的子文档"
error.supportConfig.navigationRequired: "请至少配置一个导航菜单"
error.supportConfig.navigationInvalidJSON: "导航菜单配置必须是合法的 JSON 数组"
error.supportConfig.navigationTooMany: "一级导航菜单不能超过 20 个"
error.supportConfig.navigationChildrenTooMany: "每个导航菜单的子菜单不能超过 20 个"
error.supportConfig.navigationTooDeep: "导航菜单最多支持二级"
error.supportConfig.navigationTitleRequired: "请填写导航标题"
error.supportConfig.navigationTitleTooLong: "导航标题不能超过 64 个字符"
error.supportConfig.navigationURLRequired: "请填写导航链接"
error.supportConfig.navigationURLInvalid: "导航链接必须是站内路径或 http/https 地址"
error.supportConfig.navigationVisibleRequired: "请至少显示一个导航菜单"
error.supportConfig.validationFailed: "配置校验失败"
error.supportConfig.groupUnsupported: "不支持该配置分组"
error.supportConfig.keyUnsupported: "不支持的配置项:%v"
error.supportConfig.emptyPayload: "请至少提交一个配置项"
systemConfig.support.navigationMenu.title: "支持中心导航菜单"
systemConfig.support.navigationMenu.description: "支持中心公开页面顶部和移动端导航菜单"
systemConfig.support.navigationMenu.default.home: "首页"
systemConfig.support.navigationMenu.default.docs: "文档"
systemConfig.support.navigationMenu.default.community: "社区"
tool.graph.createTicketConfirm.info: "Graph Tool。处理工单参数准备、用户确认、实际创建工单和结果返回。仅当用户明确要求创建工单且标题、描述清晰时使用。"
tool.graph.createTicketConfirm.param.title: "工单标题。简洁概括问题。"
tool.graph.createTicketConfirm.param.description: "工单描述。清晰记录用户的问题、现象和诉求。"
tool.graph.handoffConversation.info: "Graph Tool。处理转人工原因准备、用户确认、实际转人工和结果返回。仅当用户明确要求人工客服,或你确认需要人工处理时使用。当结果 terminal=true 且 shouldRetry=false 时不要重复调用。"
tool.graph.handoffConversation.param.reason: "转人工原因。简要说明为什么需要人工,例如用户明确要求、需要人工核验或售后处理。"
tool.graph.triageServiceRequest.info: "Graph Tool。分析当前会话,判断应继续回答、准备工单草稿还是转人工。建议创建工单时,会返回结构化工单草稿建议。"
tool.graph.triageServiceRequest.param.goal: "分析目标,例如是否升级、创建工单或转人工。"
tool.graph.triageServiceRequest.param.observedIssue: "当前会话中观察到的主要问题或争议。"
tool.graph.triageServiceRequest.param.needTicket: "是否重点评估创建工单。"
tool.graph.triageServiceRequest.param.needHumanHandoff: "是否重点评估转人工。"
tool.graph.triageServiceRequest.param.additionalContext: "补充上下文,例如已经识别的风险信号或约束。"
tool.graph.analyzeConversation.info: "Graph Tool。总结当前会话,识别投诉、支付、情绪等风险信号,并建议继续回答、创建工单或转人工。"
tool.graph.analyzeConversation.param.goal: "分析目标,例如是否转人工、创建工单或执行风险复核。"
tool.graph.analyzeConversation.param.observedIssue: "当前会话中观察到的主要问题或请求。"
tool.graph.analyzeConversation.param.needQualityCheck: "是否重点进行风险或质量复核。"
tool.graph.analyzeConversation.param.additionalContext: "补充上下文,例如争议点、投诉点或已识别的业务约束。"
tool.graph.prepareTicketDraft.info: "Graph Tool。根据当前会话和已收集信息准备工单草稿。当工单内容需要整理时,应在 create_ticket_with_confirmation 之前使用。"
tool.graph.prepareTicketDraft.param.title: "准备好的工单标题,可选。"
tool.graph.prepareTicketDraft.param.description: "准备好的工单描述,可选。"
tool.graph.prepareTicketDraft.param.issue: "用户正在遇到的问题或报错信息。"
tool.graph.prepareTicketDraft.param.impact: "影响范围,例如无法登录、无法下单或业务中断。"
tool.graph.prepareTicketDraft.param.expectedOutcome: "用户期望的处理结果或诉求。"
tool.graph.prepareTicketDraft.param.currentAttempt: "当前已尝试过的处理步骤,可选。"
error.setup.invalidQuickFixAction: "不支持的一键修复操作:%v"
error.setup.authRequired: "请先登录以执行配置诊断或一键修复"
error.setup.previewRequired: "应用更改前,请先预览设置并明确确认预览令牌。"
error.setup.previewChanged: "预览后配置已更改。请重新预览后再应用。"
error.setup.targetRequired: "请选择具体记录,或在对应设置中选择所需配置。"
error.setup.targetUnavailable: "所选记录不可用、已删除或不符合条件,未进行恢复。"
error.setup.persistenceFailed: "无法读取或保存设置配置,未提交不完整的修复。"
error.setup.bypassUnsupported: "此诊断不支持绕过 AI。请检查仅人工路由,或单独测试 AI。"
error.channel.configChanged: "渠道配置已更改。请重新加载并检查更改后再保存。"
error.channel.configUpdateFailed: "无法保存渠道配置,请重试。"