OpenHarness 上手:把 Agent 从聊天框推进到可恢复的长期工作台

作者:Administrator 发布时间: 2026-05-01 阅读量:7 评论数:0

Agent 真正进入日常工作以后,瓶颈往往不在模型本身,而在运行时。聊天框能回答问题,但很难长期维护一个项目:它要记住上下文、调用工具、拆任务、写代码、跑测试、处理失败、接消息平台,还要能在长会话里恢复状态。

OpenHarness 把这个问题直接摆到了台面上。它不是另一个“套壳聊天助手”,而是一套轻量 Agent harness:tool-use、skills、memory、多 Agent 协调和长会话执行都放在一个框架里。仓库里的 ohmo 则是基于 OpenHarness 的个人 Agent,可以通过飞书、Slack、Telegram、Discord 等入口接任务,再去 fork 分支、改代码、跑测试、开 PR。

值得看的点不是“又能聊天了”,而是它把 Agent 从即时问答推进到一个可运营的工作台。开发者真正要评估的是:它能不能把任务状态、权限边界、工具调用和人类确认点管住。

先给 Agent 工具留一台干净测试机这类 GitHub 新工具通常会动文件、跑命令、起服务,最好先在隔离环境里验收,再接入生产项目。需要临时 VPS、开发机或自建实验环境,可以看看雨云的服务器方案。查看雨云服务器方案 →

先理解它的分层

OpenHarness 可以拆成两层看。

第一层是 harness。它负责 Agent 运行时的基本能力:

  • 工具调用。
  • Skills 加载。
  • Memory 管理。
  • 多 Agent 协同。
  • 流式输出和 JSON 输出。
  • 长任务过程里的状态记录。

第二层是 ohmo。它是一个拿来即用的个人 Agent,把 harness 能力接到消息平台和开发流程里。

这层关系很重要。只想研究 Agent runtime,可以看 OpenHarness;想直接拿一个长期在线助手,可以看 ohmo。不要把两者混成“聊天机器人”。

最小安装路径

先准备 Python 3.10 以上环境:

git clone https://github.com/HKUDS/OpenHarness.git
cd OpenHarness
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

如果仓库里提供了额外依赖文件,先按 README 里的方式安装:

pip install -r requirements.txt

然后跑测试确认环境没散:

pytest -q

如果你只是评估框架,不要一上来就接飞书、Slack 或 Telegram。先在本地跑通最小 harness,再决定要接哪个消息入口。

建一个安全的本地实验目录

给 Agent 工具链单独准备工作区:

mkdir -p ~/agent-lab/openharness-demo
cd ~/agent-lab/openharness-demo
git init

把测试任务限制在这个目录里。Agent 工具最怕没有边界:一旦给了 shell 和文件权限,它就可能误改不该动的路径。

建议约定:

允许读写:~/agent-lab/openharness-demo
禁止读写:~/.ssh、生产项目、密钥目录
危险命令:rm -rf、docker prune、系统级包管理,需要人工确认

这些约束最好写进项目级说明或 skill,而不是靠人临时提醒。

接入消息平台前先做三件事

第一,确认 token 和 app secret 不进仓库。

cp .env.example .env
chmod 600 .env

第二,确认日志里不会打印密钥。

grep -R "print.*TOKEN\|console.log.*TOKEN" -n . || true

第三,确认 Agent 的工作目录和权限范围。

pwd
git status

消息入口很方便,但也会放大风险。一个群聊消息如果能触发写文件、跑命令、开 PR,那就必须把 allowlist、确认机制和审计日志放在前面。

一个靠谱的使用场景

适合先从代码维护小任务开始:

任务:给这个 Python 项目补一个 health check CLI。
要求:
1. 只改 src/ 和 tests/。
2. 先写测试,再实现。
3. 跑 pytest。
4. 输出变更摘要,不自动提交。

这样的任务边界清楚,能检验 OpenHarness 的工具调用、文件修改、测试执行和结果汇报。

不建议一开始就给它:

把我们公司后台重构一下。

这类任务范围太大,既不好验收,也容易让 Agent 在长链路里漂移。

上线前检查

真正接入团队之前,至少检查:

  • Agent 能否限制工作目录。
  • 工具调用是否有日志。
  • 高风险命令是否需要确认。
  • Skills 是否会误触发。
  • Memory 是否会记录敏感信息。
  • 消息平台是否有群组 allowlist。
  • 长任务中断后是否能恢复上下文。
  • PR 或提交是否需要人工审查。

OpenHarness 的价值不是“让 Agent 更像人”,而是把 Agent 变成一个能被工程管理的执行单元。能跑起来只是第一步;能限制、能恢复、能审计,才是真正能进团队工作流的开始。

评论