智能体
www.aibase.com ·
纯 Go Agent 框架 covonaut v1.1.4 发布:滚动并行池提速、多模态读取全开,误删文件可进回收站
covonaut 是一个面向生产环境的 Go 语言 Agent 框架,采用 MIT 许可,覆盖 Agent 主循环、工具调用、图编排与多协议互操作。v1.1.4 将并行执行改为单一滚动池调度:调用严格按模型给定顺序启动,空槽立即填充,慢调用不再阻塞后续并行任务;遇到不可并行调用时先清空池内运行任务再内联执行,形成串行屏障,返回顺序与串行执行一致,且每次调用独立捕获 panic。调度严格度由工具的并发安全声明与执行模式共同决定,新增的 hybrid 模式对未声明或声明模糊的工具一律串行。同时新增工具结果的多模态内容通道,支持截图等富内容随文本传给支持多部分返回的模型,不支持的服务自动降级为纯文本。读取工具按扩展名与内容特征分流为文本、图片、PDF、Jupyter Notebook、视频五条路径,支持本地路径与网络链接,文本与 Notebook 可按行或 cell 分页,图片单次最多提交八个目标做对比。
AI推荐理由 内容为 covonaut v1.1.4 的发布说明,具体介绍了滚动并行池调度、多模态读取(文本/图片/PDF/Notebook/视频五路分流)、串行屏障与 panic 隔离等机制,信息密度较高且面向开发者。但来源为 AIbase 聚合站,非项目官方仓库或作者原文,无法独立核实版本真实性与效果;正文中“提速”“误删进回收站”等表述缺乏基准数据支撑,故质量分受限。对 Go 生态 Agent 框架选型与工具调度设计有参考价值。
62
正文
Pure Go Agent Framework covonaut v1.1.4 Released: Rolling Parallel Pool Speedup, Full Multi-Modal Reading Enabled, Deleted Files Can Also Be Recovered in the Recycle Bin
AIbase基地
Published inAI News · 10 min read · Sep 22, 2026
3
covonaut, a Go language agent framework for production environments, once again refines itself to be more like a reliable colleague. The newly released v1.1.4 version brings a rolling execution pool, multi-modal reading capabilities, and a series of enhancements around security and isolation. It is entirely implemented in Go, uses the MIT license, and covers the Agent main loop, tool calls, graph orchestration, and multi-protocol interoperability. The most convenient part is that developers can upgrade to v1.1.4 without changing any interface code, and new features are ready to use out of the box.
Scheduling is the core of this change. In the past, parallel execution was like an unstrategic labor contractor—starting all calls at once and then queuing by concurrency limits. A slow tool could keep a slot occupied for a long time, blocking all subsequent tasks. v1.1.4 changes it to a single rolling pool scheduling: calls start strictly in the order given by the model, and once there is an empty slot, it is immediately filled, so slow calls no longer delay subsequent parallel tasks; when encountering non-parallelizable calls, it first clears the running tasks in the pool before executing them inline, forming a serial barrier. The return order seen by the model always matches the serial execution exactly, and each call independently captures panic, so a single tool crash does not bring down other calls in the same batch. The strictness of scheduling is determined jointly by the tool's own concurrency safety declaration and execution mode: the parallel mode is the most relaxed, only tools explicitly declared as non-concurrency-safe are isolated and executed serially; the newly added hybrid mode is much more conservative, with all tasks that are not declared or ambiguously declared executed serially. Developers can choose between the two based on the trustworthiness of the tool ecosystem. Accompanying this is a multi-modal content channel for tool results, allowing rich content such as screenshots to be transmitted together with text to models supporting multi-part returns, while services that do not support it automatically degrade to plain text.
This time, the reading tool has completely gained versatile properties. It no longer only recognizes text, but automatically分流s to five processing paths—text, images, PDFs, Jupyter Notebooks, and videos—based on file extensions and content characteristics. Local paths and network links can be directly fed in. Text and Notebooks support pagination by line or cell, and Notebooks are rendered into readable text; images can submit up to eight targets for comparison at a time and can also include questions for focused descriptions; PDFs support three usage methods: page range, maximum number of pages, and extracting only metadata; videos can specify the number of frames to extract and the time window. The rich media processing logic is provided in a plug-in callback form, giving clear prompts instead of silent failures when not integrated; when text is truncated, it appends a prompt for continuing reading at the end, allowing the model to continue reading without losing content; real binary files are no longer forced into the context but are returned as format recognition results.
The most reassuring aspect for operations is that delete operations are now uniformly placed in the system's recycle bin. The delete tool and shell's delete command no longer permanently destroy files but move them to the recycle bin according to the platform: macOS visits the recycle bin and falls back to the user's trash if there is an error; Linux prioritizes the freedesktop recycle bin interface and falls back to a manual recycle directory; Windows moves files to the system's recycle bin. Duplicate names automatically add a timestamp suffix to avoid overwriting. Built-in safety barriers firmly reject the root directory of the file system, the current working directory, and the user's home directory, and under no circumstances will it degrade to permanent deletion. On the command side, it parses the shell syntax tree to intercept only top-level, single, and path literal delete commands, while composite commands, paths with variable concatenation, and statements with redirection are allowed to proceed to the real shell; irreversible commands such as emptying or shredding are directly blocked and prompt users to use recoverable methods instead.
Isolation and enhancement are also complete. Shell sub-processes and chat interfaces are completely separated, no longer inheriting control terminals,抢 mouse focus, or job control. Running interactive programs like vim or less in the interface will not disrupt rendering. The framework now adds the ability to validate structured output according to JSON Schema, which can be reused by the model's JSON pattern return and tool outputs. The password-free backend for network search adapts automatically according to the operating region, prioritizing Bing in Chinese environments and DuckDuckGo in other environments, with regions inferred from environment variables, system language, or time zones. Additionally, a new explicitly enabled persistent terminal tool family has been added, which retains the working directory, exported variables, and background jobs across multiple calls using a pseudo-terminal, differing from the approach of creating a new process each time. By default, it limits the number of concurrent sessions and maintains a scrolling output buffer for each session.
Upgrading requires only updating the module version to v1.1.4. There are no breaking interface changes this time. The only thing to note is that the scheduling semantics of the parallel mode have been adjusted from full concurrency to a rolling pool with a relaxed admission policy. If you want to maintain a conservative schedule, please switch to the newly added hybrid mode and ensure the tools have completed their concurrency safety declarations.
This article is from AIbase Daily
Scan to view
Welcome to the [AI Daily] column! This is your daily guide to exploring the world of artificial intelligence. Every day, we present you with hot topics in the AI field, focusing on developers, helping you understand technical trends, and learning about innovative AI product applications.
—— Created by the AIbase Daily Team
© Copyright AIbase Base 2024, Click to View Source -