开发与工程 typescript-hooksmcprest-apisvector-searchknowledge-graphgraphragv8

Yao 应用运行时

用单一二进制构建、约束并部署 AI Agent 与 Web 应用。

FollowAgents 评估 · FARS-2.1
不推荐
38/ 100 五分制 1.9 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全7 / 29 · 1.2/5

证据显示有沙箱隔离(CLI Agent 容器)和 Hook 机制,但未明确最小权限原则;用户确认机制未见;数据流透明度部分体现(Hook 流程),但未详细说明数据流向;敏感数据处理未见明确措施;依赖众多且版本较新,但未提供安全审计;外部影响(如网络调用)未明确限制;回滚机制未见;来源归属:发布者未验证,但代码中有版权声明。扣分原因:缺乏具体安全设计文档和实现细节。

2可靠稳定6 / 14 · 2.1/5

自洽性:README 与代码结构基本一致,但存在本地 replace 指令(go.mod)可能导致构建不一致;依赖可用性:依赖众多,但未提供版本锁定或镜像;失败消息:测试工作流有错误处理,但产品本身的错误提示未详细说明。扣分原因:本地 replace 和依赖管理可能影响可重复构建。

3适用触发10 / 18 · 2.8/5

受众和场景:明确面向开发者,提供多种模式;能力边界:通过 Hook 和沙箱定义边界,但未详细说明限制;触发精度:Hook 机制提供精确控制,但文档未深入;环境适配:支持多平台,但依赖 Docker 等外部组件。扣分原因:文档对边界和触发细节描述不足。

4规范维护5 / 18 · 1.4/5

信息架构:README 清晰,但缺少详细文档链接;安装说明:有构建和测试工作流,但缺少用户安装指南;命名稳定性:项目名稳定,但版本号未明确;示例和 FAQ:有测试示例,但缺少 FAQ;已知限制:未提及;许可证:自定义 Apache 2.0 修改版,但未明确合规性;版本和变更日志:未提供;维护责任:有 CI 和贡献者协议,但发布者未验证。扣分原因:缺少版本管理和已知限制文档。

5有效结果7 / 13 · 2.7/5

输出可用性:提供 REST API 和 UI,输出格式明确;边际价值:提供多种集成(MCP、多 Agent),价值较高;成本效益:单二进制部署降低运维成本,但商业许可可能增加成本。扣分原因:商业许可条款可能限制某些用户。

6证据核验3 / 8 · 1.9/5

声明可追溯:README 中的功能声明有代码和测试支持,但部分未验证;跨来源佐证:有 CI 测试,但未独立验证;事实与推断分离:文档区分了功能描述和设计理念,但未明确标注。扣分原因:静态审查无法验证实际运行效果。

证据充分度: 评估于 2026年8月9日 审查版本 3a7f87fdc4bd
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
源码中未见的安全控制:执行前用户确认、回滚或恢复路径
使用前请注意
  • 发布者身份未验证,需谨慎评估供应链风险。
  • 许可证为自定义修改版,商业使用需注意条款。
  • go.mod 中的本地 replace 指令可能导致构建不一致。
  • 依赖众多且未提供安全审计,需关注已知漏洞。
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Yao 是一个开源运行时,用于构建 AI Agent 和 Web 应用,并以单一二进制形式交付。每个请求依次经过 Create Hook、执行器和 Next Hook:前者可注入上下文、施加约束或路由请求,后者可校验输出、触发后续动作和驱动多步骤循环。执行器可使用 OpenAI、Anthropic 等 LLM,或在隔离容器中运行 OpenCode、Claude Code、Codex 等 CLI Agent,也可仅运行自定义 TypeScript 逻辑。运行时还包含数据模型、REST API、SUI 服务端渲染页面、CUI 对话界面、TypeScript V8 引擎,以及向量检索、知识图谱和 GraphRAG。该二进制面向 ARM64/x64,README 声明主机无需 Python、Node.js 或容器。

请求先进入 Create Hook,可在此注入上下文、执行约束或选择路由;随后由 LLM、CLI Agent 或纯 TypeScript 执行器处理;Next Hook 再验证输出、触发下游操作或继续多步循环。LLM 模式可调用 OpenAI、Anthropic 等提供方;CLI Agent 模式可在带 VNC 桌面的隔离容器中运行 OpenCode、Claude Code 或 Codex;Pure Hook 模式运行自定义 TypeScript。它可通过进程、SSE 或 STDIO 传输连接 MCP 工具,提供请求、会话、用户和团队四个范围的 Memory API,并可输出 REST API、SUI 页面和 CUI 对话界面。搜索能力包括使用 OpenAI 或 FastEmbed 的向量搜索、知识图谱及混合式 GraphRAG。

  1. 负责内部开发工具的团队,需要把数据模型、REST API、SUI 页面和对话界面放进同一可执行运行时。
  2. 构建客服或知识问答助手的开发者,需要通过 Create Hook 注入上下文,并通过 Next Hook 校验结果或触发后续流程。
  3. 需要让 Codex、Claude Code 或 OpenCode 执行任务的团队,希望将 CLI Agent 放入带 VNC 支持的隔离容器。
  4. 已有 TypeScript 业务规则的团队,需要在不调用 AI 的情况下用 Pure Hook 处理路由、菜单流或确定性逻辑。
  5. 需要将向量检索与实体关系检索结合的应用团队,可采用向量搜索、知识图谱和 GraphRAG。

这个 Agent 有哪些优点和局限?

优点
  • 统一请求管线将 Create Hook、执行器和 Next Hook 串联,可在执行前约束请求并在执行后验证或编排后续动作。
  • 同一 Hook 接口可组合 LLM、容器化 CLI Agent 与纯 TypeScript 执行器,支持将确定性逻辑与模型驱动流程混用。
  • 运行时同时提供数据模型、REST API、SUI、CUI、V8 TypeScript 和检索能力,减少多组件拼装。
  • 原生支持进程、SSE 和 STDIO 三种 MCP 传输,并提供四个范围的 Memory API。
局限
  • 资料未给出安装包获取、启动命令、配置示例或最小项目,初次部署路径无法据此复现。
  • LLM 模式依赖 OpenAI、Anthropic 等外部模型提供方;凭据、费用、模型选择和故障处理细节均未说明。
  • CLI Agent 模式使用隔离容器,且可提供 VNC 桌面支持,采用该模式会引入容器执行与桌面访问的运维和安全评估。
  • 虽然声明主机不需要 Python、Node.js 或容器,但 TypeScript Hook、SUI、数据模型和 API 的文件结构与发布流程未在资料中定义。

如何安装或部署这个 Agent?

所给资料没有提供可复制的下载、安装、初始化或启动命令。已明确的信息仅包括:Yao 以单一二进制交付,支持 ARM64/x64,且主机无需 Python、Node.js 或容器。要完成安装仍缺少二进制获取位置、平台对应文件名、配置格式、启动命令以及首个应用的创建步骤。

如何使用这个 Agent?

所给资料未提供可复制的配置文件、命令行调用或最小可运行示例,因此无法给出经过证实的首个调用。可确认的工作模型是:为请求定义 Create HookNext Hook,并选择 LLM、CLI Agent 或 Pure Hook 作为执行器;如需工具连接,可使用进程、SSE 或 STDIO 的 MCP 传输。LLM 调用涉及 OpenAI、Anthropic 等提供方时,所需凭据的具体名称和配置方式未在资料中说明。

这个 Agent 与同类方案有什么区别?

Yao 将 OpenAI、Anthropic 等作为 LLM 执行器,并可在容器中运行 OpenCode、Claude Code 或 Codex;这些产品在资料中被描述为可接入的执行方式,而非 Yao 的同类替代品。

常见问题

Yao 是否只能使用某一家模型提供商?
不是。资料明确列出 OpenAI、Anthropic 等 LLM,并支持以纯 TypeScript Hook 完成无需 AI 的逻辑。
能否把 Codex 或 Claude Code 纳入流程?
可以。CLI Agent 模式明确列出 Codex 与 Claude Code,并说明它们可在隔离容器中运行,支持 VNC 桌面。
部署主机需要安装 Node.js、Python 或容器吗?
README 声明单一二进制在 ARM64/x64 上运行,主机无需 Python、Node.js 或容器;但 CLI Agent 本身使用隔离容器。
模型调用和工具接入需要哪些凭据?
资料只说明 LLM 可使用 OpenAI、Anthropic 等,MCP 可经进程、SSE 或 STDIO 接入;未说明凭据名称、配置位置或授权范围。
执行失败或 Hook 校验失败会怎样?
资料说明 Next Hook 可校验输出和触发下游操作,但没有定义错误处理、重试或恢复策略。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents