warrenop/open-preset-harness

插件Plugin ⭐ 3 NOASSERTION 记忆Memory

DeepSeek Harness: Everything is a Plugin.

项目介绍Project Overview

open-preset-harness 是 DeepSeek Harness 的项目级记忆插件,在 .dsh/memory/ 建立跨预设、跨会话的共享知识库,按领域组织决策与经验,并提供 recall、remember、memory_status 工具按需读写。适合多角色团队需要沉淀安全、API、入职等可复用事实,避免每次重建上下文时使用。注意:它扩展而非替换 Harness,默认不自动写入,记忆需通过工具或注入进入会话。

open-preset-harness is a project-memory plugin for DeepSeek Harness. It creates a shared, cross-preset, cross-session knowledge base under .dsh/memory/, organizing decisions and learnings by domain, with recall, remember, and memory_status tools for on-demand access. Use it when multi-role teams need reusable facts such as security notes, API changes, or onboarding knowledge instead of rebuilding context each session. It extends Harness rather than replacing it, and automatic writing is off by default.

或使用命令行安装(适合开发者)Or use CLI install (for developers)

命令行安装CLI Install

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

warrenop/open-preset-harness 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

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 memorystable, 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

v0.3.0 — Phase 1 distill reminder (Tier 1a) shipped; v0.2.0 supersede and v0.1.0 core remain compatible. Feedback welcome via Issues.

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
Dual-preset demo 📝 deferred · #3 · walkthrough

Roadmap

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

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 (when users need them)

  • Expanded scenario library and demo materials
  • Distill Tier 1b (compaction reminder) and assisted/auto distill tiers
  • Optional semantic search over memory
  • Domain-level write governance

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 demostandard 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.

上一个 Prev spritely 下一个 Next dsh-plugin-sidebar