如何用目标模式让 Agent 自主工作到底:PenguinHarness Goal Mode 实战教程
如何用目标模式让 Agent 自主工作到底PenguinHarness Goal Mode 实战教程【免费下载链接】penguin-harness Unified and Stable RSI Platform项目地址: https://gitcode.com/gh_mirrors/pe/penguin-harnessPenguinHarness 的**目标模式Goal Mode**可以一句话概括你交给 Agent 一个目标而不是单独一条消息它会在同一个会话里一轮接一轮地自主推进直到目标完成、受阻或 Token 预算用完。对于把整个项目的测试跑通构建一个完整小应用这类长任务这正是让 Agent 自主工作到底的关键能力。普通 Task 在模型停止调用工具并作答时就结束了——对一次请求没问题对一个目标则是错的。目标模式把这个约定反了过来沉默不再意味着工作结束模型必须按协议宣告complete或blocked其余情况一律继续循环。什么是 Goal Mode为什么需要目标模式普通 Task目标模式Goal Mode一条消息 → 一次作答 → 结束一个目标 → 多轮循环 → 直到终态模型答完话即停止每轮结束自动注入下一轮继续干活无花费控制可设 Token 预算超限自动收尾目标模式由goal插件实现本质是两个钩子脚本组成的钩子包start.mjs目标启动时运行写入目标文件组装第 1 轮协议消息stop.mjs每个 Task 结束后运行读取 Trace 判断继续下一轮还是结束目标见 plugins/goal/。核心 SDK 完全不知道目标是什么整个循环是插件驱动的这也是它灵活的原因。开始之前2 个前置条件Agent 已安装goal插件default_agent预装了它其他 Agent 可从插件库安装Agent 的钩子已开启Agent钩子标签页上的启用钩子默认开启。没装插件或关了钩子Web App 和 API 会直接返回409 goal_plugin_not_installed而不是运行一个到头就结束的普通 Task——这种宁可报错也不装样子的设计值得称道 3 种启动目标模式的方法方法一在 Web App 中启动最直观在输入框中打开菜单选择目标模式也可以直接输入/goal可选点击目标芯片上的预算默认预算不限填入500k、2m这样的值并保存写下目标发送。运行期间输入框上方有一条实时横幅显示目标、当前轮次、已用 Token 与预算、目标状态每一轮都渲染为普通用户气泡。方法二在 CLI 对话中启动在penguin chat中输入预算后缀支持500k/2m写法见 CLI 文档/goal:500k make all tests passCtrl-C 可中止整个循环。方法三单次运行跑完才退出penguin run --goal [budget] -m objective只有目标真正完成时命令退出码才是 0——非常适合写进 CI 或脚本里做无人值守的自主工作。目标如何运行一轮一轮推进直到完成目标的状态保存在agent_dir/scratchpad/session_id/GOAL.json里和模型的PLAN.md同目录始终反映目标当前状态字段含义见目标文件章节{ objective: make all tests pass, status: active, budget: 500000, round: 3, tokens_used: 123456 }模型只能写status字段complete或blocked其余字段由钩子维护。每一轮的协议消息里内嵌着这份文件模型看到的正是它被要求编辑的那个文件。每轮 Task 结束后stop.mjs按固定顺序裁决命中第一条即处理源码见 stop.mjs文件写着complete→目标完成文件写着blocked→ 模型需要你介入要求同一阻塞条件连续三轮存在一次瞬时障碍不会终结目标Task 中途中断 / 失败 →aborted刚跑完预算收尾轮 →budget_limited已跑满 100 轮 →aborted防失控兜底预算已用完 → 进入收尾轮其他情况 →开始下一轮协议消息还规定了几条工作规则声明完成前先拿证据核实、不许把目标缩水成更容易的子集、关键进展写进PLAN.md以便上下文压缩后不丢。Token 预算如何控制 Agent 自主工作的花费预算统计未缓存输入 输出Token是花费估算而非账单预算在轮与轮之间检查不会让模型在思考到一半时戛然而止预算耗尽时触发最后一轮收尾总结进展、列出剩余工作、给出下一步且不许只因预算用完就客套地声明complete不设预算或-1则一直跑到complete/blocked由 100 轮硬上限兜底。正在运行的一轮总会跑完实际花费最多可能超出预算一轮用量外加收尾轮。停止目标与查看进度停止Web App 点停止按钮CLI 按 Ctrl-C。你的中断优先于钩子目标以aborted结束状态GET /api/sessions/:id/goal返回{ objective, status, budget, used, rounds }实时事件goal_started/goal_round/goal_finished经 SSE 推送Trace 页也能完整回看每一轮的 Token 消耗。实战案例让 Agent 自主做出一个完整小游戏假设你启动这样一个目标构建一个企鹅雪橇越野的小网页游戏包含计分、里程、连击倍率空格起跳纯前端实现。Agent 会在同一会话里自主完成写代码 → 运行检查 → 修 bug → 打磨细节直到它自证游戏可玩并声明complete。下面是这类目标跑出来的成品之一同样的思路也适用于更大的任务比如把整个文档库做成可检索问答应用Agent 会自主完成从语料采集到入口界面的一整套交付。常见问题 FAQQ为什么返回409 goal_plugin_not_installedAgent 没装goal插件或关闭了钩子。到插件库装上goal并确认启用钩子已打开。Q某轮失败/报错会直接杀掉目标吗不会轻易杀。瞬时障碍只会触发下一轮只有连续三轮同一阻塞、Task 中断失败、或 100 轮兜底目标才会以aborted/blocked结束。Q目标被打断后如何恢复目标文件始终保留模型最后一次写入的内容中断后磁盘上的目标保持active就是一个干净的恢复点。Q目标和普通消息 Skill 是什么关系输入框选中的 Skill 会以[use_skills]块加在第 1 轮消息开头与普通发送完全一致之后各轮只重新注入目标文字。小结PenguinHarness Goal Mode 用一份状态文件 两个钩子脚本把一句话消息升级成一个可循环推进、可设预算、可随时叫停、崩溃可恢复的自主工作闭环。核心要点一个目标一个会话每轮重新注入目标沉默不等于结束Token 预算兜底超限自动收尾不会无限烧钱️多重防失控100 轮硬上限 阻塞需连续三轮 文件损坏即停纯插件实现不侵入核心随时可装可卸更多细节API 字段、图片目标支持等可阅读目标模式官方文档功能引入记录见 Goal Mode 变更说明。【免费下载链接】penguin-harness Unified and Stable RSI Platform项目地址: https://gitcode.com/gh_mirrors/pe/penguin-harness创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

基于TM4C123的SPI MRAM存储方案:MR25H40CDF驱动与工业应用实践

基于TM4C123的SPI MRAM存储方案:MR25H40CDF驱动与工业应用实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 7:18:53 阅读更多 →
paperclip:本地优先的命令行知识夹取工具,让剪藏更简单

paperclip:本地优先的命令行知识夹取工具,让剪藏更简单

paperclip 这个词,放在程序员面前能想到两件事:一是桌面上那个弯成一个环的铁丝小物件,二是 AI 安全领域那个著名的“纸夹最大化器”思想实验(Paperclip Maximizer)。我这个项目之所以叫 paperclip,是想把这…

2026/10/4 7:18:53 阅读更多 →
openrig 配置编排工具:统一管理 Claude Code 与 Codex 的 YAML 实践

openrig 配置编排工具:统一管理 Claude Code 与 Codex 的 YAML 实践

1. openrig 到底是个什么东西第一次看到 openrig 这个名字,我下意识以为是某个硬件外设或者开源机械臂项目,毕竟 "rig" 这个词在硬件圈里太常见了。但翻了一圈社区讨论和仓库结构之后才反应过来,它其实是围绕 AI 编程助手生态做的一…

2026/10/4 7:18:53 阅读更多 →

最新新闻

floorplan-3d 10 个必会快捷键:户型装修设计效率翻 3 倍(附完整键位清单)

floorplan-3d 10 个必会快捷键:户型装修设计效率翻 3 倍(附完整键位清单)

floorplan-3d 10 个必会快捷键:户型装修设计效率翻 3 倍(附完整键位清单) 【免费下载链接】floorplan-3d 项目地址: https://gitcode.com/gh_mirrors/fl/floorplan-3d 想快速上手 floorplan-3d 户型装修设计工具?这套 10 个…

2026/10/4 7:57:15 阅读更多 →
Ekiga 3.2.7实战:H.323与SIP双栈视频会议配置及排错指南

Ekiga 3.2.7实战:H.323与SIP双栈视频会议配置及排错指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 7:57:15 阅读更多 →
ANSYS Workbench增材制造高斯热源仿真全流程指南

ANSYS Workbench增材制造高斯热源仿真全流程指南

1. 项目概述:为什么在Workbench里做增材制造高斯热源仿真不是“选修课”,而是“必修动作”如果你正在做金属激光粉末床熔融(LPBF)、电弧增材(WAAM)或者电子束熔丝(EBF3)相关的工艺开…

2026/10/4 7:57:15 阅读更多 →
openrig开放式装机实践:从硬件选型到稳定性验证的完整指南

openrig开放式装机实践:从硬件选型到稳定性验证的完整指南

聊openrig之前,先聊一个很多装机党都会遇到的尴尬:你在论坛里看了三天配置单,照着某个大神的“完美方案”买了一模一样的硬件,装完一跑分,性能总有差距,温度还高得离谱。问题往往不在硬件本身,而…

2026/10/4 7:57:15 阅读更多 →
Adaptive Autosar时间同步:从gPTP原理到ara::tsync工程实践

Adaptive Autosar时间同步:从gPTP原理到ara::tsync工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 7:57:15 阅读更多 →
Magic3D 两阶段文本到3D生成实战:从粗几何到细纹理的完整复现指南

Magic3D 两阶段文本到3D生成实战:从粗几何到细纹理的完整复现指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 7:56:14 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 10:36:31 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:35 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:36 阅读更多 →