dsh-generation:分叉智能體預設並在下一代運行任務

前言

DeepSeek Harness 將智能體開發分爲宿主平面(沙盒、模型路由、持久化)和智能體平面(工具、人設、提示詞)。一旦會話的預設被鎖定,就無法在不中斷日誌記錄的情況下熱切換工作智能體的工具集。dsh-generation 插件通過記錄血統,允許複製已知良好的預設,使用常規 fs/bash 工具編輯該副本,然後在其上啓動一個新的工作會話。

它是什麼

這是一個 DeepSeek Harness 插件,用於分叉智能體預設並在下一代運行任務。它由 goecho 維護,屬於工作流分類,許可證爲 MIT。

核心功能

插件提供以下核心能力:
1. 分叉智能體預設:複製現有的智能體預設(如 standard、minimal 或 ptc)。
2. 在下一代運行任務:在分叉後的預設上執行任務。
3. 記錄血統:通過 meta session 的日誌記錄工具調用和結果。
4. 創建新的工作會話:建立獨立的工作環境。
5. 工具註冊:在宿主配置文件中全局註冊工具。

安裝與啓用

通過命令行安裝插件到宿主配置文件:

dsh plugin --profile web add github:goecho/dsh-generation

安裝後,需要重啓 dsh --profile web 以使宿主配置文件重新加載。

典型用法

插件提供了兩個主要工具:generation_fork 和 generation_run。

generation_fork

該工具用於複製預設。它調用 agentPresets.copy(from, id) 並將目的寫入新預設的 preset.yml 描述中。

參數說明:
* from (必填):要複製的預設 ID。建議使用 standard、minimal 或 ptc。
* id (必填):新預設 ID,格式需符合 /^[a-z0-9][a-z0-9-]*$/,且不能已存在。
* purpose (必填):寫入新預設描述的一句話。

返回值:

{ "ok": true, "id": "...", "from": "...", "purpose": "...", "path": "...", "compositionPath": "..." }

generation_run

該工具用於在分叉的預設上執行任務。它會在批准後創建一個代理,掛載該預設,執行 followup(task),等待直到空閒或超時,然後清理。

參數說明:
* preset (必填):掛載到新工作會話的預設 ID。不能是 cordis。
* task (必填):傳遞給 Worker 的自包含後續任務。Worker 無法看到 meta 會話的歷史。

返回值:

{ "ok": true, "sessionId": "...", "presetId": "...", "stopReason": "...", "toolsUsed": [...], "lastAssistantText": "..." }

適用場景與注意事項

適用場景

適合需要基於現有可靠預設進行迭代開發、修改配置或嘗試新行爲的場景。通過鏈式調用,可以在元會話中不斷分叉、編輯並運行新會話。

限制與注意事項

  1. 非替代品:它不是 Creator 模式(cordis 預設)或 cordis_define/cordis_run 的替代品,也不用於重排當前會話或給子代理更換預設。
  2. 無依賴:插件不依賴 @deepseek-ai/dsh-tools 或 @deepseek-ai/dsh-llm。工具以原始定義註冊,避免模塊身份分裂。
  3. 全局註冊:工具在宿主配置文件中全局註冊,並會從非 Creator 會話中隱藏。
  4. 重啓要求:安裝後必須重啓 dsh --profile web。
  5. Worker 限制:Worker 預設不能是 cordis,且不能包含 @deepseek-ai/dsh-tool-cordis 插件行。
  6. 安全性:將一個可以分叉和運行的 Creator 會話視爲 Shell 訪問。每個 fork 和 run 都需要人工批准。

總結

dsh-generation 旨在通過“Make,而非 Compiler”的哲學,爲智能體開發提供一種基於副本迭代的構建方式,而非對正在運行的會話進行修補。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜