Skip to content

Commit e1ec0cb

Browse files
committed
feat: add Cursor session support
1 parent c4a268d commit e1ec0cb

17 files changed

Lines changed: 849 additions & 20 deletions

File tree

.github/workflows/release.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,11 @@ jobs:
6767
6868
### 更新 / Changes
6969
70-
- Claude: 按 `tool_use_id` 合并 `tool_use/tool_result`,避免工具结果挂到用户消息下
71-
- Claude: 保留纯工具调用块的时间线位置,避免工具历史延后挂到后续助手文本
72-
- UI: 纯工具调用块不再显示空白消息气泡
73-
- 导出: 纯工具调用块导出为 `Assistant Tool Calls`,避免生成空的助手消息段
74-
- 测试: 增加 Claude 工具调用归属和纯工具块回归用例
70+
- Cursor: 新增会话适配器,读取 Cursor 本地 composer 历史
71+
- Cursor: 顶层列表隐藏归档、草稿、空壳和 subagent 子会话
72+
- Claude Code: 顶层列表跳过 `subagents` sidechain 会话文件
73+
- OpenCode: 顶层列表隐藏 `parent_id` 子会话
74+
- 测试: 增加 Cursor 子会话与空壳会话过滤回归用例
7575
7676
### 下载 / Download
7777

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "memory-forge-v3",
3-
"version": "3.3.3",
3+
"version": "3.3.4",
44
"description": "Stop resetting. Start editing. — Local AI session manager for Claude Code, Codex CLI, OpenCode, Kiro CLI, Kiro IDE & Gemini CLI",
55
"type": "module",
66
"scripts": {

src-tauri/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src-tauri/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "memory-forge"
3-
version = "3.3.3"
3+
version = "3.3.4"
44
description = "Memory Forge — Local AI Session Manager"
55
authors = ["VoidCraft"]
66
edition = "2021"

src-tauri/src/platforms/claude.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -755,6 +755,9 @@ fn collect_jsonl_recursive(dir: &Path, out: &mut Vec<PathBuf>) {
755755
for entry in entries.flatten() {
756756
let path = entry.path();
757757
if path.is_dir() {
758+
if path.file_name().and_then(|name| name.to_str()) == Some("subagents") {
759+
continue;
760+
}
758761
collect_jsonl_recursive(&path, out);
759762
} else if path.extension().and_then(|ext| ext.to_str()) == Some("jsonl") {
760763
out.push(path);

0 commit comments

Comments
 (0)