メインコンテンツへスキップ
M

dsh-engram-bundle

michengai/dsh-engram-bundle

NPM-installable DeepSeek Harness plugin that bundles Engram persistent memory MCP and injects parent-agent memory protocol.

インストール

dsh plugin --profile web add github:michengai/dsh-engram-bundle

README

DSH Engram Bundle

A DeepSeek Harness plugin that wires Engram persistent memory MCP into a profile and injects parent-agent memory rules.

Report an issue · View on npm · 简体中文

Apache License 2.0 npm package DSH Plugin Node.js 20 or later

DSH Engram Bundle is a community-maintained plugin, not an official DeepSeek AI product.

Features

  • Registers Engram as a stdio MCP server through @deepseek-ai/dsh-mcp-client.
  • Starts engram mcp --tools=agent by default; override the binary with ENGRAM_BIN.
  • Injects a minimal memory protocol into the parent agent via DSH systemPrompt.
  • Skips child agents so memory is not saved twice.
  • Does not write AGENTS.md into user directories.

Prerequisites

  • A working DeepSeek Harness installation with dsh available in PowerShell.
  • engram available on PATH, or ENGRAM_BIN pointing to the executable.
  • Examples use the web profile; replace it with the target profile.
  • Source installation and development require Node.js 20+.

Installation

Install from npm

Run this from any PowerShell directory. Install into the DSH profile through dsh plugin:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
dsh plugin --profile web add @michengai/dsh-engram-bundle
dsh --profile web --dump-config

Restart DSH or reload the active profile. If a package mirror is behind, append --registry=https://registry.npmjs.org/.

Install from source

Use this for debugging or unpublished changes. The cloned directory becomes the plugin source path:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
Set-Location D:\Repository\deepseek-harness-plugin
git clone https://github.com/MichengAI/dsh-engram-bundle.git
Set-Location .\dsh-engram-bundle
npm test
dsh plugin --profile web add .
dsh --profile web --dump-config

Then restart DSH or reload the active profile. dsh plugin ... add . reads and applies cordis.patch.yml; do not copy lib files by hand.

Configuration

ItemDefaultNotes
MCP commandengramSet ENGRAM_BIN when the binary is not on PATH.
MCP argsmcp --tools=agentUses Engram's agent tool surface.
Working directoryprocess.cwd()Follows the current DSH working directory.
Prompt injectionParent agent onlyChild agents with parentSession receive an empty section.

Memory protocol

The plugin injects these parent-agent rules:

  • Search existing memory first for continuation work (mem_context, then mem_search).
  • Save after bug fixes, design decisions, configuration changes, or important discoveries (mem_save).
  • Write a session summary before ending (mem_session_summary).
  • Do not persist ordinary chat or throwaway notes.

The full protocol and MCP wiring live in the handoff docs.

Development

This repository keeps runtime source in lib and has no build step:

  • lib\index.js: Host plugin that registers the systemPrompt section.
  • lib\protocol.js: Parent-agent memory rules.
  • test\memory-plugin.test.mjs: Injection behavior.
  • test\package-contract.test.mjs: Package and patch contract.
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test
npm run pack:check
dsh plugin --profile web add .

Verification

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test
npm run pack:check

prepublishOnly runs the tests before publish.

Project docs and license

Start at the handoff index. This project uses Apache License 2.0.

関連プラグイン