OpenHarness:港大开源轻量级AI智能体驾驭框架,一键解锁工具调用与多智能体协同

原创 发布日期:
67

一、OpenHarness是什么

OpenHarness(简称oh)是由香港大学数据科学研究院(HKUDS) 数据智能实验室开源的轻量级AI智能体驾驭框架(Agent Harness),核心定位是为大语言模型(LLM)提供完整的运行时基础设施,将普通LLM快速转化为具备工具调用、记忆管理、安全治理、多智能体协同能力的全能AI助手。

该项目于2026年4月1日正式发布,采用MIT开源协议,完全免费可商用。其设计理念是“模型即智能体,代码即驾驭”(The model is the agent. The code is the harness.),不训练新模型,而是专注于为已有大模型构建高效、安全、可扩展的“骨架”,解决智能体开发中工具集成、记忆管理、安全管控、循环执行等通用痛点。

OpenHarness最大亮点在于极致轻量化:仅用1.17万行Python代码、163个文件,实现了Claude Code(51.2万行TypeScript代码)约98%的工具覆盖能力、61%的命令覆盖能力,体积缩小44倍,同时保持完整的智能体核心能力与高度兼容性,兼容Anthropic官方Skills技能包、Claude Code插件生态,支持任意大模型(OpenAI、Kimi、DeepSeek、通义千问、本地Ollama模型等)接入。

二、功能特色

OpenHarness构建了10大核心子系统,覆盖智能体全生命周期能力,功能特色可归纳为6大核心维度:

1. 完整智能体循环(Agent Loop)

作为框架核心,实现“思考→调用工具→执行→观察结果→再决策”的标准智能体闭环,具备三大关键能力:

  • 流式工具调用:边思考边执行工具,实时反馈结果,提升交互效率;

  • 稳定执行保障:带指数退避的API重试机制、并行工具执行、令牌计数与成本追踪;

  • 自动生命周期管理:支持会话恢复、上下文自动压缩、步骤计数与超时控制。

2. 丰富工具与技能生态

  • 43+内置核心工具:全覆盖文件IO、Shell执行、Web搜索、数据爬取、图表生成、MCP协议、任务管理、代码编辑、网络请求等场景;

  • 40+按需加载技能:基于Markdown文件动态加载,兼容anthropics/skills生态,涵盖代码提交、测试、安全审查、文档生成等专业技能;

  • 插件化扩展:支持自定义工具、事件钩子、智能体类型,兼容12+官方Claude Code插件,扩展能力无上限。

3. 多级记忆与上下文管理

  • 双层记忆架构:工作记忆(实时管理对话上下文)+ 持久记忆(MEMORY.md文件跨会话存储);

  • 上下文优化:自动上下文压缩(突破Token限制)、会话历史管理、多轮对话续接;

  • CLAUDE.md自动注入:自动发现项目目录下的CLAUDE.md文件,注入项目规范、接口文档等上下文。

4. 全链路安全与权限治理

  • 多级权限控制:路径级文件管控、命令执行范围限制、工具调用白名单;

  • 沙箱隔离机制:独立执行空间,防止恶意操作,保障本地环境安全;

  • 交互式审批:工具调用前弹窗确认,敏感操作二次验证;

  • 全链路可观测:操作日志、Token消耗、成本统计、实时状态监控。

5. 多智能体协同能力

  • 团队化协作:支持创建子智能体、任务委派、角色分工、信息共享;

  • 复杂任务调度:多智能体并行执行、结果汇总、冲突协调;

  • 层级化管理:主智能体统筹、子智能体专项执行,适配大型任务拆解。

6. 极简使用与交互体验

  • 一键启动:单命令oh即可启动完整智能体环境,支持3种使用模式:

    • 交互式TUI(React终端界面):日常开发对话,可视化命令选择、权限弹窗;

    • 单次提问模式:oh -p "任务指令",快速执行单任务;

    • 脚本集成模式:嵌入Python代码,批量自动化执行;

  • 跨平台兼容:支持Windows、Mac、Linux全系统,Python 3.10+即可运行;

  • 零配置上手:内置默认配置,支持API密钥自动读取、模型自动适配。

三、技术细节

1. 核心架构设计

OpenHarness采用模块化、低耦合、高内聚的架构,拆分为10个边界清晰的子系统,每个模块带完整Pydantic类型校验与权限检查:

子系统名称 核心职责 技术实现
Engine(核心引擎) 智能体主循环控制 Python异步框架,流式处理工具调用与结果反馈
Tools(工具系统) 43+内置工具管理与执行 基类BaseTool+Pydantic输入校验,插件化注册
Memory(记忆系统) 上下文与持久记忆管理 文件存储(MEMORY.md)+ 内存缓存,自动压缩算法
Permissions(权限系统) 安全管控与沙箱隔离 路径正则匹配、命令白名单、交互式钩子
Skills(技能系统) Markdown技能加载与解析 动态解析.md文件,映射为工具调用模板
Plugins(插件系统) 扩展能力支持 事件钩子、自定义命令、智能体类型注册
Agents(智能体系统) 多智能体管理与协同 主从架构、任务队列、消息通信机制
UI(交互界面) React+Ink终端TUI 前端组件化,实时状态展示、权限弹窗
Gateway(网关层) 多模型接入适配 OpenAI/Anthropic兼容协议,支持自定义API格式
Telemetry(可观测) 日志、监控、成本追踪 全链路埋点、Token计数、成本报表生成

2. 技术栈与依赖

  • 核心语言:Python 3.10+(异步asyncio、类型注解)

  • 前端交互:React + Ink(终端UI框架)

  • 数据校验:Pydantic 2.0+(工具输入/输出、配置校验)

  • 工具依赖:requests(网络)、pyyaml(配置)、rich(终端格式化)、aiofiles(异步文件)

  • 测试体系:pytest(114+单元测试)、6套E2E测试套件

  • 部署支持:Docker容器化、本地直接运行、无云服务依赖

3. 核心技术亮点

  1. 轻量化复刻:1.1万行代码实现Claude Code核心能力,代码量减少97.7%,性能无明显损耗;

  2. 模型无关设计:抽象网关层,支持OpenAI、Anthropic、Kimi、DeepSeek、通义千问、Ollama本地模型等任意LLM接入,通过--api-format参数切换协议;

  3. 流式处理优化:全链路异步流式,工具调用结果实时返回,减少用户等待时间;

  4. 安全沙箱:基于系统权限隔离+路径白名单,双重保障文件与命令执行安全;

  5. 生态兼容:100%兼容Anthropic Skills技能包、Claude Code插件,降低迁移成本。

四、应用场景

OpenHarness凭借轻量化、全功能、高安全特性,适配个人开发、企业生产、学术研究三大核心场景,覆盖10+细分领域:

1. 个人开发者场景

  • AI编程助手:替代GitHub Copilot、Claude Code,支持本地代码编辑、调试、重构、文档生成;

  • 自动化办公:文档处理、数据整理、报表生成、邮件发送、日程管理;

  • 本地数据处理:隐私数据清洗、分析、可视化,避免数据上传云端;

  • 命令行增强:Shell命令智能补全、复杂任务自动化执行。

2. 企业级应用场景

  • 企业AI助理:客户服务、数据分析、报表生成、内部系统操作;

  • DevOps自动化:服务器运维、日志分析、部署监控、故障排查;

  • 内容创作:文案撰写、翻译、润色、短视频脚本生成;

  • 私有部署智能体:金融、医疗、政务等敏感领域,本地部署保障数据安全;

  • 多智能体团队:大型项目拆解、多人协作任务、跨部门流程自动化。

3. 学术研究场景

  • AI智能体架构研究:快速实验不同智能体决策逻辑、工具调用策略;

  • 安全机制验证:测试权限管控、沙箱隔离、恶意操作防护效果;

  • 多智能体协同研究:探索团队协作、任务分配、冲突解决机制;

  • 轻量化模型适配:为小参数模型补充工具能力,降低部署成本。

4. 其他创新场景

  • AI教育工具:编程教学、实验指导、作业批改;

  • 嵌入式智能体:边缘设备、IoT设备轻量化AI助手;

  • 开源项目赋能:为开源软件添加AI交互能力,提升用户体验。

OpenHarness:港大开源轻量级AI智能体驾驭框架,一键解锁工具调用与多智能体协同

五、使用方法

1. 环境准备

  • 系统要求:Windows 10+/macOS 10.15+/Linux(Ubuntu 20.04+)

  • Python版本:3.10及以上(推荐3.11+)

  • 依赖安装:

# 检查Python版本
python --version
# 安装OpenHarness
pip install openharness
# 验证安装
oh --version

2. 快速启动(3种模式)

模式1:交互式TUI(推荐)

# 直接启动,自动读取环境变量API密钥
oh
# 或指定模型与API密钥
oh --api-key sk-xxx --model gpt-4o
# 支持本地Ollama模型
oh --api-format openai --base-url http://localhost:11434/v1 --model llama3

启动后进入React终端界面,支持:

  • 自然语言对话输入

  • 工具调用自动弹窗确认

  • 会话历史查看与恢复

  • 多智能体创建与管理

模式2:单次提问模式

# 单命令执行任务
oh -p "分析当前目录代码,列出3个优化点"
# 指定输出格式
oh -p "生成项目README文档" --output README.md

模式3:脚本集成模式

# Python代码嵌入
from openharness import OpenHarness

# 初始化
agent = OpenHarness(
  api_key="sk-xxx",
  model="gpt-4o",
  tools=["file", "shell", "search"] # 启用指定工具
)

# 执行任务
result = agent.run("分析data.csv数据,生成可视化图表")
print(result)

3. 核心配置

  • API配置:支持环境变量(OPENAI_API_KEYANTHROPIC_API_KEY)或命令行参数

  • 工具配置~/.openharness/config.yaml配置工具白名单、权限路径

  • 记忆配置MEMORY.md存储持久记忆,CLAUDE.md注入项目上下文

  • 权限配置

# 权限示例
permissions:
 file:
  allow_paths: ["./projects", "./data"]
  deny_paths: ["/etc", "~/.ssh"]
 shell:
  allow_commands: ["ls", "grep", "git"]
  deny_commands: ["rm -rf", "sudo"]

4. 自定义扩展

添加自定义工具

from pydantic import BaseModel, Field
from openharness.tools.base import BaseTool, ToolResult

class WeatherInput(BaseModel):
  city: str = Field(description="城市名称")

class WeatherTool(BaseTool):
  name = "weather"
  description = "获取城市天气"
  input_model = WeatherInput

  async def execute(self, context, input: WeatherInput) -> ToolResult:
    # 调用天气API
    return ToolResult(success=True, data=f"{input.city}:晴天,25℃")

# 注册工具
agent.register_tool(WeatherTool())

加载自定义技能

创建skills/my_skill.md

# 技能:项目文档生成
## 描述
自动生成项目技术文档、API文档、使用手册
## 输入
- project_path: 项目路径
- doc_type: 文档类型(tech/api/user)
## 执行
1. 读取项目代码与配置
2. 分析模块与接口
3. 生成对应格式文档

启动时自动加载:oh --skills-dir ./skills

六、竞品对比

选取Claude Code(官方原型)、LangChain(主流框架)、AutoGPT(经典智能体) 三大同类产品,从核心维度对比:

1. 核心指标对比表

对比维度 OpenHarness Claude Code LangChain AutoGPT
开发团队 香港大学HKUDS Anthropic 社区主导 Significant-Gravitas
开源协议 MIT(完全开源) 闭源 MIT MIT
代码规模 1.17万行Python 51.2万行TS 15万行Python/TS 8万行Python
模型绑定 任意LLM(无绑定) 仅Claude系列 任意LLM 任意LLM
本地部署 完全支持(无云依赖) 不支持(仅云端) 完全支持 完全支持
工具覆盖 43+(Claude 98%) 100% 500+(生态丰富) 30+(基础工具)
权限治理 多级权限+沙箱 强管控 基础权限 弱权限
多智能体 原生支持(团队化) 有限支持 插件支持 实验性支持
学习曲线 极低(一键启动) 中(仅API调用) 高(模块化复杂) 中(配置繁琐)
适用场景 研究、本地隐私、快速开发 企业生产、日常开发 复杂应用、企业级 实验、原型验证

2. 核心差异分析

OpenHarness vs Claude Code

  • 优势:完全开源、本地部署、模型无关、轻量化、二次开发简单、兼容插件生态;

  • 劣势:沙箱安全强度略低、企业级支持不足;

  • 选型建议:需要本地部署、研究魔改、多模型适配选OpenHarness;追求稳定生产选Claude Code。

OpenHarness vs LangChain

  • 优势:极简使用(一键启动)、轻量化(内存占用<200MB)、智能体循环原生优化、安全治理完善;

  • 劣势:生态工具数量少于LangChain、复杂链支持较弱;

  • 选型建议:快速构建智能体、本地隐私场景选OpenHarness;需要海量工具集成、复杂流程开发选LangChain。

OpenHarness vs AutoGPT

  • 优势:流式执行、稳定可靠、权限安全、多智能体协同、交互体验佳;

  • 劣势:自主决策能力较弱、依赖模型指令理解;

  • 选型建议:稳定工具调用、安全可控场景选OpenHarness;实验性自主智能体选AutoGPT。

七、常见问题解答

Q:OpenHarness支持哪些大模型?

A:支持所有兼容OpenAI/Anthropic协议的大模型,包括OpenAI GPT系列、Kimi、DeepSeek、通义千问、文心一言、Llama 3、本地Ollama模型等,通过--api-format参数切换协议即可。

Q:本地部署是否需要GPU?

A:不需要。OpenHarness仅作为框架运行,模型调用依赖云端API或本地Ollama,框架本身CPU即可流畅运行,内存占用<180MB。

Q:如何保障本地文件安全?

A:内置多级权限管控:1. 路径白名单/黑名单配置;2. 文件操作交互式审批弹窗;3. Shell命令白名单;4. 沙箱隔离执行;5. 全链路操作日志记录。

Q:是否支持Windows系统?

A:完全支持Windows 10及以上版本,支持PowerShell、WSL环境,工具与权限功能与Mac/Linux一致。

Q:如何添加自定义工具/技能?

A:工具通过Python类继承BaseTool实现并注册;技能通过Markdown文件编写,放置在skills目录自动加载,详细步骤见官方文档。

Q:记忆数据存储在哪里?

A:持久记忆存储在当前目录MEMORY.md文件,上下文记忆在内存中,会话结束后自动同步到文件,支持跨会话恢复。

Q:与OpenClaw、nanobot的关系?

A:OpenHarness是底层驾驭框架,OpenClaw、nanobot是基于OpenHarness开发的CLI智能体应用,可直接通过oh命令集成使用。

Q:生产环境是否稳定可用?

A:项目已通过114+单元测试、6套E2E测试,支持生产环境,但敏感场景建议配合权限严格配置与监控。

Q:如何更新到最新版本?

A:执行pip install --upgrade openharness即可更新,更新后执行oh --version验证版本。

Q:是否支持离线使用?

A:支持离线模式:1. 接入本地Ollama模型;2. 禁用网络工具;3. 仅使用本地文件/Shell工具,完全离线运行。

八、相关链接

九、总结

OpenHarness作为香港大学数据科学研究院开源的轻量级AI智能体驾驭框架,以极致轻量化设计、完整核心能力、高度安全管控与极简使用体验,重新定义了AI智能体开发的基础设施标准,通过1.1万行Python代码高效实现了Claude Code的核心能力,同时突破模型绑定、闭源限制、本地部署等痛点,兼容任意大模型与Anthropic生态,内置43+工具、多级权限、持久记忆与多智能体协同功能,一行命令即可启动完整智能体环境,既满足个人开发者快速构建AI助手的需求,也适配企业私有部署、学术研究验证的场景,凭借开源开放、安全可控、高效易用的核心优势,成为AI智能体开发领域极具竞争力的轻量化解决方案,为开发者提供了低门槛、高效率、高安全的智能体开发新选择。

打赏
THE END
作者头像
AI铺子
关注ai行业发展,专注ai工具推荐