MaxGfeller/open-harness

A code-first, composable SDK to build powerful AI agents

解决的问题

OpenHarness 提供了一个在代码中直接构建通用 AI 代理的框架。它简化了创建能够通过工具(如文件系统和 shell)与现实世界交互、通过会话实现长期记忆、并使用子代理和中间件处理复杂工作流的代理的过程。

如何工作

基于 Vercel 的 AI SDK 构建,项目采用模块化架构:

  • 代理:无状态执行器,使用特定模型和一组工具来执行任务。
  • 会话:代理的包装器,负责管理对话历史、处理上下文窗口压缩以及管理重试。
  • 中间件:可组合的函数(如 withTurnTrackingwithRetry),可应用于代理运行器以修改其行为。
  • 工具:提供文件系统访问(NodeFs)和 shell 执行(NodeShell)的预构建提供者,以及对 Model Context Protocol (MCP) 的支持。
  • 子代理:能够将任务委派给嵌套代理的功能,这些代理可以是无状态的、可恢复的,或在后台运行。

适用人群

希望构建需要工具使用和状态管理的 AI 驱动 CLI 工具、使用 React 或 Vue 的聊天应用,或自主代理的开发者。

主要亮点

  • 工具集成:内置对 bash 和文件系统操作的支持。
  • 状态管理:提供专用的 SessionConversation API,用于多轮交互。
  • 可组合逻辑:中间件系统,用于添加自动重试和上下文压缩等功能。
  • UI 就绪:包含专用于 React 和 Vue 3 的包,用于集成流式聊天界面。
  • 可扩展性:支持动态子代理目录和 MCP 服务器。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目