全能 Go Agent 框架 covonaut v1.1.3 发布:TUI 库迎来更人性化的交互

covonaut 是一个 Go 语言生产级 Agent 开发框架,基于 Go 1.25 构建,MIT 开源。框架覆盖 Agent 循环、工具注册与生命周期钩子、MCP 协议桥接、A2A 多智能体协作、图引擎(DAG 与 Pregel)、会话管理、工作流编排等功能,并自带一套完整的终端图形界面库。 v1.1.3 变更 本次发布聚焦终端界面交互。 输入刻度条(Input Rail) 聊天区右缘新增竖向 tick 序列,每个刻度对应一次用户输入。分布策略为少量时聚拢在视口中央,对话增多后向两侧展开,超出视口高度时等距压缩合并。支持三种交互: 点击刻度:跳转到对应输入的起始行 滚动同步:滚动到某条输入时对应 tick 变长并缓动过渡 悬停预览:弹出浮层展示原始输入内容与助手回复预览 刻度数据完全由 ChatHistory 自身提供,宿主只需调用 SetRailEnabled(true) 即可启用。 顶层绘制机制(TopLayer) 新增整帧最高层渲染接口,允许组件在所有弹出层合成完成后于最上层绘制内容,确保输入刻度条等装饰不被任何 overlay 遮挡。 流式尾窗节流 Loader 新增 SetTicker 方法,支持跟随流式产出的思考内容按 160ms 固定间隔滚动推进,使视觉滚动速度与 token 到达速率解耦,并采用独立锁避免渲染期写锁竞争。 Markdown 纯文本解析 新增 md_plain 组件,将 markdown 源码解析为保留语义的纯文本——段落软换行折叠、代码块保留原文、列表和引用加标记前缀、表格按行拼接单元格、链接保留 URL,适用于复制导出场景。 主题细节 新增 FaintHairline 辅助函数,按文字亮度向背景混色生成碎裂感分隔线,使独立水平线(---)呈现似有非有的效果;标题下划线保持原有亮度 新增 Style.IsZero() 判定 调整聊天界面水平边距 项目链接 源码仓库:https://github.com/covoyage/covonaut 下载地址:https://github.com/covoyage/covonaut/releases/tag/v1.1.3

查看原文