Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

# Feature Request: 对话历史管理功能(删除 / 重命名 / 导出) #16

Open

Description

问题描述

DeepCode VSCode (标识符 vegamo.deepcode-vscode 版本0.1.18,在cursor中使用)插件目前没有任何对话历史管理功能,这在长期使用中带来了很大不便。

缺少的核心功能

1. ❌ 无法删除对话记录

  • 插件界面中没有"删除对话"的任何入口
  • 对话列表随使用时间不断累积,无法清理旧的、不再需要的对话
  • 对话 JSONL 文件占用大量磁盘空间(目前已累积 ~700KB)

2. ❌ 无法重命名对话

  • 所有对话的标题自动生成,但有些不够精准
  • 无法手动修改对话标题来方便后续查阅

3. ❌ 无批量管理能力

  • 无法批量选择删除多条对话
  • 无法按时间、大小、状态等排序

用户实际痛点

以我自己的使用为例,三个月内累积了多条对话,这些旧对话无法通过插件界面清理,用户只能通过手动操作底层文件来删除:

# 用户被迫手动操作底层文件来删除:
rm ~/.deepcode/projects/*/<session-id>.jsonl
# 并且还要编辑 sessions-index.json 移除对应条目

这不仅操作复杂,而且容易误删数据。

对话存储机制(供开发参考)

通过逆向分析,对话数据存储在:

~/.deepcode/projects/<project-hash>/
├── <session-id>.jsonl # 每条对话一个文件,每行一条消息
├── sessions-index.json # 索引文件,包含摘要、token用量、状态等元信息
└── file-history/ # 文件历史

删除一条对话需要:

  1. 删除对应的 <session-id>.jsonl 文件
  2. sessions-index.jsonentries 数组中移除对应条目

建议实现方案

方案 A:右键菜单(最小改动)

在对话列表的每条记录上增加右键菜单:

  • 删除:删除该条对话(带确认弹窗)
  • 重命名:允许编辑对话标题
  • 复制ID:方便调试

方案 B:对话管理面板(推荐)

在侧边栏增加一个独立的对话管理视图,支持:

  • 删除(单条 / 批量选择)
  • 重命名
  • 按时间 / 大小 / 状态排序
  • 搜索过滤
  • 导出为 Markdown / JSON
  • 确认弹窗(防止误删)

方案 C:设置页面管理

在插件设置页面增加对话管理入口,提供 CRUD 操作。

优先级建议

功能 优先级 理由
删除单条对话 P0 高 最迫切需求,避免磁盘膨胀
重命名 P1 中 提升检索效率
批量管理 P2 低 锦上添花

预期收益

  1. 用户体验提升:不再需要手动操作底层文件
  2. 磁盘空间管理:及时清理无用对话
  3. 信息检索效率:自定义命名方便后续查找
  4. 降低误操作风险:统一的管理界面比手动删文件更安全

感谢 DeepCode 团队!期待对话管理功能的加入 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /