当前位置: 首页 > news >正文

QwenPaw 编写插件让 会话(频道) 支持 分支(fork),回退(rewind),重新生成(regen)

前言QwenPaw 太久没有增加这个支持但是这个功能非常需要。我只能靠AI辅助下手动写一个插件来实现这个功能了。实现3个基础功能支持 fork rewind 和 regen。仓库https://github.com/one-sixth/qwenpaw-plugin-session-tools️ QwenPaw会话增强工具 (qwenpaw-plugin-session-tools)为 QwenPaw 提供会话管理能力回退对话、分叉会话、重新生成回复。 功能命令功能说明/rewind [N]⏪ 回退 N 轮对话删除最后 N 组用户助手消息默认 1 轮/fork [N] 分叉新会话从 N 轮前分叉出新会话默认 0全部分叉/regen 重新生成回复删掉最后一轮让 AI 重新生成使用示例/rewind → 回退 1 轮 /rewind 3 → 回退 3 轮 /fork → 完整复制当前会话为新会话 /fork 2 → 从 2 轮前分叉保留最后 2 轮上下文 /regen → 重新生成上一条回复 安装方法一官方命令安装推荐qwenpaw plugininstall插件目录路径--force例如qwenpaw plugininstallD:/插件测试/qwenpaw-plugin-session-tools--force方法二QwenPaw的插件管理安装QwenPaw版本大于v1.8.1 推荐前往QwenPaw的webui中的插件管理点击安装插件然后把下载的插件压缩包拖放进去方法三手动复制到插件目录将qwenpaw-plugin-session-tools目录复制到插件目录cp-rqwenpaw-plugin-session-tools ~/.qwenpaw/plugins/加载插件使用官方命令安装方法立即生效。手动复制方法重启 QwenPaw 后生效。️ 架构session-tools/ ├── plugin.json # 插件元数据名称、版本、入口等 ├── plugin.py # 入口文件命令拦截、monkey patch、命令分发 ├── session_ops.py # 核心操作会话文件的读写、消息解析、rollback/fork/regen └── README.md # 本文件关键设计命令拦截通过 monkey patchAgentRunner.query_handler拦截/fork、/rewind、/regen命令在命令到达 Agent 之前处理会话操作SessionOperator类封装了会话文件的读取、解析、写入自动处理多 agent 工作区隔离消息格式实际消息存储在agent.memory.content中每条消息为[{msg_dict}, {extra}]的列表对格式WebUI 集成/fork通过ChatManager.create_chat()注册新会话自动命名Fork #N 原名称编号递增/rewind提示刷新页面以显示更新后的会话/regen即时重跑 AI 流程无需刷新⚙️ 工作原理/rewind [N]1. 读取会话文件中的消息列表 2. 找到最后 N 个用户消息的索引位置 3. 截断保留该位置之前的所有消息 4. 写回会话文件/fork [N]1. 读取源会话文件 2. 若 N0保留最后 N 轮对话的消息 3. 生成新会话 ID基于源 ID 时间戳 4. 写入新会话文件 5. 通过 ChatManager 注册WebUI 可见/regen1. 截断会话删除最后一条用户消息及之后的所有内容 2. 提取该用户消息的文本 3. 用该文本替换 /regen 命令 4. 走原始 Agent 处理流程 → AI 重新生成回复 会话文件位置{workspace_dir}/sessions/{channel}/{user_id}_{sanitized_session_id}.json示例C:/Users/ABC/.qwenpaw/workspaces/default/sessions/wecom/企微会话1.json 技术细节运行目录~/.qwenpaw/plugins/qwenpaw-plugin-session-tools/插件类型command内部 API使用SafeJSONSession的update_session_state/get_session_state_dict方法多 agent 支持SessionOperator按agent_id缓存每个 agent 工作区独立消息存储state.agent.memory.content列表对格式新会话注册通过ChatManager.create_chat(ChatSpec)确保 WebUI 可见 注意事项/rewind后请刷新 WebUI 页面以查看更新后的会话/regen会丢弃上一轮的所有上下文包括 tool_call、搜索结果等请确保确认后再使用/regen在第一条用户消息时不可用会话文件修改前会自动备份到{workspace_dir}/sessions_backup/目录 依赖QwenPaw 1.1.0Python 3.10 许可MIT License 作者one-sixth
http://www.gsyq.cn/news/1399358.html

相关文章:

  • 构建AI Agent网状通信运行时:从原理到实践
  • 2026年质量好的水泵/景观低压水泵/无锡喷泉低压水泵/水景低压水泵稳定供货厂家推荐 - 行业平台推荐
  • 从光耦选型到采样电路实战:一个智能硬件项目的完整信号链设计复盘
  • Claude模型家族实测横评:Opus、Sonnet、Haiku真实能力与选型指南
  • Linux服务器功耗异常排查?手把手教你用turbostat揪出CPU的‘电老虎’
  • 03-替换DeepSeek模型和VSCode中的使用
  • 从SEO到AEO:掌握答案引擎优化的核心策略与实践指南
  • 基于Git与LLM构建代码库知识库:增量维护与智能查询实践
  • 品达VRF Mini3,极简安装,空调全品牌自适应
  • 为什么网安人越来越焦虑?2026 行业现状与圈子生存困境全揭秘
  • Lanes:AI并行编码工作流管理工具的设计与实践
  • SVM模型可解释性新视角:正交多项式核与ORCA框架深度解析
  • 华为悦盒EC6109U海思MV200芯片刷机心得:ROOT、开ADB与遥控器待机修复全记录
  • 别再傻等TXE了!STM32F103串口DMA发送的完整避坑指南(附代码)
  • GEO不是新赛道,是你现有营销栈的“补丁“:2026年数字营销团队的整合指南
  • AI时代规范驱动开发:从模糊需求到精确代码的工程实践
  • 微处理器瞬态执行技术与安全漏洞形式化建模
  • 2026年热门的三亚中巴车出租/三亚会议车出租/三亚旅游车出租高评分公司推荐 - 行业平台推荐
  • 告别手动拷贝!用QtCreator+SSH一键部署Qt应用到RV1126开发板(保姆级避坑)
  • 构建会“说话”的智能体:从工具调用到记忆系统的工程实践
  • AI智能体在电商中的角色探索:从“人找货”到“货找人”的交互新范式
  • 2026年知名的家具批发/酒店家具批发本地公司推荐 - 品牌宣传支持者
  • 基于AI的邮件HTML兼容性自动修复工具开发实践
  • 在ZYNQMP上点亮800x480 LCD屏:从framebuffer到DRM框架的完整驱动移植实战
  • 用51单片机和BY8001模块做个复古MP3播放器,附完整代码和SD卡文件命名避坑指南
  • Soul in Motion:用身体运动探索内在状态的身心实践框架
  • AutoHotKey V2定时器(SetTimer)深度使用指南:从防抖连击到后台轮询,5个案例搞定
  • STM32H743模拟SMBUS读取BQ40Z50电量,我踩过的三个坑(附完整代码与示波器波形)
  • 大模型数据隐私保护:PII脱敏对模型性能影响的量化分析与实践
  • 告别重复登录!用Playwright连接已打开的Chrome浏览器,保留你的会话和Cookie