dsh-task-planner:DeepSeek Harness 的經驗式任務規劃插件

前言

在 DSH(DeepSeek Harness)的「一切皆插件」思路下,智能體執行復雜任務時常見兩個問題:一是每次任務都從零開始規劃,缺少可複用的歷史方案;二是如果直接把規則寫死,任務變化後容易失配。

dsh-task-planner 針對這個問題,把歷史方案作爲經驗庫,讓模型在任務開始前先回憶相似方案,再評估當前任務是否適合複用,最後生成分步計劃。下面介紹它的定位、核心能力、安裝方式和典型用法。

這是什麼

dsh-task-planner 是一個面向 DeepSeek Harness 的任務規劃插件,定位是「帶經驗肌肉記憶的任務規劃」。

已覈實的包信息如下:

  • 包名:dsh-task-planner
  • 版本:1.0.0
  • 類型:module
  • 主入口:index.mjs
  • 許可證:MIT
  • 插件 patch 文件:./cordis.patch.yml
  • GitHub 倉庫:https://github.com/ztl34245881-commits/dsh-task-planner

它主要解決四類問題:

1、複雜任務開始前先生成計劃,而不是直接執行。
2、把已完成任務的經驗沉澱爲可編輯的 Markdown 文件。
3、在規劃時把步驟與可選能力目錄進行匹配。
4、對文本交付步驟增加「humanize-then-review」要求。

核心功能

經驗庫

插件提供 task_memory save/recall/list 能力,用於保存、召回和列出經驗。

經驗以純 Markdown 形式保存,包含簽名關鍵詞。默認經驗庫路徑是:

~/.dsh/planner-lessons

這類經驗文件適合人工編輯、檢索和遷移。

條件反射式規劃

plan_task 的主流程是:

1、根據當前任務召回過去相似方案。
2、由 LLM 評估這些方案是否適合當前任務。
3、如果適合,則複用並改進;如果不適合,則說明原因並重新規劃。
4、輸出分解步驟,並結合能力匹配、風險和下一步動作。

這裏的判斷由模型完成,插件主要提供歷史經驗上下文,以及可選的能力目錄上下文。

LLM 驅動,而不是規則驅動

dsh-task-planner 不把固定組合硬編碼進任務。模型根據當前任務決定使用哪些歷史經驗、如何拆解步驟、如何匹配能力。

插件提供的上下文主要包括:

  • 歷史經驗庫內容
  • 可選的 Markdown 能力目錄

文本交付標準

插件要求文本輸出步驟在交付前經過「humanize-then-review」流程。

這裏的重點是交付前增加一層人工化處理與複覈,而不是直接輸出原始文本結果。

自動沉澱經驗

plan_task 會自動寫出一條經驗草稿,狀態爲:

draft

當任務結束、流程關閉時,agent 會更新經驗結果,並把狀態標記爲:

verified

這樣可以把一次任務的過程逐步沉澱爲可複用的經驗。

零密鑰、零絕對路徑約束

插件強調可配置性。默認經驗庫路徑爲:

~/.dsh/planner-lessons

如果希望使用其他經驗目錄或能力文件,可以通過配置項修改。

安裝與啓用

安裝前先確認當前 dsh 環境可用。README 給出的 GitHub 安裝命令使用佔位符 <your-user>,不是一定代表具體 owner 的命令:

dsh plugin --profile web add github:<your-user>/dsh-task-planner

如果本地已經有該倉庫,也可以添加爲本地 bundle:

dsh plugin --profile web add /path/to/dsh-task-planner

插件的 package.json 聲明瞭 DSH bundle patch 文件:

{
  "dsh": {
    "bundle": {
      "patch": "./cordis.patch.yml"
    }
  }
}

因此啓用時,插件會讀取倉庫中的 cordis.patch.yml 作爲 patch 入口。

該插件要求以下服務可用:

llm
shell
tools

README 說明,在標準 harness 中這些服務都已存在。

模型調用使用 harness 默認模型:

agentDefaultModel

如果使用推理模型,需要給 maxTokens 留出足夠空間。README 中提到內部使用 8k

典型用法

開始任務前規劃

對複雜任務,先調用 plan_task

plan_task { task, goal?, constraints? }

這一步用於在執行前生成計劃,而不是直接進入執行。

保存經驗

手動保存一條經驗可以使用:

task_memory save { task, plan, outcome }

plan_task 也會自動調用該能力寫入草稿經驗。

召回經驗

按任務描述做條件反射式召回:

task_memory recall { task }

查看經驗列表

查看全部經驗:

task_memory list

經驗生命週期

經驗狀態按任務閉環推進:

1、plan_task 自動寫入一條草稿經驗:

status: draft

2、任務結束、流程關閉後,agent 更新結果並標記爲:

status: verified

3、如果一條經驗被成功複用 3 次,可以提升爲正式技能。
4、如果一條經驗被拒絕 2 次,應標記爲 obsolete。

可選配置

在 profile 的 cordis.patch.yml 中,可以配置經驗目錄和能力文件:

- id: dsh-task-planner
  name: dsh-task-planner
  config:
    lessonsDir: /path/to/your/lessons
    capabilityFile: /path/to/capability-map.md

其中:

  • lessonsDir:指向經驗目錄,默認是 ~/.dsh/planner-lessons
  • capabilityFile:指向一份 Markdown 能力目錄,作爲上下文提供給 LLM。

capabilityFile 指向技能、插件或工具清單後,規劃步驟可以更具體地對齊現有能力。

適用場景與注意

適合以下情況:

  • 使用 DSH 搭建智能體工作流,任務步驟較多。
  • 希望重複任務逐步沉澱爲 Markdown 經驗。
  • 希望規劃時結合能力目錄,而不是隻靠提示詞臨時生成。
  • 對文本交付有質量要求,希望加入「humanize-then-review」環節。

使用前需要注意:

1、插件以當前 dsh 進程權限運行。安裝前應檢查源碼、依賴、patch 文件和許可證。
2、許可證爲 MIT
3、運行依賴 llmshelltools 服務。
4、默認經驗庫路徑是 ~/.dsh/planner-lessons
5、模型調用使用 agentDefaultModel,推理模型需要足夠的 maxTokens
6、經驗文件是純 Markdown,可以直接編輯,但狀態流轉仍應遵循 draftverifiedobsolete 等生命週期約定。

結尾

dsh-task-planner 的價值在於把任務規劃從一次性生成變成可沉澱、可編輯、可複用的經驗流程:先召回相似經驗,再讓模型判斷是否適用,最後生成分步計劃並更新經驗狀態。

GitHub 倉庫:

https://github.com/ztl34245881-commits/dsh-task-planner

社區目錄可按包名 dsh-task-planner 查找對應頁面。DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,也不是官方應用商店。

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

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

小夜