Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
会话与消息 #agent-memory#deepseek-harness#dsh#dsh-plugin#memory

dsh-memory-meow

项目级跨会话记忆:PROJECT.md 快照注入首条用户消息(缓存友好)+ memory_remember 工具 + ReAct 任务结束自动反思;各项目独立记忆文件,互不互通。

phant0meow @phant0meow ⬇ 1 ★ 2 main

安装

dsh plugin --profile web add github:phant0meow/dsh-memory-meow
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

项目级跨会话记忆:PROJECT.md 快照注入首条用户消息(缓存友好)+ memory_remember 工具 + ReAct 任务结束自动反思;各项目独立记忆文件,互不互通。

该插件未提供要点说明,请参考仓库 README。

agent-memorydeepseek-harnessdshdsh-pluginmemory
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/phant0meow/dsh-memory-meow
许可证MIT
主要语言main
下载量1
GitHub 星标2
最近推送2026-08-14
收录日期2026-09-19
分类会话与消息

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# meow-memory 🐱📝

Cross-session project memory for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) (DSH).
Born from the "meow" fork — hence the name — but works on any DSH profile.

**The idea**: every workspace keeps one human-readable memory file (`.dsh-meow/PROJECT.md`).
New sessions get it injected into the **first user message** (not the system prompt), so the
prompt prefix — and your LLM provider's KV/context cache — stays untouched. When the model
finishes a task (a ReAct turn that used tools), the plugin gently asks it to reflect and save
what's worth remembering.

## ✨ Features

- **Cache-friendly by design**: memory is injected as a plain user-message suffix on the
  session's first user message. The system prompt never changes, and the snapshot is frozen
  for the whole session — later memory updates cannot invalidate the request prefix.
- **Human-owned memory**: `.dsh-meow/PROJECT.md` per workspace. Plain Markdown, human-editable,
  git-diffable, deletable with `rm`.
- **`memory_remember` tool**: the model can write a memory anytime (categories: fact / mistake /
  preference / user_said / lesson / detail), appended atomically to the right section.
- **Automatic reflection**: after a task turn ends (model stopped calling tools), the plugin
  steers a reflection prompt. The model decides whether anything is worth remembering — and
  calls `memory_remember` only when there is. Chat-only turns never trigger reflection.
- **No recursion**: reflection rounds are marked; a turn that already reflected, or whose last
  tool call was a `memory_` tool, is never asked again.
- **Zero runtime dependencies**: the host bundle is self-contained (esbuild bundles
  schemastery / dsh-tools / dsh-llm into `lib/index.js`).
- **Per-workspace isolation**: different projects, different memory files.

## 📦 Install

### Via `dsh plugin` (requires the package to be published / linked)

```sh
dsh plugin --profile web add meow-memory
dsh web
```

### By hand (any DSH install, no npm needed)

1. Copy (or symlink) this package into the profile's `node_modules`:
   ```sh
   # e.g. for the web profile of a DSH home at ~/.dsh
   mkdir -p ~/.dsh/profiles/web/node_modules
   ln -s /path/to/meow-memory ~/.dsh/profiles/web/node_modules/meow-memory
   ```
   (On Windows: `New-Item -ItemType Junction ...` — NTFS junction, no admin needed.)
2. Register in the profile's `cordis.patch.yml`:
   ```yaml
   - insert:
       - id: meow-memory
         name: 'meow-memory'
         config:
           enabled: true
   ```
3. Restart `dsh web`. New sessions pick up the plugin automatically.

## ⚙️ Configuration

All fields are optional (profile patch or `cordis.patch.yml`):

```yaml
- id: meow-memory
  name: 'meow-memory'
  config:
    enabled: true          # master switch (false = no injection, no tool, no reflection)
    projectDir: '.dsh-meow' # memory directory, relative to the workspace
    projectFile: 'PROJECT.md' # memory file name
    maxInjectChars: 4000   # max chars injected into the first user message (truncated beyond)
    reflect: true          # auto-reflection after ReAct task turns
```

## 🧠 How it works

```
First user message            memory_remember tool             task end
┌──────────────────┐          ┌──────────────────┐            ┌──────────────────────┐
│ [user text]      │          │ model calls it   │            │ agent/turn-stopping  │
│ ─────────────    │          │ → append to       │            │ saw tool calls?      │
│ [PROJECT.md      │          │   .dsh-meow/      │            │ last tool memory_*?  │
│  snapshot]       │          │   PROJECT.md      │            │ already reflected?   │
└──────────────────┘          └──────────────────┘            │ → agent.steer(reflect│
   injected once per                atomic write              │   prompt) if yes     │
   session, never again                                       └──────────────────────┘
```

Memory content guidance (embedded in the tool description and the reflection prompt):

- important facts, conclusions, decisions;
- mistakes and **corrections from the user** (always worth keeping);
- the user's own description of the project (quote them);
- surprises;
- lessons from repeated failed attempts;
- user preferences (communication / working / coding style, project-related);
- hard-won details that took many tool calls to find.

## 🛠 Development

```sh
npm install
npm run build          # esbuild bundle → lib/index.js (self-contained)
npm run test           # 22 logic tests: tool, store, injection, reflection, recursion guard
```

The `@deepseek-ai/*` packages live in the dsh-meow pnpm workspace, not in this package's
`node_modules`. On Windows, `npm run link-workspace` (or `scripts/link-workspace.ps1`)
creates junction mirrors of the workspace packages so esbuild can resolve them;
`build.mjs` uses `nodePaths` to pick them up. The links are build-time only.

## 📄 License

MIT — see [LICENSE](LICENSE).

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。