lanyun077/dsh-project
Organize folders and sessions into projects with shared PROJECT.md memory and AGENTS.md instructions injected into every session, plus a project tree sidebar.
Listed
0
Memory
Bundle verified
Preview
What it does
Organize folders and sessions into projects with shared PROJECT.md memory and AGENTS.md instructions injected into every session, plus a project tree sidebar.
Best for
- Projects spanning multiple folders and sessions that need shared instructions and memory.
- Users who want a project tree for organizing workspaces and moving sessions between projects.
- Teams that can keep concise project context in PROJECT.md and shared rules in AGENTS.md.
Not ideal for
- Workflows that require project membership to be inferred automatically from directory paths.
- Projects with large memory files, because PROJECT.md is injected in full rather than retrieved selectively.
- Users needing project-level MCP, skills, default models, or cross-session task dispatch, which v1 does not provide.
README
dsh-project
DeepSeek Harness 的「项目」插件:把多个文件夹 + 多个会话 + 一份共享记忆/指令收敛到一个项目实体,作为叠加层补齐 DSH 缺失的”项目”概念(不改内核)。
能力
- 收纳性:侧边栏「项目」入口 → 项目树(项目 → 文件夹 → 会话)。一个项目可挂多个文件夹(每个自动注册为工作区),会话可拖入/移出。
-
项目内新建会话:在项目的任意文件夹里一键新建会话(复用
workspaces.connectWorkspace)。 -
记忆互通:项目级
PROJECT.md共享记忆——本项目所有会话开始时整体注入;agent 用project_memory_write工具追加、project_context读概览。 -
项目指令:项目级
AGENTS.md注入本项目每个会话的 system-prompt 段(热重载)。 -
工具:
project_memory_write、project_context。
架构
| 半 | 文件 | 说明 |
|---|---|---|
| host | index.js |
cordis 插件:/api/dsh-project/* 路由、工具注册、project:context system-prompt 段 + agent/pre-step 记忆注入、公告 |
| host | store.js |
ProjectStore:~/.dsh/projects/<id>/(project.json + AGENTS.md + PROJECT.md),原子写 |
| browser | client.js |
ModuleLoader bundle:侧边栏入口(DOM 注入)+ center-column 项目面板(独立 React 根)+ fetch API |
数据模型
~/.dsh/projects/<id>/
├── project.json # { id, name, description, folders:[{path,workspaceId}], sessionIds, archived, ... }
├── AGENTS.md # 项目指令(注入系统提示)
└── PROJECT.md # 项目共享记忆(会话开始整体注入)
注入
-
project:contextsystem-prompt 段(text为函数,按context.scope(agent)动态渲染当前项目):项目名/简介/文件夹/AGENTS.md。 -
agent/pre-step:把PROJECT.md快照 prepend 到会话第一条用户消息。
安装
本地插件,参考 DSH 插件装载约定(cordis.patch.yml + profile node_modules 解析):
- 让
dsh-project可被 profile 解析(如file:../dsh-project依赖或 node_modules 软链)。 - 在 profile 的
cordis.patch.yml加: ```yaml- insert:
- id: project name: ‘dsh-project’ ```
- insert:
- 重启 DSH web(
dsh web)。
限制 / 已知取舍
- 会话显式归属项目(在「项目」面板创建/加入),不按目录自动推断。
-
PROJECT.md为整体注入(无向量检索),保持精简;结构化检索留待 v2。 - v1 不做项目级 MCP/技能/默认模型/跨会话子任务派发。
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:lanyun077/dsh-project in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.