Bundle
dsh-noc-memory
DeepSeek Harness plugin: Nocturne Memory client — automated long-term memory (boot/read/search/create/update/delete) backed by your own Nocturne MCP server.
- Source
- RealAlexandreAI
- stars
- 2 stars
- License
- MIT
- Updated
- Updated 2 days ago
Readme
<p align="center">
<img src="assets/readme/hero.svg" alt="dsh-noc-memory — long-term memory for DeepSeek Harness" width="100%">
</p>
# dsh-noc-memory
Connects DeepSeek Harness to **Noc Memory**: session-start boot + daily briefing, plus memory read / search / create / update / delete, backed by your own Noc Memory MCP server on Cloudflare.
> Port of [pi-noc-memory](https://github.com/RealAlexandreAI/pi-noc-memory) — same protocol, same tool names.
[English](README.md) · [中文](README.zh.md)
## Tools
| tool | what it does |
|---|---|
| `noc_boot` | load at session start: `system://boot`, `system://recent/5`, `system://triggers`, then best-effort `system://briefing`; afterward read `system://focus` (recent is a briefing subset — no need to re-read it after boot) |
| `noc_read` | read a memory by URI (`system://…`, `noc://agent`, …) |
| `noc_search` | search memories (semantic + keyword / trigger recall via `search_memory`) |
| `noc_create` | create a memory node (`[Baseline]`/`[Deviation]`/`[Result]`/`[Reusable judgment]`) |
| `noc_update` | full replace, patch (old_string/new_string), or append; optional `relation` |
| `noc_delete` | delete a memory by URI (`delete_memory`) |
## Quick start
```sh
dsh plugin --profile web add dsh-noc-memory
```
Requires your own Noc Memory server — deploy it to Cloudflare in minutes: [cf-noc-mem](https://github.com/RealAlexandreAI/cf-noc-mem).
```yaml
- id: noc-memory
name: dsh-noc-memory
config:
mcp_url: https://mem.example.com/mcp
mcp_auth: "" # prefer mcp_headers for Access service token
```
For a server behind Cloudflare Access (e.g. noc-mem.slahser.com), use the **service token** headers instead of `mcp_auth`:
```yaml
- id: noc-memory
name: dsh-noc-memory
config:
mcp_url: https://noc-mem.slahser.com/mcp
mcp_headers:
CF-Access-Client-Id: <your client id>
CF-Access-Client-Secret: <your client secret>
```
| key | required | meaning |
|---|---|---|
| `mcp_url` | yes | your Noc Memory MCP endpoint (Streamable HTTP) |
| `mcp_auth` | no | legacy; prefer `mcp_headers` for Cloudflare Access service token |
| `mcp_headers` | no | extra headers merged into every MCP request (e.g. Cloudflare Access service token) |
> **Upgrading from dsh-nocturne-memory (≤0.1.x):** renamed to `dsh-noc-memory`, tools renamed `nocturne_*` → `noc_*`. Remove the old plugin and re-add the new package; update any prompt text referencing `nocturne_*` tools.
## Why noc_* (not nocturne_*)?
Some agents probe `read_mcp_resource` before reaching for a memory tool, wasting a round trip ([upstream issue #32](https://github.com/Dataojitori/nocturne_memory/issues/32)). Explicit `noc_boot` / `noc_read` naming in the tool list and boot-protocol prompt steers models straight to the right tool — no resource shim required.
## License
MIT
## Related
- [cf-noc-mem](https://github.com/RealAlexandreAI/cf-noc-mem) — the Cloudflare MCP memory server this plugin talks to
- [pi-noc-memory](https://github.com/RealAlexandreAI/pi-noc-memory) — same memory tools for Pi
- [nocturne_memory](https://github.com/Dataojitori/nocturne_memory) — upstream project
Install
dsh plugin --profile web add github:RealAlexandreAI/dsh-noc-memory
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-noc-memory from the hub
- This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.