loop 是做什麼的?
掌握進程,而非子方法。將當前的產品任務沿著三個工件合約進行路由:
deep-grill -> 已確認的產品簡報
deep-design -> 已確認的建構合約
deep-build -> 驗證結果
保持循環啟用
只有在使用者明確呼叫 loop 或清楚要求啟動此工作流程時,才會開始一個全新的循環。之後,將每一個普通的回覆視為同一循環的延續,直到達成目標、使用者停止、使用者明確切換任務,或後續工作需要原始請求以外的權限為止。使用者無需再次提及 loop 或任何子技能名稱。
當當前子技能的輸出工件尚未完成時,繼續執行該子技能。當其工件已確認時,根據工件就緒狀態自動選擇下一個子技能,無需要求使用者提名技能或選擇路徑。簡要說明轉換過程,並在後續動作已獲得授權時,於同一回覆中繼續進行。工件就緒狀態決定子技能的選擇;它不會擴展使用者的權限或請求的終點。
處理 ? 而不中斷流程
在循環啟用期間,當使用者的完整輸入經修剪後恰好是 ? 時,凍結當前動作於其精確邊界,同時保持循環啟用。重新解釋:
- 最後一個確認點;
- 當前的子技能與工件狀態;
- 發生了什麼變化;
- 為何重要;以及
- 即將執行的下一個動作。
使用使用者最新實質性訊息中的語言,並保留已建立的專案術語。在解釋期間,請勿委派、推進工件,或提出子技能待處理的領域決策。
緊接在解釋之後,呈現該活躍主機實際支援的最佳延續控制方式:
- 在 OMO 中,若可用,使用其原生的倒數計時或自動恢復介面,讓待執行的下一個動作能在使用者不干預的情況下自動恢復。
- 否則,當可呼叫原生的問題介面時,詢問是否要「繼續」(建議)、「調整下一個動作」或「停止」;將每個標籤與說明在地化。
- 當無法呼叫任何原生的延續介面時,以散文形式提出一個簡潔的地化延續問題。建議恢復待執行的下一個動作,同時接受自由格式的調整或停止。
在延續控制開啟期間,保持當前的子技能、工件、邊界與權限處於啟用狀態。「繼續」會立即恢復待執行的下一個動作。「調整下一個動作」僅變更該動作,除非使用者的指令使某個工件失效。「停止」則結束循環。永遠不需要再次呼叫技能來恢復。
根據工件就緒狀態進行路由
- 當不存在已確認的產品簡報、產品核心意圖尚未解決,或請求的終點是獨立的對抗性審計時,使用
deep-grill。探索模式會產出產品簡報;審計模式可能在審計即為完整請求的情況下完成而不推進。 - 當產品簡報已確認但不存在已確認的建構合約時,使用
deep-design。 - 當建構合約已確認且實作已獲授權時,使用
deep-build。 - 當其工件尚未完成時,即使經過模式切換、澄清或一般使用者回答,仍繼續執行同一子技能。
- 將失效的工件返回給產出它的子技能。核心產品的矛盾返回
deep-grill;實質的行為、介面、任務或驗證缺口則返回deep-design。 - 尊重對子技能的直接呼叫。直接使用不需要
loop,但除非使用者明確啟動,否則不會啟用持續循環。
活躍的子技能會根據需要選擇任何領域、架構、研究、介面、視覺設計、測試、部署或其他專家。使用者無需管理內部路由。
維護單一狀態來源
透過對話與工件參照,攜帶目標、當前子技能、已確認的工件、限制條件、權限與證據。對於持續性的工作,當可用時,使用活躍客戶端原生的目標或計畫機制。請勿建立重複的工作流程狀態、自訂關卡、掛鉤或背景程序。
切勿在 loop 內部模仿子技能的合約。委派工作,僅在其就緒規則達成時接受其工件,並根據證據重新路由。當請求的終點完成、使用者停止或切換任務、進展需要新權限,或剩餘工作報酬遞減時,停止執行。