前言¶
DeepSeek Harness (DSH) 生态通过插件机制扩展能力。在长期运行或跨会话处理多个任务时,coding agent 往往难以维持对项目状态的一致性记忆。dsh-project-portfolio 是一个非官方插件,它通过将项目信息封装在嵌入的技能和工具中,让 agent 在用户的配置目录下维护一份基于 Markdown 的项目清单与历史记录。
核心功能¶
该插件提供以下核心能力:
- 嵌入式技能:包含
project-portfolio技能,内置了通用、GitHub PR/Issue、求职和副业四种项目模板。该技能作为资源包随插件安装。 - 只读清单工具 (
portfolio_status):用于查看完整的watchlist以及每个项目文件的目录索引(包含标题、状态、目标、下一步操作、最后检查时间)。 - 历史记录工具 (
portfolio_log):用于向特定项目文件追加带日期的历史记录行(自动创建 History 章节)。该工具对文件路径进行 slug 校验,确保只能操作配置目录内的文件。 - 增量同步:基于 Watchlist 机制,实现增量更新。
安装与启用¶
通过官方插件命令安装,该插件会自动注册技能和工具。
dsh plugin add dsh-project-portfolio --profile web
安装后,插件会通过 dsh.bundle.patch 机制自动挂载,并将技能模板和工具注册到当前会话中。
典型用法¶
- 触发自动加载:在对话中询问项目状态,例如“where do my projects stand?”,agent 会自动加载相关技能。
- 查看项目清单:调用
portfolio_status工具,获取当前所有监控项目和文件的头信息。 - 追加历史记录:调用
portfolio_log工具,为指定项目添加一条带时间戳的记录。
注意事项¶
- 该插件依赖 DSH 的
tools服务才能正常工作。 - 数据完全存储在本地配置的
portfolioDir中,不包含任何网络请求或遥测数据。 - 文件路径经过校验,防止目录遍历攻击。
- 作为社区插件,不与 DeepSeek 官方存在关联。
总结¶
dsh-project-portfolio 解决了 coding agent 在多项目场景下的记忆断层问题。它将项目管理从对话中剥离,沉淀为用户可控的本地 Markdown 文件,通过工具接口供 agent 调用,适合需要长期维护项目进度或跨月追踪任务的场景。