前言¶
DeepSeek Harness (DSH) 采用模块化插件架构。现有的工作流通常依赖文件夹和会话,但缺乏一个聚合这些内容的“项目”概念。dsh-project 插件通过将多个文件夹、多个会话以及共享记忆/指令整合到一个项目实体中,作为叠加层补齐了这一缺失的概念。
插件介绍¶
插件由 lanyun077 维护,采用 MIT 许可证。它作为一个叠加层,在不修改 DSH 内核的情况下引入了“项目”概念。
核心功能¶
- 项目树与收纳性:侧边栏出现「项目」入口,展示项目树(项目 → 文件夹 → 会话)。一个项目可挂载多个文件夹,每个文件夹自动注册为工作区,会话可在文件夹间拖入或移出。
- 会话管理:支持在项目的任意文件夹内一键新建会话,通过复用
workspaces.connectWorkspace实现。 - 记忆互通:项目级
PROJECT.md作为共享记忆,所有会话开始时整体注入。Agent 可使用project_memory_write工具追加记忆,或使用project_context工具读取概览。 - 项目指令:项目级
AGENTS.md会被注入到每个会话的 system-prompt 段中,支持热重载。
安装与启用¶
本地插件,需遵循 DSH 插件装载约定。
- 让
dsh-project可被 profile 解析(例如作为file:../dsh-project依赖,或通过 node_modules 软链)。 - 在 profile 的
cordis.patch.yml中添加配置:
- insert:
- id: project
name: 'dsh-project'
- 重启 DSH web (
dsh web)。
典型用法¶
- 在项目的任意文件夹里点击新建,即可创建并关联到该项目的会话。
- 通过
workspaces.connectWorkspace复用创建会话。 - 在
~/.dsh/projects/<id>/目录下管理project.json、AGENTS.md和PROJECT.md文件。 - 通过
project_memory_write工具追加项目记忆,或通过project_context工具读取概览。
适用场景与注意¶
- 显式归属:会话必须显式归属项目(在「项目」面板创建或加入),插件不会根据目录自动推断项目归属。
- 记忆机制:
PROJECT.md目前为整体注入(无向量检索),保持精简;结构化检索计划在 v2 实现。 - 版本限制:v1 不做项目级 MCP/技能/默认模型/跨会话子任务派发。
总结¶
dsh-project 提供了 DSH 生态中缺失的项目级抽象。通过树形结构管理资源,利用 PROJECT.md 和 AGENTS.md 统一上下文和指令,它有助于维护复杂的 Agent 工作流。完整的文档和源代码可在 GitHub 上找到。