消息路由与命名任务
设置会话范围、前缀路由、持久轮换及单聊天多任务。
sessionScope 默认 user,同用户复用会话;chat_thread 按聊天线程共享;single 整渠道共享。旧 thread 仍兼容,但新 Web Shell 配置不再提供该选项。
前缀路由
{
"messageRoutes": {
"/review": "Review the requested change.",
"/QA": "Answer repository questions."
},
"defaultMessageRoute": "/QA"
}这是单个渠道内的配置片段。前缀区分大小写,后面必须有空白和非空正文;跳过前导 mention 后匹配最长前缀,并剥离前缀。首轮合并路由与渠道 instructions。
没有 defaultMessageRoute 时忽略未匹配聊天消息;设置时必须指向已有路由键。键和说明加载时去首尾空白,空前缀/空路由表不合法,说明可为空。共同命令也需前缀,如 /QA /help;无用户正文和平台系统事件不走前缀路由。
路由在既定 sessionScope 内使用独立会话,记忆仍按聊天/线程共享。它不是权限沙箱,不能与 multiSession 同时使用。
命名任务
Daemon-managed 渠道可设 multiSession:true,同时要求 sessionScope:user。每个精确渠道、chat 和 sender 私有目录最多八个开放任务,名字一到三十二个 ASCII 字母、数字、下划线或连字符,唯一性不区分大小写。
/sessions all
/session new investigation
/session new fix --worktree
/session use investigation
/session current
/session cancel fix
/session close fixclose 仅分离任务,不删转录,再 use 恢复原对话;忙任务不能关闭。普通消息发给当前选中任务,其他任务仍可并发,迟到结果保留原任务标签。聊天命令不展示或接受原始 session ID。
Worktree 与批准归属
--worktree 在 daemon 工作区 .qwen/worktrees/ 创建独立 checkout。恢复时验证持久 owner,丢失或变更则拒绝,不能悄悄退到共享工作区。
/clear、/new、/reset 清理所选任务会话,保留 worktree 和文件;忙 worktree 任务先完成才能 reset。无 ID 的权限命令针对当前任务,带精确 request ID 可响应自己未选中的任务。
cancel 只取消活动 prompt,不取消独立排队轮次;collect 模式中挂在该 prompt 后面的合并跟进会丢弃,媒体准备不受此命令控制。标签仅展示,不能当模型转录内容或新的授权身份。
不兼容组合
命名任务仅 daemon 支持,不支持 standalone channel start;也不能同时使用 webhooks、非零群历史回填、messageRoutes、sessionRotation 或 Channel loops。已有启用 loop 时 worker 拒绝启动,先处理 loop 配置。
命名任务共用聊天记忆,不是每任务独立的持久知识库。
会话轮换
sessionRotation 可设置正数 maxTurns、maxAgeHours,任一先达到就尝试在下一条消息前开新会话。maxTurns 数路由消息,包括未调用模型而本地处理的命令。
计数和开始时间跨重启保存。运行/排队期间等待后续空闲消息,持续流量可能超过阈值;轮换退休旧会话并在触发目标通知。single 的其他共享聊天不会同时收到通知。省略设置就继续复用原会话。