会话与记忆 · 收录于 2026-08-29 · 适用 1 工具 ✓ 实测验证

Chroma 进程泄漏 / zombie 链

已验证 2026-08-29Chroma 进程泄漏/僵尸链先 `pkill -f chroma` 清残留并重启 worker,升级插件 13.16.1 根治。

快速修复

# 一键:清残留 + 重启 worker(再升级插件到 13.16.1 根治)
pkill -f chroma; pkill -f claude-mem; claude-mem start

你会遇到什么

长期使用后内存/进程数逐渐膨胀,ps 里出现多个 chroma 残留进程,机器越来越卡。你以为是自己开太多会话——其实是旧版的 process-tree 清理缺失(上游 Issue #2959/#3137):worker 退出时没有把子进程树清干净,越积越多。

本文路径:快速修复(30 秒一段命令)→ 一步步排查(可跳读)→ 原理与变体(症状/原因/证据)。赶时间直接跳到「快速修复」。

为什么会这样

claude-mem 的 worker 会拉起 chroma(向量库)等子进程。旧版本在退出/重启时没有正确清理整棵进程树,导致子进程变成残留(zombie 链)。2026-08-25 发布的 v13.16.1 已修复 process-tree cleanup——升级插件是第一解法,而不是手动杀进程硬撑。

实测环境:本市场收录版本 = 13.16.1(含该修复),2026-08-28。

残留进程的本质是进程树清理链断裂:worker 直接 spawn chroma 等子进程,旧版退出时只回收自己,没有递归杀掉整棵子进程树。被遗留的 chroma 不会自己退出——它是长驻服务,父进程没了之后被 init 收养,继续占着内存和端口。所以"越用越卡"不是幻觉,是每次会话退出都漏掉几个子进程,线性累积。

pkill -f 是按命令行特征匹配整条链清理的兜底手段,但根治必须在退出路径上补 tree-kill——这正是 v13.16.1 修的。

一步步来

1. 升级插件(根治) — 必做

npm_config_registry=https://registry.npmmirror.com npm install -g claude-mem
claude-mem update

v13.16.1(2026-08-25 release)修复 process-tree cleanup。

2. 清理残留进程 — 必做

pkill -f chroma; pkill -f claude-mem

3. 重启 worker — 必做

claude-mem start && claude-mem status

怎么确认修好了

ps aux | grep -c chroma; claude-mem status

重启后 chroma 残留数归零、worker 就绪即成功(升级后不再累积)。

其它环境的表现

环境说明
长期使用升级 13.16.1+ 根治,勿只靠手动杀
已膨胀先清理残留再升级,顺序不反
Windowstaskkill /F /IM chroma* 等量替代 pkill

症状

长期使用后内存/进程膨胀,出现多个 chroma 残留进程。

原因

旧版 process-tree 清理缺失(上游 Issue #2959/#3137)。

解法

  1. 升级插件到 v13.16.1(2026-08-25 release 修复 process-tree cleanup)。
  2. 手动清理残留进程后重启 worker。
验证证据
  • 上游 Issue #2959/#3137。
  • 本市场收录版本 = 13.16.1(含该修复)。

适用工具 (1)

本问题方案已挂到下列工具的方案页——从工具页也能回到这里,双向可达。

claude-mem

来源与证据

收录 验证 ✓ 实测验证适用 1 工具
方案含本地实测或来源可复核的解法;未实测项已在文中如实标注。

← 会话与记忆 问题域 | 问题货架 | 遇到其它问题?去 问题空间 提交求助卡