Appearance
修改会话节点
修改会话节点用于重命名当前应用、当前用户作用域内的已有会话。修改成功后,会话 ID 保持不变,已经写入的消息和会话历史仍然属于原会话。
适用场景
- 用户确认主题后,把临时会话名改成容易识别的业务名称。
- 工单、订单或任务状态变化后,同步更新会话标题。
- 根据上游分类结果动态生成新的会话名称。
- 在不迁移消息、不更换会话 ID 的前提下修正会话名称。
使用前提与作用域
修改会话属于会话管理操作,执行时必须关联应用。资源库工作流试运行时需要选择目标应用,只关联智能体不能替代应用关联。
节点只会在“目标应用(项目)+ 当前用户”的作用域内查找待修改会话,并校验当前用户对目标应用的访问权限。相同名称但属于其他应用或其他用户的会话不会被修改。
添加与配置节点
- 在工作流画布中添加“修改会话”节点。
- 将上游节点连接到修改会话节点。
- 配置当前名称
conversationName和目标名称newConversationName。 - 使用
isSuccess判断是否找到并成功修改会话。 - 将返回的
conversationId交给后续消息或历史节点。

图中画布只保留开始、修改会话和结束节点;右侧面板展示当前版本固定的两个输入和三个输出字段。
输入参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
conversationName | String | 是 | 当前会话名称。也兼容传入会话 ID;通常应引用创建会话或查询会话列表得到的可靠值 |
newConversationName | String | 是 | 修改后的会话名称。支持固定文本或引用上游节点输出 |
两个输入在执行时都会去除首尾空白,去除后不能为空。
当前会话名称
如果名称来自用户输入,建议先通过查询会话列表确认目标。仅凭展示文本直接修改,可能因为名称错误、大小写差异或作用域不一致而找不到会话。
新会话名称
建议使用稳定的业务标识组成名称,例如 售后工单-20260824-已受理。如果业务要求名称唯一,应在修改前查询会话列表并自行判断目标名称是否已被占用。
WARNING
当前主运行链路不会在重命名前检查 newConversationName 是否与另一个会话重复。虽然节点仍保留 isExisted 输出,成功修改和找不到原会话时该字段当前都为 false。不要依赖它完成名称冲突校验。
输出参数
| 参数 | 类型 | 说明 |
|---|---|---|
isSuccess | Boolean | true 表示找到目标会话并完成更新;false 表示当前作用域内没有找到待修改会话 |
isExisted | Boolean | 为兼容节点契约保留。当前主运行链路没有用它报告目标名称冲突 |
conversationId | String | 修改后的会话 ID。修改名称不会改变 ID;找不到目标时为空字符串 |
修改成功时,典型结果为:
json
{
"isSuccess": true,
"isExisted": false,
"conversationId": "conv_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}找不到原会话时,节点返回:
json
{
"isSuccess": false,
"isExisted": false,
"conversationId": ""
}当前版本的执行逻辑
节点按以下顺序执行:
- 解析
conversationName和newConversationName的固定值或变量引用,并校验非空。 - 从运行上下文读取关联应用,校验当前用户对目标应用的访问权限。
- 优先把
conversationName作为会话 ID 查找;未命中时,再在当前应用和用户作用域内按名称查找有效会话。 - 没有找到目标时,返回
isSuccess=false和空conversationId。 - 找到目标时,更新会话名称与标题,保留原
conversationId、消息和历史记录。 - 返回固定的三个输出字段。
如果新名称与当前名称相同,节点仍会执行一次更新并返回成功;它不会创建新会话。
推荐编排
通过创建结果重命名
创建会话 → 判断 isSuccess → 修改会话 → 判断 isSuccess → 后续消息处理
创建会话节点输出的是 conversationId,而修改节点字段名仍叫 conversationName。当前执行器允许把该 ID 作为 conversationName 的值传入,这比重新拼接旧名称更稳定。
保证目标名称唯一
查询会话列表 → 检查 newConversationName 是否已存在 → 修改会话 / 生成新名称 → 结束
当前版本没有在主存储路径自动阻止重名,因此需要唯一性时必须把检查放在工作流中明确实现。
试运行与验收
建议在关联应用后按以下顺序验证:
- 创建一个测试会话并记录其
conversationId。 - 使用会话 ID 或当前名称执行修改,期望
isSuccess=true。 - 查询会话列表,确认名称已经改变、
conversationId保持不变。 - 如果会话已有消息,再查询会话历史,确认消息仍然存在。
- 使用不存在的旧名称执行一次,确认
isSuccess=false且conversationId为空。
不要在生产业务会话上随意试运行重命名。测试工作流应使用专门的应用和测试会话名称。
常见错误与处理
| 现象 | 原因 | 处理 |
|---|---|---|
| 提示需要关联应用 | 调试或运行上下文中没有目标应用,或只关联了智能体 | 在试运行配置中选择应用后重试 |
| 提示输入必填 | 任一输入为空、只含空白,或上游变量没有值 | 检查两个输入的固定值和变量引用 |
isSuccess=false 且 ID 为空 | 当前应用和用户作用域内没有找到原会话 | 先查询会话列表,确认名称或直接使用可靠的会话 ID |
| 修改后出现同名会话 | 当前主运行链路没有执行目标名称冲突检查 | 修改前查询列表并增加唯一性判断,或生成带业务 ID 的名称 |
| 权限校验失败 | 当前用户无权访问关联应用 | 切换到有权限的应用,或由管理员授予必要权限 |
| 修改成功但后续节点仍找不到会话 | 后续节点继续使用了旧名称 | 优先保存并传递不变的 conversationId,不要依赖旧名称 |
与旧文档的核对结论
| 旧文档内容 | 当前处理 |
|---|---|
| 修改会话名称,不改变会话 ID 和消息 | 保留;当前存储更新会话记录,不迁移消息 |
conversationName、newConversationName 均为必填 String | 保留,字段和类型与当前节点定义一致 |
| 两个输入支持固定值或变量引用 | 保留 |
输出 isSuccess、isExisted、conversationId | 保留,但补充当前主运行链路对 isExisted 的真实行为 |
新名称已存在时修改失败并返回 isExisted=true | 不沿用;当前主存储路径没有执行该冲突检查 |
| 只能修改由“创建会话”节点创建的会话 | 不沿用;当前实现按应用、用户和会话 ID/名称查找,没有校验创建来源 |
| 试运行操作草稿态临时会话,与线上数据隔离 | 不作为节点契约沿用;当前实现只明确要求关联应用,环境隔离以部署配置为准 |
发布前检查
- 两个输入在所有执行分支上都非空。
conversationName来自可靠的会话 ID、创建结果或查询结果。- 工作流已关联正确应用,执行用户拥有访问权限。
- 需要名称唯一时,已在修改前显式查询并校验。
- 后续流程保存和传递
conversationId,不会继续使用旧名称定位会话。 - 已验证修改成功、目标不存在和消息保留三条路径。
- 失败分支不会继续执行需要有效会话的消息或历史节点。