前言¶
在 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、运行依赖 llm、shell、tools 服务。
4、默认经验库路径是 ~/.dsh/planner-lessons。
5、模型调用使用 agentDefaultModel,推理模型需要足够的 maxTokens。
6、经验文件是纯 Markdown,可以直接编辑,但状态流转仍应遵循 draft、verified、obsolete 等生命周期约定。
结尾¶
dsh-task-planner 的价值在于把任务规划从一次性生成变成可沉淀、可编辑、可复用的经验流程:先召回相似经验,再让模型判断是否适用,最后生成分步计划并更新经验状态。
GitHub 仓库:
https://github.com/ztl34245881-commits/dsh-task-planner
社区目录可按包名 dsh-task-planner 查找对应页面。DSH 社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系,也不是官方应用商店。