08. 扩展 Matcha
记忆
记忆是 ~/.matcha/memory/ 下的 **本地** 笔记与会话元数据存储。你为某次会话打开它,用 /remember 记下事实,用 /memory 浏览文件,再从 shell 清除。这里没有任何 MatchaCode 云端记忆服务。
打开记忆
记忆默认 **关**。用下面任一方式打开(先匹配的生效):
matcha --no-memory— 始终关matcha --experimental-memory— 开MATCHA_MEMORY=1或0~/.matcha/config.toml里[memory] enabled = true- 默认:关
会话中途开关
/memory on
/memory off别名:/mem。该开关是 **会话范围**。它不改写 config.toml。关会移走本次会话的记忆工具,文件留在磁盘。开会重新初始化本地存储并再次注册工具。
不带参数的 /memory 打开浏览器(需要已配置的记忆目的地,即便你当前把它关掉了)。在该模态框里,t 是同一个开关。
记下一条:`/remember`
/remember 始终在斜杠菜单里。
/remember always open PR links after pushing不带文字时,Matcha CLI 进入 remember 模式(提示符带 remember 强调色)。你接下来输入的一行成为笔记。
随后打开复查面板。确认后写入。保存时应看到类似 Memory saved to ~/.matcha/memory/MEMORY.md。项目特定笔记进工作区 MEMORY.md;跨项目偏好进全局文件。
也可以在普通对话里说 “remember …”。持久副本仍是 Markdown 文件。要保证删掉,自己编辑文件(或用 matcha memory clear)。让助手 “forget …” 只是尽力而为。
磁盘上有什么
| 路径 | 范围 |
|---|---|
~/.matcha/memory/MEMORY.md | 全局 |
~/.matcha/memory/<project-slug>-<hash8>/MEMORY.md | 当前工作区 |
…/sessions/ | 按会话的元数据日志 |
共享同一 git origin(org/repo)的克隆和工作树共用一个工作区目录。否则哈希来自目录路径。
会话结束时,Matcha CLI 可能追加一段 **元数据** 摘要(消息数、几个主题、UTC 时间),**不**调用 LLM。琐碎会话会跳过。这是本地记账,不是 /flush。
文件监视器会重新索引你在编辑器里做的修改。/memory 里的预览只读;用 y 复制路径再去编辑。
浏览:`/memory`
/memory分栏:文件列表(Global / Workspace / Sessions)和预览。窄终端隐藏预览。
| 按键 | 作用 |
|---|---|
↑/↓ 或 j/k | 移动 |
/ | 过滤 |
y | 复制所选路径 |
连按两次 x | 只删除 **会话** 文件 |
t | 开关记忆 |
Esc | 关闭 |
从 shell 清除
matcha memory clear
matcha memory clear --workspace
matcha memory clear --global
matcha memory clear --all
matcha memory clear --yes默认范围是工作区(MEMORY.md、sessions/ 和本地索引)。--yes 跳过确认提示。
目前没有什么
| 界面 | 为何不可用 |
|---|---|
/flush | LLM 会话摘要 — 不是受支持的步骤 |
/dream | LLM 整理 — 不是受支持的步骤 |
| 自动 dream / 嵌入配置 | 同属这一类推理 |
| 向量「语义」搜索设置 | 需要嵌入推理 |
要留下事实,用 /remember(或编辑 MEMORY.md)。要丢掉一份存储,用 matcha memory clear 或删除文件。
你应该看到
| 你运行了 | 结果 |
|---|---|
matcha --experimental-memory 然后 /memory on | “Memory enabled for this session.” |
/remember always use conventional commits 然后确认 | Memory saved to ~/.matcha/memory/… |
/memory | 文件列表 + 预览 |
/flush 或 /dream | 不是受支持的步骤 |