Quophic/dsh-persona-memory ↗★ 2
dsh-persona-memory
Persistent long-term persona memory for DeepSeek Harness: MEMORY.md/USER.md storage, memory + memory_search tools, per-request context injection, secret scanning, and a WebUI memory-management settings page. Ported in spirit from pi-hermes-memory.
AI 분석
核心用途是赋予 AI 跨会话的长期记忆能力。适合需要 AI 记住用户偏好、项目背景或进行个性化持续对话的长期开发与日常辅助任务。
설치
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Quophic/dsh-persona-memory配置(均可选)
| 键 | 默认 | 含义 |
|---|---|---|
dir | 见下 | 记忆文件目录;显式设置优先 |
memoryCharLimit | 5000 | MEMORY.md 注入上下文的最大字符数 |
userCharLimit | 8000 | USER.md 注入上下文的最大字符数 |
enableSecretScanning | true | 是否启用写入扫描 |
inject | true | 是否注册系统提示词注入段落 |
sectionOrder | 55 | 注入段落在系统提示词中的顺序 |
searchMaxResults | 10 | memory_search 单次最多返回条数 |
usageNudgeThreshold | 0.9 | 达到该用量比例(如 90%)时在结果中提醒合并 |
correctionDetection | true | 收到 feedback/record 时自动存 [correction] 失败条目 |
correctionPatternDetection | true | 对话内纠正模式检测(强/弱/负向模式,仅直接人工消息) |
correctionRateLimitTurns | 3 | 对话内纠正保存的最小间隔(轮) |
memoryFtsEnabled | true | 启用 SQLite FTS5 记忆镜像(memory_search 全文检索) |
vectorEnabled | false | 启用语义向量搜索(memory_search 变混合检索:FTS5 + 向量 RRF 融合) |
vectorIndexDir | $DSH_HOME/memory | 向量索引目录(DSH 侧,绝不写入 Pi 共享记忆目录) |
embeddingProvider | remote | remote(OpenAI 兼容 /embeddings API)或 local(自带 transformers.js,模型自动下载) |
embeddingBaseUrl | '' | 远程 embedding API 基址(如 https://api.openai.com/v1) |
embeddingApiKey | '' | 远程 embedding API Key;不填则读 DSH_EMBEDDING_API_KEY 环境变量 |
embeddingModel | text-embedding-3-small | embedding 模型名(local 默认 Xenova/all-MiniLM-L6-v2) |
embeddingCacheDir | $DSH_HOME/models | local 模型缓存目录(首次自动下载到此处) |
embeddingRemoteHost | https://huggingface.co | local 模型下载源;大陆可用 https://hf-mirror.com |
adminProfile | web | 记忆管理页配置写回的目标 profile(~/.dsh/profiles//cordis.patch.yml) |
autoBackupMin | 60 | 自动备份间隔(分钟);0 关闭;只保留最新一份快照到 $DSH_HOME/memory-backup/latest/ |
autoSwitchOnPiLoss | true | Pi 共享记忆丢失(曾见 MEMORY.md 后消失)时自动切到 $DSH_HOME/memory 并从最新备份恢复 |
learnEnabled | true | 是否启用后台自动学习 |
learnIntervalTurns | 10 | 每 N 轮(turn/end)触发一次复习 |
learnRecentTurns | 2 | 每次复习取最近多少个轮次的对话 |
learnMaxChars | 6000 | 复习用的对话/记忆摘要最大字符数 |
learnTimeoutMs | 120000 | 学习 LLM 调用的超时 |
standingEnabled | true | 是否启用常驻指令(STANDING.md + /standing 命令) |
standingCharLimit | 2000 | STANDING.md 注入预算(硬上限) |
standingMaxEntries | 20 | STANDING.md 最大条数(硬上限) |
autoConsolidate | true | 超限时自动 LLM 合并(严格更小才提交) |
consolidateStaleDays | 30 | 合并时判定"陈旧可删"的天数(无近期引用) |
consolidateTimeoutMs | 120000 | 合并 LLM 调用的超时 |
failureInjectionEnabled | true | 是否注入最近失败(learn from mistakes) |
failureMaxAgeDays | 7 | 失败注入窗口(按 created 日期) |
failureMaxEntries | 5 | 失败注入最多条数 |
failureCharLimit | 10000 | failures.md 字符上限(hermes 默认 memory×2) |
projectEnabled | true | 是否启用项目级记忆 |
projectCharLimit | 5000 | 单项目记忆字符上限 |
dir 默认解析顺序:① 显式 config.dir → ② ~/.pi/agent/pi-hermes-memory(若已存在 MEMORY.md,即与 Pi 共用)→ ③ $DSH_HOME/memory(默认 ~/.dsh/memory)。