Harness 实战教程
第 02 章 / CHAPTER 02

使用国产 Harness 完成你的工作

安装 Workbuddy,认识 Agent 能做的事,掌握模型切换、Prompt / Skill / MCP、指令、工作区、Hook 与思考强度。

安装 Workbuddy

进入 Workbuddy 官网下载安装包,或打开压缩文件中的安装包。

Workbuddy 官网首页,含立即下载按钮
Workbuddy 官网下载页

完成安装后,登录 Workbuddy 即可开始使用。

Agent 可以干什么

总结数据

输入你需要让 Agent 干的活。比如:帮我生成一份今日科技股市总结 PDF

在输入框中让 Agent 生成股市总结
输入任务
Agent 生成的科技股市总结 PDF
生成结果

也可以直接拖入文件,输入:帮我总结一下这个文档

拖入文件让 Agent 总结文档
文档总结

安装、配置环境

输入你要配置的环境。比如:

  • 帮我在本机上安装 Python 3.12
  • 帮我在本机上安装 YOLO v8
让 Agent 在本机安装 Python 3.12
环境配置

制作文档、演示文稿

输入你所需要的需求。比如:制作一份保密教育的 PPT 以及 Word 提纲

让 Agent 制作保密教育 PPT 与 Word 提纲
文档与演示文稿

生成代码、程序 Project

先切换至代码开发模式。

在 Workbuddy 中切换到代码开发模式
切换到代码开发模式

再输入你想制作的程序。比如:

  • 使用 Python 写一个冒泡排序的程序
  • 制作一个学生成绩管理系统
  • 使用 YOLO 制作一个跳一跳自动脚本
让 Agent 编写程序
代码生成

润色你的 Prompt(提示词)

一个好的提示词能够大大减少返工和修改的概率,但大部分人都不知道如何写好提示词。Workbuddy 提供了提示词润色功能,点击「增强 Prompt(提示词)」即可。

Workbuddy 的提示词润色入口
增强 Prompt 入口
制作一份面向企业员工的保密教育培训材料,包含 PPT 演示文稿和 Word 版详细提纲两部分。PPT 需涵盖以下内容:保密工作的重要意义与相关法律法规要求、常见泄密风险场景(如社交媒体使用、移动存储介质管理、电子邮件传输、涉密文件处理等)、典型泄密案例警示分析、员工日常保密行为规范以及违规责任与处罚规定。Word 提纲应与 PPT 结构对应,详细列出各章节核心知识点、讲解逻辑顺序、配套案例说明和互动讨论问题,便于培训讲师备课和现场授课使用。整体材料结构清晰、层次分明,适合约 60 分钟的培训课程,语言专业严谨且通俗易懂,并预留可根据本单位实际情况替换案例的说明位置。

以上是润色后的提示词。此时再根据你的需要修改上面的提示词即可。

Workbuddy 的基本使用方法

切换模型

切换现有的 Workbuddy 模型:点击图中红框标出的区域,选择模型。

点击模型区域打开模型选择列表
模型选择入口

模型的智能程度可以参考 Arena AI(LMArena)大模型排行榜 · 官网镜像(9 月 5 日更新);模型的价格则参考其消耗倍率。

各模型的消耗倍率列表
模型消耗倍率

切换第三方模型:由于 Workbuddy 免费额度较少、收费较高,建议采用第三方模型。点击「配置自定义模型」。

配置自定义模型入口
配置自定义模型
在弹出窗口中选择「自定义」
选择自定义

了解完概念之后,访问 platform.deepseek.com,进行登录以及实名认证,进入充值界面充值。

DeepSeek 开放平台的充值界面
充值界面

再进入 API keys 界面,创建一个 API key,并保存好你的 API key。

DeepSeek 的 API keys 管理界面
API keys 界面
创建新的 API key
创建 API key

下面我们再找接口地址和模型名称。点击「接口文档」。

平台入口处的接口文档链接
接口文档入口

接口文档里就什么都有了。

接口文档中的 base_url 与模型名称
接口文档

我们这里复制 OpenAI 协议的 base_url,模型选择 deepseek-v4-pro

填写自定义模型的 base_url、API key 与模型名称
填写自定义模型配置

deepseek-v4-pro 支持图片输入和思考模式,这里一并勾上,点击保存。

回到主页,就可以使用 DeepSeek 了。如遇到错误,可查看错误码解决相关问题。比如下面这个例子就是余额不足。

主页已切换为 DeepSeek 模型
开始使用 DeepSeek
调用出错时的错误码信息
查看错误码
余额不足的报错示例
余额不足

当然,Workbuddy 也提供了预设的 base_url 以及模型配置,这样就可以更方便地配置模型了。

预设 base_url 配置
预设 base_url
预设模型配置
预设模型

Prompt、Skill 与 MCP

这些是基础词汇。学会了它们,就不会在接下来的 Harness 使用中一头雾水。

Prompt(提示词):给大模型的输入指令文本,是人和大模型之间的接口,用来告诉模型任务、角色、约束、输出格式、背景信息。大模型本身没有「主动想法」,它只会根据你给的 Prompt,续写最符合概率的文本。模型输出质量的上限由 Prompt 决定。

一个完整的提示词通常包含下面几块,按需组合:

  • 角色设定(Role):你是谁。例:你是一名 C++ 竞赛教练
  • 任务指令(Task):要做什么。例:请推导高数公式
  • 上下文 / 背景(Context):相关资料、已知条件
  • 约束规则(Constraints):不能做什么、限制条件
  • 输出格式(Format):Markdown / JSON / LaTeX / 简短一句话
  • 示例(Few-shot,少样本):给 1~3 组输入输出样例,教模型模仿格式

当然,Prompt 也可以非常简单。比如「今天呼和浩特的天气怎么样」也是一个提示词。

Skill(技能):字面意思,Agent 可以调用、用来完成特定任务的能力单元。通俗地类比一下:

  • 大模型 Model:大脑,会思考、理解语言
  • Harness:底盘 / 运行框架,负责循环、调度、权限、记忆
  • Skill:工具包里一个个独立的本事,相当于人的一项项技能

MCP(Model Context Protocol,模型上下文协议):一套开放标准通信协议,用来让 AI Agent / 大模型应用以统一、安全的方式连接外部工具、文件、数据库、业务系统。由 Anthropic 在 2024 年底开源,现在已捐赠给 Linux 基金会,可以类比为 AI 领域的 USB-C 接口。

简单来说,MCP 就是 Agent 去远端找到并调用工具的「高速公路标准」。打个比方:电脑要使用鼠标,就得把鼠标的 USB 插头插进电脑的 USB 接口,鼠标才能工作;同样,大模型要使用一个工具,就需要通过 MCP 来连接这个工具。

那如何写一个好的 Prompt,或者调用 Skill 与 MCP 呢?前面我们说过,Workbuddy 可以帮助你润色 Prompt,使提示词更易使用。针对 Skill 和 MCP,我们打开「专家 · 技能 · 连接器」页面:这里的技能就是 Skill 模板,连接器就是 MCP,专家则是技能 + MCP 的组合。

「专家 · 技能 · 连接器」市场页面
专家 · 技能 · 连接器

可以根据你的需要选择相应的 Prompt、Skill 与 MCP。我们前面用 Workbuddy 总结了今天的股票,现在加入 Prompt、Skill 与 MCP 试试:

召唤一个专家(Prompt)
召唤专家
安装一个技能(Skill)
安装技能
安装一个连接器(MCP)
安装连接器

回到主页,点击「+」。

主页的「+」入口
附加能力入口

把专家之类的都选上,再优化一下提示词。

附加专家后优化提示词
组合使用

这样做的好处是:生成的答案要比直接一句话生成的答案质量高很多。

Workbuddy 还有一个项目板块。点进去看,这就是充分利用了 Prompt、Skill 与 MCP 的例子,可以完成高质量的工作。

Workbuddy 的项目板块
项目板块
项目板块中的示例项目
项目示例

指令与模式

在聊天框输入 / 可以打开指令界面,方便地调用技能以及切换模式。

输入 / 打开指令界面
指令界面

Workbuddy 提供了两种模式,但不支持用指令调用。

「计划」与「仅回答」两个模式开关
两种模式
  • 计划:打开后,Agent 在完成你说的任务之前,先给你它的计划。你觉得好就执行,不好就修改计划,大大降低了生成结果与你的想象大相径庭的概率。
  • 仅回答:只回答你的问题,不对你电脑上的文件进行操作,也不输入指令。
  • 都关闭:你说完之后它就直接去干活了。

市面上大部分 Harness 支持用指令切换模式,例如 DeepSeek Harness。

DeepSeek Harness 中的模式切换指令
指令切换模式

下面是一些基础的指令。

Compact(压缩上下文):这里需要讲一下大模型的「记忆」原理。大模型其实没有记忆,那它怎么能记住你说过的话呢?每一次你和大模型对话、以及大模型的每一步推理,Harness 都会把之前的消息传给大模型,包括之前的对话、Skill,以及一些由 Harness 在你电脑上生成的 Memory 文件。这些内容统称为上下文,这样大模型就看似有了记忆。

但是,模型每次接收的消息有最大上限,大量冗余消息也会让大模型「注意力不集中」。每次给大模型发送大量上下文,模型都要经过额外的推理,会额外消耗你的额度。因此,我们使用 compact 在需要时对上下文进行压缩,以减轻模型负担。Harness 也会在上下文快达到模型上限时自动压缩。

使用方法
/compact

Goal(设定目标):Agent 要最终达成的结果。Harness 在每一轮迭代后都会检测是否达到了这个目标,如果没有达到,就启动下一轮迭代。设立 Goal 也会让模型清楚自己的目标,不容易被上下文带偏。

使用方法
/goal 你要的目标

Permission(权限):你给大模型的权限。执行危险指令时是否需要经过你同意?大模型操作文件的范围是在这个工作区、还是整个电脑、还是只读?这些都由 Permission 决定。

使用方法
/permission

Model(模型):顾名思义,就是切换模型。

使用方法
/model

Plan(计划模式):如果你想先计划再执行,用它可以进入计划模式。

使用方法
/plan 你要干什么

工作区

有一些任务,大模型直接给你最终结果就可以了,比如做 PPT。但还有一些任务,比如写一个大型程序,不能只给你一个最终文件,这样既不方便调试,也不方便他人修改查看。这时我们可以使用工作区功能。

在 Workbuddy 选择「工作空间」。可以新建一个工作空间,也可以选择已有的文件夹。

选择工作空间
选择工作空间
新建工作空间或选择已有文件夹
新建工作空间

这样,模型就会在 test 这个文件夹里完成它的工作了。

远程连接以及 Hook(钩子)

大模型的创立就是为了提高效率、减轻负担。你如果一直盯着大模型干活,那就反倒没有减负了。那不盯着它,怎么能知道它干完活没有呢?

我们可以将手机端与电脑端配对:走在街上也能查看大模型干到了哪一步,远程指挥大模型工作。

手机端与电脑端配对,远程查看任务进度
远程指挥

也可以使用 Hook。Hook 中文名为「钩子」,这个名字很形象:程序执行到某个固定节点时,预先挂载好的回调函数会自动触发执行,用来拦截、修改、校验日志 / 请求 / 状态,而不用改动主循环代码,很像把这个函数「勾」了起来。

可以在如下节点建立「条件反射」:

  • before_model_call:发给大模型之前。可以修改 Prompt、过滤敏感词、记录输入
  • after_model_call:模型返回结果之后。校验模型输出,拦截危险工具调用意图
  • before_tool_call:调用 MCP / 工具之前。权限校验、审计日志、参数检查
  • after_tool_call:工具返回结果之后。清洗工具返回内容
  • on_compact:触发上下文压缩 compact 的时候。自定义摘要策略
  • on_goal_check:每次判断是否达成 Goal 之前 / 之后
  • on_error:发生异常的时候。告警、重试
  • on_terminate:任务结束时触发。保存记忆、清理资源

Clawd on Desk 是一个充分利用了 Hook 的桌宠:它通过 Hook 感知大模型工作的节点,从而呈现出不同的宠物形态。可通过安装包安装,或访问 GitHub 仓库下载。

Clawd on Desk 桌宠形态
Clawd on Desk
桌宠随大模型工作状态变化形态
状态感知

模型的思考强度

模型思考强度的档位选择
思考强度档位
不同思考强度的效果对比
强度对比

思考强度越强,质量越高,但额度消耗得越快;反之亦然。