DSH 採用「一切皆插件」的理念。在開發複雜智能體工作流時,主控智能體往往需要自主編排子智能體。hu568/dsh-plugin-cluster-preset 是一個 DSH “集羣模式” agent preset,它讓主控智能體自主把工作分派給一組具名專家,並並行扇出、回收驗證,同時引入了「智能體壽命論」階段提示器。
核心能力¶
該預設包含以下核心組件:
- 5 個具名專家工具:
explore(代碼庫檢索)、librarian(外部參考檢索)、oracle(只讀高智顧問)、metis(規劃前顧問)、momus(計劃評審員)。 - 2 個通用委派工具:
subagent(全新上下文)、subagent_fork(繼承本會話)。 - 默認主動使用 Agent Teams:通過修改策略,將上游「必須由用戶明確要求才建團隊」的行爲改爲「默認主動建」,除非是單文件小改、純問答或用戶明確說「自己做」。
- 智能體壽命論階段提示器:根據理論上下文佔用折算年齡,在 20 歲、30 歲、40 歲、60 歲四個壯年階段各提示一次,幫助智能體感知上下文壓力。
安裝與啓用¶
本倉庫是一個可分發的 DSH bundle,推薦使用官方插件管理器安裝:
plugin_manager action=install_bundle target="github:hu568/dsh-plugin-cluster-preset"
桌面端用戶可通過「設置 → 插件」或插件管理器 UI 添加該 spec。
注意:代碼改動後需完全重啓 DSH 才能生效(
dsh-hmr默認忽略node_modules,且 Node ESM 會緩存已 import 的模塊)。更新時必須 bumpversion,否則 DSH 會報ambiguous-install錯誤。
工作機制細節¶
1. 默認主動使用智能體團隊¶
DSH 的 Agent Teams 默認策略要求用戶明確說「開啓智能體團隊」才建立 teammate。本預設通過 cluster-preset/team-policy.js 將其改爲「默認主動」,但保留了上游其餘運行時約束(如共享工作目錄、寫作用域不重疊、任務板用法等)。
實現原理:在 DSH 中,預設 scope 是 agent scope 的父級,且段落合併遵循「越近越贏」原則。因此,在預設層通過 system-prompt/assemble 瀑布流來覆蓋 agent 層的策略,而不是使用同名段落覆蓋。這既覆蓋了策略,又隔離了其他預設的影響。
2. 智能體壽命論階段提示器¶
提示器將會話的理論上下文佔用當成年齡,刻度爲 1% 佔用 = 1 歲。
- 20 歲(壯年 1/4):輕量任務可以完成。提示將關鍵結論固化。
- 30 歲(壯年 2/4):大部分任務都能完成。提示重新讀細節,切小單元再委派。
- 40 歲(壯年 3/4):降智明顯。提示停止在同一思路加碼,關鍵結論做獨立複覈。
- 60 歲(壯年 4/4):只有少數複雜任務需要這麼長的上下文。提示儘快收尾,別開新戰線。
該提示器同時報告「理論壽命」(決定智力)與「真實壽命」(決定生命)。如果兩者錯位,例如真實壽命已盡而理論年齡尚輕,提示器會明確指出。
3. 葉子約束(防止無限委派)¶
每個專家都是葉子,不能再往下委派。這由兩道防線保證:
maxDepth: 1:子智能體運行時校驗深度。編排者深度爲 0,創建的子體深度爲 1;專家深度爲 1,若再委派則子體深度爲 2,被拒絕。toolFilter:通過deny移除了所有委派工具和寫工具。專家只保留read、grep等常規工具。
注意:通用委派行不能設
modelSelectionSettings: true。因爲subagent工具的註冊機制特殊(掛載時不在祖先層),若設該標誌,deny列表中的名字(如subagent)會在子體創建前報錯,且專家仍會持有該工具,導致「葉子」承諾失效。
注意事項¶
- 相對路徑依賴:插件使用相對路徑(如
./cluster-preset/lifecycle-reminder.js),安裝時必須確保這些文件存在於對應的子目錄中,否則會導入失敗。 - package.json 要求:相對路徑插件所在的目錄必須包含一個
package.json,且name與version字段均非空。否則 DSH 會向上回溯到 profile 的清單,而 profile 清單通常只有name沒有version,導致掛載失敗。 - 非法值處理:配置中的非法值會導致掛載失敗並報錯(fail-loud),不會靜默忽略。
總結¶
hu568/dsh-plugin-cluster-preset 提供了一套完整的主控智能體編排方案,通過具名專家、默認啓用 Agent Teams 和壽命論提示,幫助智能體更高效、可控地處理複雜任務。在部署時,需注意代碼修改後的重啓流程及相對路徑文件的完整性。