Skip to content

Repository files navigation

MemOS Cloud DeepSeek Harness Plugin (Lifecycle)

Official plugin maintained by MemTensor.

English | 中文

A lifecycle bundle for DeepSeek Harness that recalls relevant memories from MemOS Cloud before the model starts the current turn and adds the completed user/assistant turn back to MemOS Cloud afterward.

Features

  • Recall: before the first model step of every user turn → /search/memory
  • Add: after that turn ends with completed/add/message
  • Deterministic filters: user, public, knowledge-base, metadata, tags, and static agent isolation
  • Lifecycle-native: memory is automatic; the model does not decide whether to call a memory tool
  • Fail-open: MemOS errors never interrupt the Harness turn
  • Safe capture: excludes system prompts, reasoning, tool calls/results, attachments, and plugin context
  • Uses Token auth (Authorization: Token <MEMOS_API_KEY>)

Install

The following commands install the plugin into DeepSeek Harness's default web profile.

Option A — NPM (Recommended)

dsh plugin --profile web add @memtensor/memos-cloud-dsh-plugin

If DSH is not installed globally:

npx @deepseek-ai/dsh plugin --profile web add @memtensor/memos-cloud-dsh-plugin

Option B — Local Package

npm install
npm pack
dsh plugin --profile web add "./memtensor-memos-cloud-dsh-plugin-$(node -p "require('./package.json').version").tgz"

lib/ is build output. npm pack creates the installable .tgz file in the project root.

Remove

dsh plugin --profile web remove @memtensor/memos-cloud-dsh-plugin

Start or Restart DSH Web

After installing or removing the plugin, restart DSH Web to reload the web profile. If it is already running, press Ctrl+C in its terminal, then start it again:

npx @deepseek-ai/dsh web

Configuration

1. API Key Credential

Create a MemOS API key at MemOS Dashboard.

DSH credential file: ~/.dsh/.credentials.yaml

Add the API key:

MEMOS_API_KEY: mpg-your-key

2. Plugin Settings

DSH plugin settings file: ~/.dsh/settings.yaml

Add the plugin settings:

memos-cloud:
  apiKeyEnv: MEMOS_API_KEY
  userId: stable-user-id
  memoryLimitNumber: 6
  relativity: 0.45

Configuration Reference

Field Default Meaning
apiKeyEnv MEMOS_API_KEY Harness credential reference
baseURL https://memos.memtensor.cn/api/openmem/v1 MemOS API root
userId MEMOS_USER_ID, then deepseek-harness-user Stable shared read/write user namespace
recallEnabled true Search before the first model step of each user turn
addEnabled true Add after the current turn ends with completed
includeAssistant true Include assistant text in add
includeSubagents false Process sessions with origin: subagent
memoryLimitNumber 6 Recalled result limit, 1..25
relativity 0.45 Semantic threshold, 0..1
filter unset Ordinary or per-source deterministic filter
knowledgebaseIds [] KB IDs to search; all cannot be mixed with concrete IDs
tags [deepseek-harness] Tags for add
info {} Non-blank string metadata
agentId unset Add agent_id and constrain the user search branch
appId unset Add app_id; not an automatic search filter
allowKnowledgebaseIds [] KB IDs allowed for writes
maxQueryChars 4000 Search query character budget
maxRecallChars 12000 Total recalled-text budget
maxMessageChars 12000 Per-message add budget
timeoutMs 5000 HTTP timeout, 100..60000 ms
searchRetries 1 Extra search attempts, 0..3

How It Works

  • Recall (agent/pre-step): on the first model step of each direct user turn, the plugin calls /search/memory and inserts the results before the user message.
  • Add (turn/end): after a turn ends with completed, the plugin sends the user text and optional assistant text to /add/message.
  • MemOS failures do not interrupt the Harness turn. Subagent sessions are excluded unless includeSubagents is enabled.

Compatibility

  • DeepSeek Harness: 0.1.0-rc.6
  • Node.js: ^22.19.0 || >=24.0.0
  • MemOS Cloud API: /api/openmem/v1

Harness is a developer preview. Re-run the full tests and a live smoke after upgrading it.

Security and Privacy

  • Recall JSON escapes < and is labeled untrusted, read-only background data.
  • Instructions, permission claims, and tool requests inside memory are never executed by the plugin.
  • The plugin does not upload cwd, full configuration, system prompts, reasoning, tool arguments/results, or attachments.
  • Original DSH message IDs and event timestamps are preserved.
  • allow_public is fixed to false.
  • Warnings omit API keys, authorization headers, and request bodies.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages