DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

warrenop /

warrenop/open-preset-harness

Topic repository only

DSH Memory plugin (dsh-tool-project-memory): shared project organizational memory across presets — recall, remember, memory_status

★ 3 Stars0 Forks1 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@cd661d3d

open-preset-harness

Project memory for multi-role AI agents — one knowledge base, every preset reads.

English | 中文

License: MIT DSH Plugin Wiki

DSH Profile Bundle: dsh-tool-project-memory · Category: Memory · Install · DSH1024 checklist

Agents forget between sessions. Teams don't.
open-preset-harness adds a project-scoped organizational memory layer on top of DeepSeek Harness: any role (preset) can contribute experience; any role can recall it when needed.


Why this exists

DeepSeek Harness separates preset (who the agent is — tools, persona, prompts) from session log (what happened in one conversation). That split is right for engineering — but team knowledge lives at the project level, not inside a single preset or session.

Without shared memory:

  • A security review preset rediscovers the same auth pitfalls every sprint
  • A new contributor preset repeats questions answered three months ago
  • Product decisions vanish when the PM's session ends
  • Token spend grows because every role rebuilds context from scratch

open-preset-harness makes project experience compound over time — like a team wiki that agents actually use, wired into the harness session log.


What it is (and is not)

Is Open-source project organizational memory for Harness presets
Is Domain-organized, recall-on-demand, auditable contributions
Is not A replacement for DeepSeek Harness (we extend it)
Is not Per-preset silos or a generic vector DB demo
Is not Claiming to invent "AI memory" — we integrate it correctly for multi-role teams

Relationship to DeepSeek Harness

DeepSeek Harness (upstream, MIT)
        │
        ├── preset  = role shell (tools + persona)
        ├── session = episodic log (one conversation)
        │
        └── open-preset-harness (this project)
                └── project memory = shared team experience (cross-preset, cross-session)
  • Upstream: DeepSeek Harness — plugin-based agent harness on Cordis
  • Our approach: Prefer plugins + conventions over a hard fork; track upstream releases
  • License: MIT — we preserve upstream copyright in NOTICE
  • Naming: This is an independent community project, not an official DeepSeek product

We upstream-friendly fixes when possible; project-memory features live here until (if ever) they graduate upstream.

See docs/architecture.md and docs/phase-0-memory-api.md.


Core concepts

┌─────────────────────────────────────────────────────────┐
│              Project Memory (shared)                       │
│   index · domains · decisions · distilled learnings      │
└────────────────────────▲────────────────────────────────┘
                         │ write (distill) / read (recall)
     ┌───────────────────┼───────────────────┐
     │                   │                   │
  Preset A            Preset B            Preset C
  (any role)          (any role)          (any role)
     │                   │                   │
  Session 1           Session 2           Session N
  (episodic log)      (episodic log)      (episodic log)
  1. Preset — role/capability shell (unchanged Harness semantics)
  2. Session log — full history of one conversation (unchanged)
  3. Project memory — stable, distilled, searchable facts the whole team reuses

Design rules

  • One memory pool per project — all presets read (governance controls write)
  • Organize by domain/topic, not by preset id (e.g. security, api, onboarding)
  • Index + recall on demand — don't dump the whole library every turn
  • Model-visible ⟺ logged — Harness invariant; memory enters via inject/tools/session events

Default layout:

<projectRoot>/.dsh/memory/
├── index.md
├── domains/
│   ├── engineering.md
│   ├── product.md
│   └── …
└── decisions/
    └── YYYY-MM-slug.md

Scenarios

Scenario Who writes Who reads Value
Cross-functional delivery Any function Any other preset Decisions don't die in someone else's session
Engineering ↔ QA Dev preset after API change QA preset before test plan Fewer alignment loops
Product ↔ Engineering PM preset after scope call Eng preset during implementation "Why we chose B" stays attached
Security / compliance Review preset after audit All presets Constraints propagate
Onboarding Senior presets over time New hire's preset day one Context without senior interrupt
Open-source maintainers Triage preset Release preset Known issues and release norms
Agency / client work Account preset Delivery preset Client preferences travel with the repo
Research → writing Literature preset Drafting preset Findings become citable facts
SRE / incidents Postmortem preset Debug preset Incident learnings reduce repeats
Design systems Design preset Frontend preset Tokens and exceptions stay aligned
Localization Translator preset Dev preset Terminology stays consistent
Data / ML pipelines EDA preset Modeling preset Data quirks persist

More in docs/scenarios.md.


Status

v1.0.0 — Full roadmap shipped (Phase 0–3, Distill 1–3, LLM assist); dual-preset demo deferred (#3).

Milestone Status
Memory API spec ✅ phase-0-memory-api.md
.dsh/memory/ on-disk convention ✅
dsh-tool-project-memory bundle ✅ packages/tool-project-memory
Supersede governance (Phase 1) ✅ phase-1-supersede.md · #4
Session distill hook (Phase 1) ✅ phase-1-distill.md · #5 #6
Recall ranking (Phase 2) ✅ phase-2-recall.md · #7 #9
Write governance (Phase 3) ✅ phase-3-governance.md · #8 #10
Distill + LLM assist ✅ phase-1-distill.md · #11
Config reference ✅ config-reference.md
Dual-preset demo 📝 deferred · #3 · walkthrough

Roadmap

Capability-oriented, demand-driven from Issues and scenario feedback — no fixed dates.

Shipped (v1.0.0)

  • Memory LLM assist: distillAutoLlm, vectorEmbedModel: llm-keywords-v1 via Harness ctx.llm
  • Configuration reference · SRE scenario playbook

Shipped (v0.9.0)

  • Auto distill (Tier 3): distillAuto promotes heuristic candidates to remember under Phase 3 governance

Shipped (v0.8.0)

  • Write approval gate (Phase 3b): writeApprovalDomains triggers Harness approval before remember

Shipped (v0.7.0)

  • Vector sidecar (Phase 2b): vectorSidecar + recall ranking: 'vector' (local-fhash-v1, no network)

Shipped (v0.6.0)

  • Write ACL (Phase 3a): writeAllowDomains, writeAllowPresets, writeDenyPresets on remember

Shipped (v0.5.0)

  • Token-ranked recall (Phase 2a): default IDF multi-term scoring; ranking: 'legacy' restores Phase 0 substring mode

Shipped (v0.4.0)

  • Assisted distill (Tier 2): opt-in suggest_memory_candidates tool — heuristic session scan, model still calls remember

Shipped (v0.3.1)

  • Distill compaction reminder (Tier 1b): opt-in inject after successful compaction/end, with optional summary excerpt

Shipped (v0.3.0)

  • Distill reminder (Tier 1a): opt-in agent/turn-stopping inject to call remember — default off, no auto-write

Shipped (v0.2.0)

  • Supersede governance: remember(supersedes) back-patches old entries; recall/index show active entries only
  • expires_at / recall expired warnings
  • Harness smoke + CI (scripts/smoke.sh)

Shipped (v0.1.0)

  • Profile Bundle install via dsh plugin add
  • Tools: recall, remember, memory_status
  • Blank-session index.md inject (bounded)
  • Domain-organized memory under .dsh/memory/

Planned

  • Dual-preset demo (#3) — walkthrough exists, recording deferred

See docs/scenarios.md and Scenario Issues to influence priorities.


Quick start

DSH Memory plugin: packages/tool-project-memory · npm run check passing

Install (Profile Bundle — recommended)

dsh plugin --profile web add "github:warrenop/open-preset-harness#main&path:packages/tool-project-memory"
dsh --profile web --dump-config | grep dsh-tool-project-memory

Headless / CI:

dsh plugin --profile headless add "github:warrenop/open-preset-harness#main&path:packages/tool-project-memory"

From a local clone:

dsh plugin --profile web add ./packages/tool-project-memory

Develop locally

  1. Harness integration — link plugin into local Harness
  2. Dual-preset demo — standard writes, code reads
  3. Open a Scenario Issue — tag en-scenario or cn-scenario
chmod +x scripts/link-harness.sh
./scripts/link-harness.sh /path/to/deepseek-harness-master

DSH1024 marketplace

Field Value
Category Memory
Package dsh-tool-project-memory
Install dsh plugin --profile web add "github:warrenop/open-preset-harness#main&path:packages/tool-project-memory"
Listing DSH1024 (discovery via GitHub topic dsh-plugin)

Contributing

See CONTRIBUTING.md.

High-impact contributions right now:

  1. Add a scenario to docs/scenarios.md
  2. Review docs/phase-0-memory-api.md
  3. Chinese + English doc fixes

Community

  • Issues — bugs, ideas, scenario requests
  • Discussions — enable when repo is public
  • Tag Issues with [cn-scenario] or [en-scenario] to help us track market signals

License

MIT — see LICENSE and NOTICE.
DeepSeek Harness is © DeepSeek; modifications © contributors.

—/ 5

No ratings yet

Manifest verification required

Commit cd661d3d0bf3

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout