Skip to content

Add mac/linux menubar notifications for background progress #42

Description

@Teingi

Describe your use case

Background

For desktop users on macOS/Linux, we need lightweight menubar notifications to increase feedback and sense of progress during background work.

MVP Goal

Add categorized notifications from the menubar/tray when background jobs progress:

  • data ingestion started / updated / completed
  • evolution (compact) started / progressed / completed
  • dream started / progressed / completed

Why

Users should feel clear progress and completion signals without opening the full dashboard.

Scope (MVP)

  • macOS + Linux menubar/tray integration
  • categorized notification types (ingestion / evolution / dream)
  • minimal metadata in message (task type + status + timestamp)
  • safe fallback when notifications are disabled or unsupported

Out of Scope (for this issue)

  • rich notification center history
  • actionable buttons
  • advanced customization rules

Acceptance Criteria

  • background ingestion/evolution/dream events trigger corresponding category notifications
  • notifications appear on macOS and Linux in normal desktop sessions
  • no crash/regression if notification permission is denied

背景

桌面端在后台运行时,用户很难感知系统是否在持续产生价值。希望在 macOS/Linux 菜单栏(menubar/tray)提供轻量通知,增强“有进展、有结果”的获得感。

最小可用目标(MVP)

当后台任务发生关键状态变化时,按类别发送通知:

  • 数据录入(ingestion):开始 / 进展 / 完成
  • 演进(evolution / compact):开始 / 进展 / 完成
  • 梦境整理(dream):开始 / 进展 / 完成

设计原则

  • 低打扰:仅关键节点通知,避免刷屏
  • 可识别:通知里明确类别与状态
  • 可回溯:至少包含时间和任务类型

范围(本期)

  • 支持 macOS + Linux 的 menubar/tray 通知
  • 支持按 ingestion / evolution / dream 分类展示
  • 通知内容包含:任务类别、状态、时间戳
  • 在权限关闭或系统不支持时优雅降级,不影响主流程

暂不包含

  • 通知历史中心
  • 通知交互按钮(如“查看详情/重试”)
  • 复杂规则配置(免打扰时段、筛选策略等)

验收标准

  • 后台 ingestion/evolution/dream 的关键事件都会触发对应分类通知
  • 在 macOS、Linux 常见桌面环境下可正常展示
  • 通知权限被拒绝时不崩溃,主功能可正常运行

Describe the solution you'd like

feat(desktop): add mac/linux menubar notifications for background progress

Describe alternatives you've considered

No response

Additional context

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    comp:desktopContextSeek component: desktophelp wantedExtra attention is neededpriority:highShould be addressed soon

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions