DeepSeek Harness Plugin

nowledge-co/nowledge-mem-deepseek-harness

Stars ★ 7 Category Memory Added 2026-08-14

One memory layer for every AI tool and agent: Context Bundle injection, prompt-time recall, MCP tools, and turn-end DSH thread capture.

Install

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:nowledge-co/nowledge-mem-deepseek-harness

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

One memory layer for every AI tool and agent, packaged as a DeepSeek Harness (dsh) bundle. Nowledge Mem brings DSH into the same durable memory system as your other agents, with startup context, prompt-time recall, MCP memory tools, and turn-end thread capture.

This repository is the canonical standalone plugin package, mirrored in nowledge-co/community for the Nowledge Mem connector index.

Install

dsh plugin --profile web add github:nowledge-co/nowledge-mem-deepseek-harness
dsh web

For a local checkout of nowledge-co/community, run this from the repository root:

dsh plugin --profile web add ./nowledge-mem-deepseek-harness-plugin
dsh web

Make sure the nmem CLI is on PATH, then verify:

nmem status
nmem config mcp show --host deepseek-harness

The bundle connects to the local Mem MCP endpoint by default:

http://127.0.0.1:14242/mcp

For Nowledge Cloud or another remote Mem, set:

export NMEM_MCP_URL="https://<workspace>/mcp"
export NMEM_API_KEY="<mem-api-key>"

What It Does

  • Injects the Nowledge Mem Context Bundle once per DSH session through agent/pre-step.
  • Runs prompt-time memory recall for continuation, release, regression, connector, plugin, and other recall-shaped prompts.
  • Adds the Mem MCP server through DSH's reconnecting @deepseek-ai/dsh-mcp-client, so tools appear as mcp__nowledge_mem__....
  • Imports the real DSH surface transcript after completed turns with nmem t import --source deepseek-harness.
  • Stamps CLI imports with NMEM_IMPORT_ORIGIN=deepseek-harness.

Configuration

The bundle accepts these row config fields in a later cordis.patch.yml override:

- id: nowledge-mem
  config:
    cliPath: nmem
    sourceApp: deepseek-harness
    importOrigin: deepseek-harness
    contextOnSessionStart: true
    recallOnPrompt: true
    syncOnTurnEnd: true
    allowDangerFullAccessRetry: false
    recallLimit: 8
    spaceId: my-space-id
    agentId: deepseek-harness

Ambient variables also work:

  • NMEM_SPACE
  • NMEM_AGENT_ID
  • NMEM_HOST_AGENT_ID
  • NMEM_MCP_URL or NOWLEDGE_MEM_MCP_URL
  • NMEM_API_KEY

Model Experience

Startup Context

The model sees one plugin-sourced user message containing the current Nowledge Mem Context Bundle. It is marked as form: "snapshot" and reminds the model that it is cross-tool context, not an instruction override.

Prompt-Time Recall

When the user asks to continue, remember, review previous work, ship a release, debug a regression, or discuss connectors/plugins, the plugin calls:

nmem --json m search "<prompt>" -n 8

The model sees a bounded recall message with memory titles, source hints, scores, and content.

MCP Tools

Mem MCP tools are registered through DSH's MCP bridge under the nowledge_mem namespace. DSH currently bridges MCP tools only; MCP resources and prompts are not surfaced by the Harness client.

Thread Capture

After each completed DSH turn, the plugin serializes user, assistant, and tool-result events, skips its own injected context messages, and imports the transcript into Mem as source=deepseek-harness.

Sandbox Compatibility Retry

The plugin does not retry a sandbox-unavailable nmem command with danger-full-access by default. An operator who explicitly accepts that wider access may set allowDangerFullAccessRetry: true in the nowledge-mem plugin config. Even with that opt-in, the retry runs only when the DSH host provides ctx.sandboxPolicy and resolves the requested policy; otherwise it fails closed and logs why the retry was skipped.

Known Limitations

  • DeepSeek Harness is in developer preview, so public package APIs may change.
  • Historical DSH sessions are not backfilled by this package yet; it captures new sessions while the plugin is active.
  • The DSH MCP bridge exposes tools only, so Nowledge Mem resources/prompts are not shown through MCP today.
  • Turn capture depends on the local nmem CLI being available in the DSH process environment.

Community Position

The canonical public repository is nowledge-co/nowledge-mem-deepseek-harness, tagged with dsh-plugin for DeepSeek Harness ecosystem discovery. The community repository keeps a registry/index mirror for Nowledge Mem surfaces.

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.