前言¶
做長對話的開發和寫作時,常遇到一個具體問題:對話已經推進幾十輪,上下文、已確認的結論、工具跑出來的結果都混在一起。這時想換條路重試,要麼硬着頭皮在原對話裏繼續,新嘗試會污染原線;要麼重開對話,把前面的結論和工具結果重新交代一遍,成本高且容易丟信息。會話分叉(打分支)要解決的就是這一點:把當前工作現場整體複製成獨立分支,原分支原樣保留,新分支從指定節點重新走。
這是什麼¶
會話分叉(打分支)是一個通用 Agent Skill,座標 @user_5b43da63/session-fork,版本 2.4.21,來源 community,發佈者 user_5b43da63,分類 ai-agent。它解決的問題是:在一個長會話裏,如何從任意節點複製工作現場、換方向重走,而不用重開對話重新交代上下文。
核心功能¶
1、工作現場整體複製。分叉的對象不是聊天記錄,而是完整的工作現場,包括上下文、已確認結論、已做步驟、工具結果。複製後的分支持有與原分支相同的現場,可以獨立繼續。
2、從任意節點換方向重走。用戶可以選擇以某條回覆爲界,把之前的部分連同現場複製成新分支,從該節點換方向重做。
3、保住原線不被帶偏。分支獨立存在,新方向的嘗試不會寫回原分支,原線保持乾淨,隨時可以回看或繼續。
4、覆蓋對話、任務、方案、代碼、寫作、調研。分叉針對的是工作現場,不限定任務類型。
5、底層爲 fork-core 通用引擎,跨產品可用。分叉能力由通用引擎提供,不綁定單一宿主產品。
6、觸發方式。當用戶說“打分支”“會話分叉”“把這個任務複製成新分支”“以某條回覆爲界新建對話”“並行試幾條路”“把對話截斷複製”,或提到 fork this session / branch this task 時,可觸發該 Skill。
安裝與啓用¶
現有資料只給出座標與標籤,沒有提供具體安裝命令或配置項,這裏如實說明,不補充未覈實的內容。
座標:
@user_5b43da63/session-fork
標籤:
requires_api_key=false
該標籤表示使用此 Skill 不需要 API Key。
安裝時按所用宿主的通用 Skill 安裝流程添加該座標即可。資料中沒有針對 Cursor、Codex CLI、Claude Code 的分別說明,因此這裏不逐一展開,具體以宿主環境爲準。
典型用法¶
以下示例來自官方簡介列出的觸發場景,用於說明什麼時候會用到分叉,不涉及具體命令。
1、需求中途變化。對話已確認接口字段和返回結構,產品又提出要加一組流式返回。與其在原對話裏繼續改,不如以確認接口結構之前的那條回覆爲界新建分支,在新分支裏重做接口設計,原分支保留已確認的結論。
2、多方案並行試路。同一需求有兩個技術選型方向,比如流式與輪詢。可以用分叉複製兩條獨立分支,分別試路,比較結果後保留更優的一條。
3、代碼改不動時。同一文件改了兩版都不滿意,原對話已經混入大量試錯。以當前回覆爲界新建對話並分叉現場,在新分支裏重置思路,原分支保留之前試過的路徑。
適用場景與注意¶
適合誰:對話長度較長、任務類型偏多方案試錯的開發與調研場景,尤其是代碼、寫作、調研這類對上下文連續性敏感的任務。
限制與坑:
1、分叉複製的是工作現場,不是聊天記錄。如果只需要帶走歷史消息,不需要分叉。
2、分支獨立存在,修改不會同步回原分支,需要自己管理哪些分支保留、哪些丟棄。
3、並行分支的上下文各自獨立。如果兩條分支要共享同一份結論,需要在分支內重新交代,不會自動同步。
4、是否需要分叉取決於任務複雜度。短問答或一次性執行,直接繼續或開新對話即可。
5、資料未說明分叉分支的上下文長度上限,長分支能否完整保留現場,以宿主環境實際表現爲準。
結語¶
會話分叉的價值在於把“換方向”和“保留原線”解耦:新方向有完整現場可用,原線不被帶偏。對長對話、多方案試錯場景,它比在原對話裏硬轉或重開對話更省事。官方地址:https://api.skillhub.cn/user_5b43da63/session-fork ,SkillHub 頁面:https://www.skillhub.cn/skills/user_5b43da63/session-fork