Skip to content

Release v3.0.0-beta.3

Pre-release
Pre-release

Choose a tag to compare

@MiaowFISH MiaowFISH released this 11 Jul 17:10
· 407 commits to dev since this release

✨ 新功能

  • 增强历史记录清理功能 (2d3e628)

    • history.clear 命令现已支持批量操作,可以更灵活地管理历史记录。
    • 新增 -a, --all 选项,用于一键清理所有私聊、群聊或全部频道的记录。
    • 新增 -p, --platform 和 -c, --channel 选项,允许按平台和频道进行精确清理。
    • 新增 -t, --target 选项,支持通过 平台:频道ID 的格式直接指定清理目标。
    • 新增 --delete 选项,支持永久删除历史记录,而非默认的归档操作。
    • 引入了数据库事务,确保在执行批量删除时所有相关操作的原子性,保证了数据一致性。
  • 优化世界状态服务 (e1252c3, 21b9657)

    • 重构了世界状态服务,优化了消息记录流程,并对普通消息和指令消息进行区分,以避免重复触发响应。
    • 新增用户消息数限制 (maxMessages),可在历史记录过长时自动进行修剪,保证核心上下文的有效性。
    • 增加了数据库查询的上下文长度限制,防止因上下文过长导致的性能问题。
    • 美化了日志输出,提升了开发和调试过程中的可读性。
  • 提示词与模板优化 (bfe40f1, ce2971a)

    • 统一了提示词(Prompt)中的术语和 XML 标签风格,例如将 is_current="true" 统一为 <message> 标签。
    • 在核心记忆模板中新增了 title 和 description 字段,用于展示记忆的摘要信息。
    • 新增了群聊场景下的社交互动准则,以优化多用户对话体验。

🚀 优化与重构

  • 意愿值管理策略优化 (a2355ca)

    • 将代理(Agent)的意愿值管理策略从原有的“清零策略”调整为“递减策略”。
    • 这一改动使得对话过程中的意愿值不会被完全重置,保留了部分历史意愿,使长对话的延续更加自然,避免了因突然重置而产生的突兀感。
  • 记忆服务重构 (3c6fd0c)

    • 对记忆服务进行了全面重构,核心记忆块改为基于文件存储和 YAML 元数据。
    • 引入了新的归档记忆存储机制,支持向量搜索和数据库持久化,显著提升了记忆的检索能力和持久性。
    • 简化了记忆服务整体架构,并提供了更完善的记忆管理工具。
  • 扩展系统架构重构 (d1054c6, 0a976b3)

    • 移除了 BaseExtension 基类,改为使用装饰器自动处理工具注册和 this 绑定,大幅简化了新扩展的开发流程。
    • 统一了所有内置扩展的元数据格式,并支持通过配置动态启用或禁用扩展,提升了灵活性。
  • 模型服务结构优化 (b7caa3b)

    • 对模型服务的配置结构和初始化逻辑进行了重构,简化了 TaskType 枚举值。
    • 模型组(modelGroups)的结构调整为数组,并增加了明确的类型定义。
    • 为了更清晰地表达其功能,taskAssignments 已重命名为 task。
    • 优化了配置的验证和错误处理机制,提升了系统的健壮性。
  • 代理(Agent)内部优化 (be179d7, 305cf95)

    • 使用 ctx.debounce 替代了手动的防抖逻辑,提升了代码的可维护性。
    • 对代码结构和日志输出(如 Token 消耗、意愿值变化)进行了优化,提升了调试效率。

🐛 Bug 修复

  • 修复长消息处理与动作执行顺序 (b93b0fb)
    • 修复了长消息在构建提示词时可能被错误截断的问题。
    • 将动作执行(executeActions)逻辑从并行改为串行,确保了多个动作能够按预期顺序执行。

🛠️ 构建与依赖

  • 构建脚本更新 (6e735d3)

    • 构建脚本已从 .js 切换为 .mjs,以更好地支持 ES 模块。
    • 添加了新的基于 esbuild 的构建配置文件。
    • 在根 package.json 中新增了 clean 脚本,方便清理构建产物。
  • 依赖更新

    • 核心包(core)版本已更新至 3.0.0-beta.3。