Skip to main content

目標

目標是附加至目前 OpenClaw 工作階段的一個持久目標。 它為代理程式與操作者提供一個共同的長期工作標的, 而不會將該標的轉變為背景任務、提醒、排程工作或 常設指令。 目標屬於工作階段狀態:它會隨工作階段金鑰移動、在程序 重新啟動後仍然存在,並顯示於 /goal、提供給模型的目標工具,以及終端介面 頁尾中。 分離命令完成後會返回原始的使用者介面討論串,因此 即使命令執行使用了獨立的沙箱原則工作階段,下一回合仍會看到 相同的目標。

快速開始

start 是選用的:/goal get CI green for PR 87469 也會建立目標, 因為 /goal 後方任何不是已知動作詞的文字,都會被視為 新的目標。

目標的用途

當工作階段具有應在多個回合中持續可見的具體成果時, 請使用目標:
  • PR 收尾:修正、驗證、自動審查、推送,以及開啟或更新 PR。
  • 偵錯作業:重現錯誤、識別負責的介面、修補,並 證明修正有效。
  • 文件作業:閱讀相關文件、撰寫新頁面、建立交叉連結,並 驗證文件建置。
  • 維護任務:檢查目前狀態、進行範圍明確的變更、執行 適當的檢查,並回報變更內容。
目標不是任務佇列。當工作應分離執行、 依排程重複、展開為受管理的子工作,或作為原則持續存在時,請使用 Task Flow任務排程工作常設指令

命令參考

不帶引數的 /goal 會顯示目前的目標摘要:
一個工作階段一次只能存在一個目標。在目前目標清除之前, 啟動第二個目標會失敗,並顯示 Goal error: goal already exists /goal start 不接受權杖預算旗標;預算只能透過 提供給模型的 create_goal 工具設定。

狀態

  • active:工作階段正在追求目標。
  • paused:操作者已暫停目標;/goal resume 會使其再次進入 進行中狀態。
  • blocked:代理程式或操作者回報了實際的阻礙;當有新的資訊或狀態可用時,/goal resume 會使其再次進入進行中狀態。
  • budget_limited:已達到設定的權杖預算;/goal resume 會使用新的預算期間,從相同目標內容重新開始執行。
  • usage_limited:保留供未來的用量限制停止狀態使用;/goal resume 會以相同方式重新開始執行。
  • complete:目標已達成。已完成的目標是終止狀態;請先使用 /goal clear,再開始另一個目標。
/new/reset 會清除目前工作階段的目標,因為它們會刻意 以全新的工作階段情境開始。

權杖預算

目標可以有選用的正數權杖預算,透過 create_goal 工具的 token_budget 參數設定。預算從 建立目標時工作階段的最新權杖計數開始計量。如果目標開始時,工作階段只有 過時或未知的權杖快照,OpenClaw 會等待 下一個最新快照,並將其作為基準,因此目標存在前使用的權杖 不會計入其中。 當用量達到預算時,目標會移至 budget_limited。這不會 刪除目標或清除目標內容;它會告知操作者與 代理程式,在恢復或清除目標前,系統不再主動追求該目標。 恢復後會從目前最新的權杖 計數開始新的預算期間。 權杖預算是工作階段目標的防護機制,而非計費上限。供應商 配額、成本報告與情境視窗行為仍會使用一般的 OpenClaw 用量與模型控制。

模型工具

OpenClaw 向代理程式執行框架提供三個目標工具: 模型無法在未告知的情況下暫停、恢復、清除或取代目標。這些操作仍是 操作者/工作階段透過 /goal 與重設命令進行的控制,因此代理程式 可以回報目標已達成或確實受阻,而不會悄悄變更 標的。 只有在目標內容確實達成時,update_goal 才應將目標標記為 complete。 只有在相同的阻礙情況連續至少三個目標回合重複出現後,才應將目標標記為 blocked, 而不是因為一般困難或尚未完善。

每個回合中的目標情境

每個具有進行中目標的使用者/聊天回合都會包含這一行使用者角色情境:
OpenClaw 會截短過長的目標內容,以維持該行簡潔。已暫停、 受阻、達到預算限制、達到用量限制及已完成的目標不會被注入, 因此操作者的停止操作會持續生效,直到目標恢復為止。

控制介面

網頁控制介面會在聊天輸入框上方,將目標顯示為精簡的膠囊: 包含狀態圖示、狀態標籤(例如 Pursuing goal)、截短的 目標內容,以及即時經過時間計時器。 膠囊提供行內控制項:
  • 鉛筆會以 /goal edit <objective> 預先填入輸入框,以便 改寫並提交目標內容。
  • 暫停/恢復會根據 目前狀態在 /goal pause/goal resume 之間切換。
  • 垃圾桶會傳送 /goal clear
  • 箭頭符號會展開膠囊,以顯示完整目標內容、最新狀態 備註、權杖用量與經過時間。
當輸入框無法傳送時(例如 閘道連線中斷),動作按鈕會隱藏;展開箭頭仍可使用。

終端介面

終端介面頁尾會在權杖/模式指示器之前,將進行中工作階段的目標顯示在代理程式、 工作階段與模型欄位旁。 頁尾範例:
  • Pursuing goal (12k/50k) 表示具有權杖預算的進行中目標。
  • Goal paused (/goal resume) 表示已暫停的目標。
  • Goal blocked (/goal resume) 表示受阻的目標。
  • Goal hit usage limits (/goal resume) 表示達到用量限制的目標。
  • Goal unmet (50k/50k) 表示達到預算限制的目標。
  • Goal achieved (42k) 表示已完成的目標。
頁尾刻意保持精簡。請使用 /goal 查看完整目標內容、 備註、權杖預算與可用命令。

頻道行為

/goal 可用於支援命令的 OpenClaw 工作階段,包括終端介面與 允許文字命令的聊天介面。目標狀態附加至 工作階段金鑰,而不是傳輸方式,因此共享工作階段金鑰的兩個介面會看到 相同的目標。 目標狀態不是傳遞指令:它不會強制回覆經由某個 頻道傳送、變更佇列行為、核准工具或排程工作。

疑難排解

如果權杖用量顯示 0 或看似過時,進行中的工作階段可能尚未有 最新的權杖快照。當 OpenClaw 記錄工作階段用量 及從逐字稿衍生的總計時,用量便會更新。

相關內容