更新日志¶
1.3.0¶
扩展系统¶
- 新增 MCP 扩展:作为 MCP 客户端连接服务器(支持 stdio),将其工具暴露为 xun 工具。
- 新增 Skills 扩展:支持 Agent Skills 技能包,自动发现并注入精简目录,按需激活,目录与工具自动同步。
- 新增扩展配置项
extension_settings:按扩展名分桶,扩展通过ExtensionContext.settings读取。 - 工具箱支持禁用状态查询、
pop移除与注册原生函数,支撑 MCP 等扩展。
核心与工具¶
- 会话消息重构为类型化消息类,系统提示、用户消息、原始消息各司其职。
- 结构化输出改为软约束:注册工具时不再强制
response_format,避免跳过工具调用。 - 完成请求的重试与退避增强;用户新指令可重新获得退避窗口。
- 风险评估子智能体限制迭代与工具调用预算(最多 3 次工具调用)。
- 新增
sleep工具;browser的evaluate支持超时。 - 新增
/handoff命令:将当前任务打包为 zip 交接包。 /config支持编辑配置,/revise接受新内容,/compact解析优化,/render路径校验与后缀宽容。- 写文件的内置命令从默认命令中分离,仅在交互式入口注册。
CLI¶
- 命令行改用 prompt_toolkit:历史搜索、
/斜杠命令与@文件引用补全;确认提示可中断当前输入并原样恢复。 - 修复多线程下的显示错乱。
配置与提示词¶
AGENTS.md作为系统提示词独立段落加载,新增load_project_instructions开关。
Web 服务与前端¶
- HTML / Markdown 预览:相对路径图片、多文件 HTML、可渲染文件默认预览。
- 预览支持文本文件的编辑与新建;支持创建嵌套目录。
- 设置菜单显示构建版本与 commit。
- 显示层重构:事件存储独立、事件与显示隔离;中屏控制样式、表格列宽、提示卡片与光谱动画等细节优化。
容器与多用户¶
- 用户容器启动时传入用户名环境变量。
1.2.1¶
Web 服务与前端¶
- 新增智能体运行状态显示事件,前端可准确展示智能体开始与结束运行的状态。
- 修复活动预览在更新时闪烁的问题;窄屏下仍显示工作状态图标。
- 页脚新增彩色光谱线。
1.2.0¶
扩展系统¶
- 扩展状态与显示事件:
/extensions呈现加载状态,初始化异常可抛出并清晰展示,不再只是静默告警。 - 版本兼容门槛:
@extension_attr声明支持的版本区间,区间外的扩展标记为skipped且不加载; - 新增
xun_version()查询当前版本。
核心与钩子¶
- 执行钩子可接管执行:设置
takeover_result后由钩子处理器直接返回结果,跳过执行步骤且不写入会话历史。 - 新增
html信息事件,Web 端按富文本渲染。 - 工具返回图片时自动检测尺寸,过大自动缩放;URL 图片先下载后上传。
request_image新增crop参数。- 工具调用参数统一容忍 list 传成字符串的情况。
- 默认最大迭代次数 256 → 512。
Web 服务与前端¶
- 会话支持重命名。
- 事件流重构:消息独立于回合展示、折叠优化、单智能体自动展开、运行中摘要卡片与活动预览。
- 静态托管允许直接服务工作目录根。
- 斜杠命令缓存随会话更新。
1.1.1¶
容器与多用户¶
- 修复
xunc <目录>挂载后工作区不符的问题。 - 新增
xunx pause <user>/xunx resume <user>:暂停或恢复某个用户的容器而不丢弃其状态。 - 修复令牌以
-开头时被xuns当作选项解析的问题,容器启动改用--token=<token>传参。
Web 服务与前端¶
- 优化ws消息发送:消息与命令带上
client_id,收到服务端accepted回执后才清空输入框与附件;重连后自动重发,服务端按client_id去重以避免重复执行。 - 文件信息中的体积改为按量级展示(B / KiB / MiB ...)。
xuns支持--no-initial-agent,在不配置 LLM 的情况下浏览文档。
扩展系统¶
- 启动时不再打印
Loaded extensions:提示。
1.1.0¶
扩展系统(新增)¶
$XUN_HOME/extensions/下的源文件在每个智能体初始化时自动加载,支持包形式{name}/setup_extension.py与扁平形式{name}.py;入口setup_extension(ctx)。- 导入或初始化失败只告警,不阻断启动;配置项
enable_extensions可关闭。 - 新增显示层钩子
before_display_info/before_display_warning/before_display_error,可拦截智能体输出;新增/extensions命令与仓库内示例。
核心与工具¶
- 会话压缩分级:先回收旧工具结果,仍超标才转摘要压缩,摘要后仍超标可继续再压;摘要正文不再混入 info 消息。
- 取消事件改为链式结构,父智能体取消级联到子智能体;Web 端等待输入时同样响应取消。
- 生命周期状态独立为
agent_state.py;显示方法抽为AgentDisplayMixin并纳入类型状态约束。 - 子智能体 getter 参数改为 dataclass
AgentGetterParam。 shell工具更名为bash;copy覆盖已存在目标需要确认。get_choice/get_confirm返回ChoiceOutcome(选择值 + 来源);自动确认不再写入命令与路径允许列表。- 修复工具调用参数被 JSON 修复后与历史不同步的问题。
配置与提示词¶
auto_confirm支持环境变量XUN_AUTO_CONFIRM。- 系统提示词要求先查看并遵循工作目录下的
AGENTS.md。
Web 服务与前端¶
- 文件浏览:PDF 与全屏预览、文本预览语法高亮、行内编辑;列表与信息分列,扫描更快;窄屏下面板互斥。
- 上传支持整个目录,结果通知列出全部文件并自动消失。
- 新增静态目录托管
/srv/,可直接访问工作目录里的站点(默认 1 小时过期)。 - 事件列表加载与传输优化;输入内容跨会话保持;界面文案中/英双语。
容器与多用户¶
- 容器启动时把宿主 xun home 复制进
/.xun(只取config.json与extensions)。 xunc --env/xunx serve --env支持NAME=VALUE赋值与通配转发宿主变量。xunx容器持久化:serve重启后重新接管已有容器并保留会话,已删除用户的容器在对账时清理。- 新增
xunx upgrade,由运行中的serve在下一次对账时重建容器。
文档¶
- 新增中英双语文档(MkDocs),Web 服务在
/docs提供无需登录的访问。
1.0 — 2026-09-15¶
首个正式版本:执行循环与结构化输出、函数即工具与 8 组内置工具、显示层(控制台 / Web / 空)与 Web 前端、子智能体生成与会话压缩、会话命令与策略确认、xun / xuns / xunc 三种入口与 xunx 多用户复用服务。