本次 OpenManus 的更新涉及 前端分支(front-end) 和 主分支(main) ,两者在功能增强和架构优化上均有改动。本文将合并两条分支的共有更新,并分别列出各自独特的变更点,帮助开发者快速理解改动内容。
🏗️ 主要更新内容
✅ 共同更新
-
优化
Manus代理(Agent)max_steps从30降低到20,避免Agent过度执行,替大伙节省token费用- 新增
max_observe变量,用于限制观察的字符数 think()和act()方法中增加max_observe控制,防止输出过长tool_choices选项改为ToolChoice.AUTO,确保工具选择策略更加明确
-
工具(Tool)增强
BrowserUseTool增加disable_security选项,提升安全控制能力Terminate工具描述信息优化,明确终止任务的时机
-
配置(Config)更新
config.toml添加[server]配置项,支持自定义host和port- 新增
ProxySettings和BrowserSettings,支持浏览器代理配置,支持了需要特殊方式进行访问的同学 Config类支持动态加载浏览器相关配置项
-
依赖管理
- 删除
app/llm/inference.py,迁移到app/llm.py - 统一
LLM相关逻辑,提高代码可读性和可维护性
- 删除
🌍 前端分支(front-end)更新
界面整体更加简洁,一天一个样!
-
Web 端功能优化
-
main.jssetupSSE()方法优化,减少轮询,提升任务状态的更新效率createStepElement()增强日志展示,支持不同类型的文件(如图片、音频、Python 代码)交互- 新增 全屏图片预览功能,优化用户体验
- 新增 Python 代码模拟执行(前端展示代码内容,并提供“模拟运行”按钮)
-
-
启动脚本改进
-
run.bat- 检查 Git 是否安装,避免无 Git 时的同步失败
- 自动检测 Python 版本,不符合要求时给出提示
- 依赖未安装时自动执行
pip install -r requirements.txt
-
-
浏览器工具
-
BrowserUseTool- 允许传入
disable_security=True参数,提高浏览器安全选项的可配置性
- 允许传入
-
🚀 主分支(main)更新
-
多语言支持
-
README.md- 新增韩语(
README_ko.md),扩展全球用户覆盖
- 新增韩语(
-
README_zh.md- 更新贡献者信息,优化描述
-
-
代理(Agent)结构优化
-
BaseAgentupdate_memory()方法中的role类型改为ROLE_TYPEstep()方法的状态重置优化,避免max_steps达到时不清零
-
PlanningAgenttool_choice="required"改为ToolChoice.REQUIRED,确保调用工具时的一致性
-
Manus- 新增
_handle_special_tool()方法,确保BrowserUseTool清理浏览器实例
- 新增
-
-
配置增强
-
config.py- 添加
BrowserSettings,支持headless、disable_security等浏览器选项 - 代理支持
server、username、password认证配置 Config解析browser_config,实现动态加载
- 添加
-