自研 Mini-Harness:从零打造轻量 Agent 框架的实践思路

B站UP主自研轻量Agent执行框架Mini-Harness,以快速可控为核心,实测驱动27B模型自主完成12小时3D场景生成。
这篇文章介绍了一位B站创作者放弃通用AI Agent框架、从零搭建自研Mini-Harness的动机与实践。核心出发点是通用框架冗余模块多、性能损耗大且难以深度定制,而自研方案可以做到高集成度、运行快、完全可控。工具在功能上涵盖多种API接入格式(OpenAI、Anthropic风格)、浏览器操控、终端、文件读写、联网搜索和子智能体等能力,同时支持本地目录和远程SSH两种项目加载模式。最具说服力的案例是用通义千问27B模型驱动Agent自主运行约12小时,完成一个3D地铁模拟场景的从无到有。整体设计哲学是「按需构建」——删掉暂时用不到的功能,优先保障速度与可控性,代表了Agent工程领域轻量自研路径的务实价值。
为什么放弃现成框架,选择自研 Harness
很多开发者在搭建 AI Agent 时会直接套用现成的框架,但这位 B 站 UP 主给出了不同的选择——从零搭建一个自己的 Mini-Harness。原因并不复杂:现成框架功能虽然完善,却带着大量用不上的模块,占用资源、拖慢整体运行速度。
作者坦言,整个工具在界面风格上参考并致敬了 Claude Code,因为「这种方式和风格我们比较喜欢」,但对其中冗余的功能做了大量删减。核心诉求是三点:集成度高、运行快、完全可控。用他的原话说,「后期我们想怎么动怎么动」,尤其是在做自动化 Agent 相关工具时,自己掌控的代码改起来更方便,而依赖别人的框架则「不太方便」。
这其实反映了一个真实的工程权衡:通用框架追求覆盖面,而垂直场景往往只需要其中一小部分能力。当你对性能和可控性有明确要求时,「减法」比「加法」更有价值。
Mini-Harness 具备哪些核心能力
虽然定位是「Mini」,但这套工具的功能覆盖并不算窄。作者演示中提到,它能够适配多种 API 接入方式,包括 OpenAI 传统格式、OpenAI Response 格式,以及 Anthropic 风格的接口,用户只需在设置中选择即可。
在工具能力上,它集成了浏览器操控、终端、文件读写、文件上传、联网搜索、子智能体(Sub-agent)以及 Skills 等模块。作者形容为「基本上你能想到的都有了」,但也诚实承认「肯定不如 Claude Code 那么完善和全面」——一些暂时用不到的功能被主动砍掉,需要时再补。

这种「按需构建」的思路,恰恰是自研 Harness 相较通用框架的差异点:保留骨架,去掉赘肉。
子智能体(Sub-agent) 是当前 Agent 工程中的重要架构模式:主 Agent 将复杂任务拆解后,动态派发给多个专职子 Agent 并行或串行处理,最终汇总结果。这种设计可以突破单次上下文窗口的长度限制,让系统处理远超单轮对话能力的长程任务。Skills 模块则通常指预定义的可复用技能单元,类似函数库,Agent 可以直接调用而无需每次重新生成执行逻辑,从而提升稳定性并减少 token 消耗。两者结合,使 Harness 能够编排远比单次对话更复杂的自动化工作流。
一个真实案例:12 小时自动生成 3D 地铁模拟
最能说明问题的是作者展示的实际案例。他让 Agent 自主完成了一个类似 Counter-Strike 风格的 3D 地铁模拟场景——从环境搭建到细节呈现,整个过程 Agent 花费了约 709 分钟,接近 12 个小时自主运行、输出并修正。
值得关注的是背后的模型配置:后台使用的是通义千问广告(Qwen)3.8 系列的 27B 模型,属于相对基础的选择。作者强调,这类任务不可能「一句 prompt 就完成」,而是需要 Agent 反复迭代,人工再介入优化几次,才能逐步逼近需求。

除了游戏场景,作者还提到 Harness 可以驱动 Agent 操作 Word、PPT,甚至打开 Blender 进行 3D 建模,让它自行迭代把作品「做得越来越精细化」。这些能力的共同点在于:Agent 不是一次性生成,而是通过持续迭代逼近目标,这也是当前 Agent 工程的核心范式。
通义千问(Qwen)3.8 系列是阿里云开源的多尺寸大语言模型家族,其中 27B 指参数量约 270 亿。在本地或私有服务器部署场景下,27B 规模的模型是性能与资源消耗之间常见的折中选择——相比 7B/8B 模型推理质量更稳定,又不像 70B 以上模型那样对显存要求极高。以该量级模型驱动 Agent 完成 12 小时长程任务,意味着整个过程中模型需要持续进行代码生成、错误分析与迭代修正,这对模型的指令遵循能力和上下文理解能力都有较高要求,也侧面说明了迭代次数和人工介入节点的重要性。
项目加载与远程连接的灵活性
在工作区管理上,这套工具支持两种模式:本地项目和远程 SSH 连接。用户可以直接加载本机的某个目录开始新任务,也可以填入用户名、密码连接远程 SSH 服务器(部分无需密码的场景可跳过)。
作者演示时,将自己的项目统一挂载在服务器的 data 目录下,连接后即可像操作本地一样新建对话、执行任务。这种设计让 Harness 既能服务本地轻量开发,也能对接远程算力资源。

设置项拆解:Provider、搜索与浏览器控制
在配置层面,Mini-Harness 提供了几个关键选项。Provider 部分决定以何种格式接入模型,可选 OpenAI、OpenAI Response 或 Anthropic 风格;同时需要填写 Model ID,并设定默认的「深度思考」等级。
搜索服务是一个可选项。作者自己使用 SearXNG 搭建了私有搜索服务器,但也说明用户完全可以不填——不填的情况下系统会调用内置方式去网上抓取内容。浏览器控制方面,工具通过 privileged 方式操控本机或指定浏览器,实现真实的网页操作能力。

作者还提到,任务区支持自定义任务类型,比如「头脑风暴」这类他们自己定义的模式。配合像 DeepSeek广告 V4 这类高速模型,可以极快地完成网页截图理解、产品策划分析等轻量任务——「重点就是删除很多东西,要它快」。整套设计的哲学始终围绕「快」和「可控」展开。
SearXNG 是一款开源的元搜索引擎,可自托管部署,聚合 Google、Bing、DuckDuckGo 等多个搜索源的结果,同时不向这些服务商传递用户身份信息。在 Agent 开发场景中,使用私有 SearXNG 实例有两大优势:一是避免直接调用商业搜索 API 的频率限制和费用,二是让搜索行为完全在自控基础设施内闭环,符合对数据隐私有要求的企业或个人用户的需求。privileged 方式操控浏览器 通常指以较高权限启动 Chromium/Chrome 等浏览器进程,允许 Agent 直接读写 DOM、截图、填表、点击等,与仅能抓取静态 HTML 的方案相比,可以处理需要 JavaScript 渲染或登录态的动态页面。
小结:轻量自研是被低估的路径
这期演示传递出一个务实的观点:在 Agent 开发中,不是所有场景都需要重型通用框架。当团队对性能、可控性和后续扩展有明确要求时,从零搭建一个精简的 Harness,往往是更高效的选择。
作者表示这套工具可以下载试用。对于希望深入理解 Agent 底层运行机制、或需要高度定制化 Agent 工作流的开发者来说,这类轻量自研方案值得研究和借鉴。
相关推荐

科幻小说对AI的预测有多准?
科幻小说对AI的预测有多准?本文结合Hacker News讨论,分析科幻作品在AI发展中的远见与盲区,探讨其真正价值在于启发思考而非精准预测。

SwarmEvolve:潜空间智能体集群加速进化搜索
SwarmEvolve框架让数百个低成本智能体在潜空间中集群推理,通过KV缓存共享信息,在数学发现和科学计算问题上实现快速进化搜索,中位数仅3-8分钟达到其他框架60分钟的最佳分数。

trainlint:静态检查揪出不会崩溃的 ML 训练 Bug
trainlint 是一个静态检查工具,能找出不会报错的机器学习训练 bug,包括数据泄漏、eval 模式残留、softmax 与 CrossEntropyLoss 冲突等十四类问题。本文介绍其原理、验证结果与局限。