Skip to content

[Feature]: 增加手动刷新工作区数据功能 #198

Description

@legeling

Feature Description

建议在桌面端增加一个明确的 “手动刷新” 功能,用于重新读取 PromptHub 的本地数据并刷新当前工作区视图。

目前通过 CLI 或直接操作数据库创建 Prompt 后,桌面端已经运行的程序不会立即显示新内容,必须重启程序才能看到。希望用户可以点击刷新按钮或使用快捷操作,在不重启应用的情况下同步最新数据。

Motivation

PromptHub 同时提供桌面端、CLI 和数据库能力。外部写入发生后,桌面端如果一直使用启动时的数据或缓存,会导致:

  • 新建的 Prompt 不出现在列表中;
  • 文件夹、标签、收藏和数量统计可能仍是旧状态;
  • 用户误以为 CLI/数据库操作没有成功;
  • 为了查看数据被迫重启应用,打断当前工作。

Proposed Solution

  1. 在 Prompt、Skill、Rules 等主要工作区提供刷新入口:
    • 顶部刷新按钮;
    • 右键菜单或空状态页刷新操作;
    • 可选快捷键。
  2. 刷新时重新读取数据库/文件系统中的最新数据,并使相关查询缓存失效。
  3. 同步刷新受影响的:
    • 当前列表和详情;
    • 文件夹树、标签、收藏和数量统计;
    • 搜索结果和筛选结果;
    • 当前选中项(如果该项仍存在)。
  4. 刷新过程中显示加载状态,完成后给出成功或失败反馈,避免用户重复点击。
  5. 如果当前编辑器存在未保存修改,刷新前应保护草稿并提示潜在冲突,不要静默覆盖。
  6. 如果外部写入发生在当前页面之外,刷新后应能立即看到新建、修改和删除结果。

Steps to Reproduce Current Limitation

  1. 启动并打开 PromptHub 桌面端。
  2. 保持桌面端运行,使用 PromptHub CLI 或其他服务向数据库创建一个新的 Prompt。
  3. 回到桌面端查看 Prompt 列表。
  4. 新 Prompt 不会出现。
  5. 重启 PromptHub 后,新 Prompt 才能显示。

Acceptance Criteria

  • 桌面端提供明确可发现的手动刷新入口;
  • 外部创建的 Prompt 刷新后无需重启即可显示;
  • 外部修改和删除的数据刷新后也能正确反映;
  • 文件夹、标签、收藏和数量统计同步更新;
  • 搜索/筛选状态下刷新结果正确;
  • 当前选中项仍存在时保持选择,不存在时有合理提示;
  • 未保存编辑内容不会被静默覆盖;
  • 刷新失败时显示可理解的错误信息;
  • Prompt、Skill、Rules 等使用共享数据服务的工作区行为一致。

Additional Context

这与 CLI 写入冲突问题(#184)不同:本需求关注的是外部写入成功后,已运行的桌面端如何主动重新加载并展示最新数据。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions