⚙️ 自动化

通知提醒系统

为系统事件、文件变化和定时提醒设置自动通知

★☆☆ 初级 15 min 2025年1月13日

概述

在日常工作中,及时获知重要事件而无需持续监控非常重要。Cowork 可以帮助你设置通知系统,在满足特定条件时自动发出提醒。

适用场景

  • 监控下载文件夹中的新文件到达
  • 监控重要文档的修改变化
  • 设置磁盘空间不足预警
  • 创建每日站会、周会等定时提醒
  • 监控特定进程的运行状态

操作步骤

1

描述需要的通知类型

向 Claude 说明你需要哪些类型的通知监控。

我想在 Mac 上设置自动通知,请帮我创建:

  1. 文件监控:

    • 当 ~/Downloads 有新文件时提醒
    • 当 ~/Documents/Important 文件夹有变化时提醒
  2. 系统警报:

    • 磁盘使用超过 80% 时通知
    • 特定进程停止时提醒
  3. 定时提醒:

    • 每天早上 9:45 站会提醒
    • 每周日备份提醒

创建脚本和 launchd 配置,保存到 ~/Scripts/notifications/

2

Claude 生成监控脚本

Claude 会创建以下内容:

  • 文件监控脚本(使用 fswatch)
  • 系统检查脚本(磁盘空间等)
  • 定时提醒脚本(使用原生对话框)
  • launchd 配置文件(用于定时任务)
3

安装必要工具

安装文件监控工具 fswatch

brew install fswatch

4

加载和启动服务

加载 launchd 服务

launchctl load ~/Library/LaunchAgents/com.user.standup-reminder.plist launchctl load ~/Library/LaunchAgents/com.user.disk-check.plist

后台启动下载监控

nohup ~/Scripts/notifications/download_watcher.sh &

确保脚本文件有执行权限(chmod +x script.sh)。如果使用 launchd,plist 文件需要放在 ~/Library/LaunchAgents/ 目录下。

对于重要的远程提醒,可以考虑集成 Slack 或企业微信 webhook,这样即使不在电脑前也能收到通知。

常见问题

Q: fswatch 在 Linux 上能用吗? A: fswatch 支持 macOS 和 Linux。在 Linux 上可以通过包管理器安装,或使用 inotifywait 作为替代。

Q: 如何停止定时任务? A: 使用 launchctl unload ~/Library/LaunchAgents/com.user.xxx.plist 命令停止对应的服务。

Q: 通知太频繁怎么办? A: 可以在脚本中添加去重逻辑或冷却时间,避免短时间内重复通知。也可以调整检查频率。