DDDPG/dsh-plugins--plugins-dsh-plan-keeper ↗★ 0
dsh-plan-keeper
DSH web plugin: plan persistence & workspace memory — captures every exit_plan_mode plan into .dsh-outputs/plans/<sessionId>/ (plan.md + revisions + meta.json), keeps a workspace-gradual memory under .dsh-outputs/memory/ (user/feedback/project/reference, MEMORY.md index), injects the memory into every model turn (6KB budget, toggleable), exposes a memory_write model tool, and renders a deliverables view (计划/记忆 rings: view / edit / delete / add / send-to-composer).
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:DDDPG/dsh-plugins#543d4b046af0c67602be6d16cba7f6ed94239247&path:plugins/dsh-plan-keeper说明文档
阅读完整 README ↗dsh-plan-keeper
A DeepSeek Harness plugin: plan persistence + workspace memory, presented as a Deliverables (产物) conversation view.
Part of the dsh-plugins collection.
Layout
/.dsh-outputs/ # per-workspace outputs root (session.header.cwd)
├── plans//
│ ├── plan.md # latest plan
│ ├── revisions/NN.md # immutable snapshots
│ └── meta.json
└── memory/
├── MEMORY.md # rebuild injection index
├── meta.json # { enabled, budgetBytes, entryCount }
├── user/-.md
├── feedback/-.md
├── project/-.md
└── reference/-.md
The output root follows the session workspace (session.header.cwd), not
the deployment root.
Install
./scripts/install.sh web plugins/dsh-plan-keeper
or, as a bundle-layer package:
dsh plugin --profile web add ./plugins/dsh-plan-keeper
Then refresh the browser page and open the Deliverables (产物) tab in any session header (after Trace (轨迹)).
Note for sessions that ran the dynamic (in-session) version: the dynamic plugin registers the same
deliverablesview id with a lower shadowing priority, so it wins while it is running.cordis_stop(or undefine) the dynamicplank-1plugin before installing this package to use the packaged version.
Architecture
- Host half (
lib/index.js): plan capture & sync (tools/result,agent/turn-stopping), memory storage & index,systemPrompt.sectioninjection, thememory_writemodel tool (tools.register), and a local HTTP RPC routePOST /api/dsh-plan-keeper(webServer.register,{ method, args }JSON). - Client half (
lib/client.js): the Deliverables (产物) view — Memory (记忆) ring and Plan (计划) ring — via same-origin RPC.