Anda
一个用 Rust 构建的 AI 智能体框架,可将模型、工具、记忆和其他智能体组合进单一运行时。
信任:工作流声明最小 permissions(contents: read),依赖已固定版本且 idna 有 dependabot 注释显示安全跟进,得2分;但框架功能(shell 执行、文件系统、fetch、TEE 签名调用)的权限边界、用户确认机制、数据流说明、敏感数据处理与回滚手段在所给文件中均无证据,仅按 README 功能列表记1分,回滚完全未提及记0分。
可靠性:workspace 结构清晰、各 crate 独立版本、依赖统一管理,自洽性2分;依赖均为成熟的 crates.io 版本,可用性2分;但无测试、错误处理或失败消息的证据文件,仅记1分。
适应性:README 明确面向应用构建者与开发者两类受众并给出场景,环境(Rust/ICP/TEE)描述清晰,各2分;能力边界与触发精度(模型路由标签、tools_groups 机制仅有概述,无行为细节)各记1分。
规范:项目结构文档化良好、命名稳定(anda_core/engine/server 前缀一致),各2分;但 README 缺安装说明、无已知限制章节、无 CHANGELOG 证据,记0/0/1分;许可证矛盾——README 称 MIT(LICENSE-MIT),Cargo.toml 为 MIT OR Apache-2.0,任务描述称 Apache-2.0,三者不一致,仅记1分;维护责任未声明(无 MAINTAINERS/治理文件),记1分。
有效性:架构图和分层设计使输出结构可用性尚可,但无示例输出或快速上手,记1分;组合式 agent 框架 + 发现感知工具包相对同类框架有边际价值,记2分;成本收益无法在不执行的情况下验证,记1分。
可验证性:README 功能声明与 Cargo.toml 依赖大体对应,但多数声明(CompletionRunner 行为、KIP 记忆工具)在本证据集中无代码支撑,仅记1分;与关联项目(anda-brain、KIP)链接可部分交叉印证,记1分;声明与推断分离良好——README 明确区分已实现功能与可选扩展,记2分。
- 许可证信息三处不一致(README: MIT;Cargo.toml: MIT OR Apache-2.0;任务描述: Apache-2.0),使用前请核实 LICENSE 文件。
- 框架包含 shell 执行、文件系统访问、fetch 和 TEE 签名调用等高危能力,但本次证据未展示其权限控制与用户确认机制,集成前需自行审计 anda_engine 源码。
- 未提供安装说明、CHANGELOG 与已知限制文档,生产采用前请补充验证。
- 发布者身份未经注册表验证,且无维护责任声明,依赖此框架前请评估长期维护风险。
这个 Agent 能做什么,适合哪些场景?
Anda(仓库 ldclabs/anda)是一个用 Rust 编写的框架,用于构建可组合的 AI 智能体运行时。其核心引擎允许开发者注册智能体和工具,按能力标签(primary、pro、flash、lite 等)路由模型请求,调用本地或远程函数,并隔离上下文状态。运行时编排由 CompletionRunner 负责,处理迭代式模型回合、工具调用、用量核算、取消和长会话的紧凑续接。可选扩展层提供会话存储、基于 KIP 的记忆工具、文件系统访问、shell 执行和文件型技能。项目由 anda_cli、anda_core、anda_engine、anda_engine_server 和 anda_web3_client 五个组件组成,并已催生 Anda Brain 和 Anda Bot 两个产品。注意:仓库元数据标注 Apache-2.0,但 README 的许可证章节写明 MIT 许可,采用前应自行核实。
Anda 通过 anda_core 中的稳定 trait 注册智能体和工具,组合成更大的工作流。anda_engine 的引擎按能力标签把补全请求路由到不同的模型层级,供应商适配器隐藏在统一的请求/输出契约之后。CompletionRunner 迭代执行模型回合、工具调用和智能体间调用,并记录用量、工件(artifacts)、转向消息和后续消息,支持取消与长会话续接。BaseCtx 与 AgentCtx 为每个智能体或工具提供隔离的状态、缓存、对象存储、HTTP 调用、签名调用和子上下文。工具发现方面,静态工具、动态提供者和 MCP 服务器可暴露能力分组,智能体先用 tools_groups 概览,再用 tools_select 按需展开 schema。运行方式是用 anda_cli 与 anda_engine_server 启动和交互已配置的引擎;anda_web3_client 面向非 TEE 环境提供 Web3 客户端。
- Rust 开发者希望以类型安全的 trait 扩展点构建自定义智能体和工具,而非套用固定应用形态。
- 团队需要按任务复杂度在 primary、pro、flash、lite 等模型层级之间路由补全请求以控制成本和延迟。
- 应用需要长时间运行的智能体会话,要求用量核算、取消控制和跨回合的紧凑续接。
- 需要组合 MCP 服务器、动态工具提供者和静态工具,并让智能体按需发现和加载工具 schema。
- 构建需要持久记忆和认知的产品,可参考基于 Anda 的 Anda Brain 和 Anda Bot 的实现路径。
这个 Agent 有哪些优点和局限?
- 可组合性是明确的设计目标:智能体和工具通过稳定 trait 和函数定义注册,可组合成更大工作流而无需硬编码应用形态。
- 带标签的模型路由(primary/pro/flash/lite)让供应商适配器留在统一契约之后,便于切换或混用模型。
- CompletionRunner 提供生产级的运行时控制:用量核算、工件、转向/后续消息、取消和长会话紧凑续接。
- 工具发现机制(tools_groups / tools_select)避免一次性加载所有工具 schema,MCP 支持开箱即用。
- 要求 Rust 工具链,对非 Rust 团队的采用成本明显高于 Python 生态的智能体框架。
- README 未给出安装命令、依赖版本或配置示例,上手需要阅读 architecture.md 等文档并自行摸索。
- 仓库元数据标注 Apache-2.0 而 README 写 MIT,许可证信息不一致,商业采用前需核实。
- Web3 相关能力(anda_web3_client、非 TEE 环境)的具体约束在 README 中缺乏说明。
如何安装或部署这个 Agent?
仓库未提供具体的安装命令或依赖版本说明。可确认的路径是:克隆 https://github.com/ldclabs/anda 后,通过 anda_cli 和 anda_engine_server 运行引擎,或以开发者身份基于 anda_core 的 trait 构建自定义智能体。缺失的关键信息:Rust 版本要求、crates.io 发布情况、以及 anda_cli / anda_engine_server 的具体构建与启动命令。
如何使用这个 Agent?
按 README 的角色划分:应用构建者使用 anda_cli 和 anda_engine_server 运行并与已配置的引擎交互;开发者基于 anda_core 的 trait 构建自定义智能体和工具,通过 anda_engine 扩展可复用的运行时功能,并改进模型适配器、上下文能力、记忆集成和服务器 API。具体的启动命令和模型供应商配置在当前 README 中未给出。
这个 Agent 与同类方案有什么区别?
README 未点名任何具体竞品;同类选择包括其他语言的智能体框架,但源材料未提供可比较的事实,此处不做臆测。