"写完这一段就休息。"
在电脑前工作时,这句话大概并不陌生。一段文字后面还有一段,一处问题改完又发现另一处。等到终于想起来活动一下,往往已经过去了很久。
休息提醒应用就是为这样的时刻准备的。市面上已经有不少选择,定时提醒本身也算不上新鲜功能。但做 Tick Rest 时,我依然有几个很在意的要求:它应该足够轻巧,适合长期在后台运行;代码公开,愿意研究的人可以看清它的实现;休息的节奏和提醒的样子,也应该留给用户自己决定。
于是,有了现在的 Tick Rest:一款免费、开源的 macOS 原生休息提醒应用。想先看看产品介绍或下载安装,可以直接访问 Tick Rest 官网,也可以到 GitHub 仓库 阅读说明和安装。
借这篇文章,聊聊我对这个小工具的要求,也介绍一下它目前能做什么。
常驻后台,先管好自己的开销
休息提醒应用有个特点:你可能一天都不会打开它的设置,却让它在后台运行了一整天。
大多数时候,它只需要计时,等到了合适的时候再显示提醒。对于这样的工具,我会格外在意它自身的负担。包体是否精简、运行有没有不必要的开销,都值得在开发时认真考虑。
这里可以简单聊聊几种桌面应用的做法。像 Electron,会把 Chromium 和 Node.js 一起打包,用网页技术构建界面,方便开发者在不同系统之间复用代码。代价是,应用也需要带上这套运行环境,即使功能不多,安装包仍然有一份基础负担。
Tauri 则做了不同的取舍:它使用系统提供的 WebView,在 macOS 上就是 WKWebView,不需要随应用再打包一套浏览器引擎,因此在控制包体方面更有优势。不过,它的界面依然通过网页技术呈现,界面与底层功能之间也需要相应的通信机制。
Tick Rest 使用 Swift、SwiftUI 和 AppKit 开发,界面直接交给 macOS 的原生框架。它既不需要捆绑浏览器引擎,也不需要为提醒卡片和设置窗口运行一层网页界面。对于一个功能明确、长期驻留后台的工具,这样的实现更直接:少一些额外依赖和运行环节,把包体和运行开销尽量留给实际需要的功能。
原生开发当然不意味着所有情况下都更快,实际表现还要看具体实现。但对 Tick Rest 来说,精简的分发体积、直接使用系统界面与窗口能力,都是实在的好处。代价是不同平台需要分别开发和维护,而我愿意为这个小工具做这样的取舍。
原生实现也体现在日常接触的细节里。界面支持浅色和深色外观,菜单栏可以查看倒计时、立即休息或暂停提醒。调整好设置后,就可以关掉设置窗口,继续做自己的事。
对一个常驻工具来说,这样的状态就很好:平时安静运行,需要的时候能顺手找到。
公开源码,让实现有据可查
除了原生开发,我还选择把 Tick Rest 的代码完整公开。
一个要长期留在电脑里的应用,用户有理由了解它如何工作。休息时间怎么计算,离席后怎么处理,记录保存在哪里,这些都可以在源码中找到答案。
当然,大多数人不会为了安装一个小工具,先去读一遍代码。但对于愿意研究的人,公开源码提供了核查和讨论的依据。遇到问题可以提交 Issue,也可以直接查看实现、贡献修复,或者按照开源许可自行修改和构建。
Tick Rest 无需注册账号,没有广告,设置和休息记录保存在本机。打开应用,选好方案,就可以开始使用。
作为一个个人维护的项目,我也希望 GitHub 能成为持续交流的地方。具体到某一次提醒为什么没有出现、某种设置是否符合预期,公开讨论往往比一句笼统的"好用"或"不好用"更有帮助。
项目地址:fthux/tick-rest-macos。
休息的节奏,可以自己选择
每个人对休息提醒的需求不太一样。有人只是希望隔一会儿把视线从屏幕上移开,有人需要提醒自己站起来,还有人已经习惯了番茄工作法。
Tick Rest 准备了几套休息方案,可以直接选用,也可以在此基础上修改。

休息方案页面:选择预设后,可以继续调整间隔与时长。
默认方案把短休息和长休息放在一起。 每工作 20 分钟,提醒休息 20 秒;累计工作 60 分钟,再安排一次 5 分钟的休息。短休息不会清空长休息的累计时间,两种提醒各有分工:前者适合短暂移开视线,后者留出时间起身走动。
如果只想保留定期远眺的提示,可以选择护眼方案。它默认每 20 分钟提醒一次,每次 20 秒,设置起来很简单。
50/10 方案的节奏更容易记:工作 50 分钟,休息 10 分钟。如果你习惯把写作、阅读或其他工作安排成较完整的时间段,可以从这套方案试起。
番茄工作法则按轮次安排。默认每轮专注 25 分钟,轮间短休息 5 分钟,完成 4 轮后进入 15 分钟的长休息。习惯用番茄钟推进任务的人,可以直接沿用熟悉的节奏。
这些方案也可以放在一起看:
| 方案 | 默认安排 |
|---|---|
| Tick Rest 默认 | 每工作 20 分钟短休息 20 秒,累计工作 60 分钟长休息 5 分钟 |
| 护眼 | 每工作 20 分钟,休息 20 秒 |
| 50/10 | 工作 50 分钟,休息 10 分钟 |
| 番茄工作法 | 每轮专注 25 分钟,短休息 5 分钟,4 轮后长休息 15 分钟 |
预设只是一个方便开始的地方。用过一段时间后,如果觉得提醒太频繁、休息太短,或者自己的工作习惯不适合整齐的时间分段,都可以调整间隔和时长,保存为自定义方案。延后多久、允许延后几次,也可以一起设置。
切换休息方案时,已经选好的提醒样式、语言等偏好会保留下来,不需要重新配置一遍。
工作时间之外,也可以让提醒停下来。Tick Rest 支持设置工作时段,并提供离席检测:启用后,根据键鼠闲置情况推测是否离席,再相应调整计时。离开时间达到所选方案的条件后,会重置相应的休息周期。这项功能也可以关闭,比如你经常长时间阅读、不操作键鼠的时候。

工作时段、离席检测与全屏暂缓提醒可以分别设置。
提醒的样子,也应该由你决定
选好多久休息一次,接下来就是:时间到了,怎样提醒?
Tick Rest 提供小窗和全屏两种方式。两者的区别很直观,选择哪一种,取决于你希望提醒有多明显。
小窗提醒适合想保留当前工作画面的人。 到时间后,屏幕上会出现一张提醒卡片,显示休息内容和倒计时。它有标准、小号、迷你三种尺寸,也可以折叠,减少对工作区域的遮挡。
如果你觉得普通提醒容易被忽略,可以用标准尺寸;如果屏幕空间比较紧张,或者只需要一个简短提示,小号和迷你会更合适。

标准尺寸的小窗提醒,可以查看倒计时,也可以跳过或延后。
全屏提醒会更直接一些。 当休息开始,提醒界面覆盖所选屏幕,把注意力从手头的窗口里拉出来。如果自己经常忽略小窗,可以试试这种更明显的提醒方式。
全屏背景可以选择纯色、渐变或图片。喜欢简洁,可以用纯色;想让画面柔和一些,可以用渐变;也可以选一张喜欢的图片作为背景。

图片背景可以在设置里预览效果,再决定是否使用。

全屏图片背景的实际提醒效果。
这部分提供外观选择,是因为它会反复出现在每天的使用中。既然要经常看到,选一个自己看着舒服的样子很有必要。应用也支持多显示器,可以根据桌面的实际配置调整提醒显示方式。
提醒到来时,手上的事情未必正好告一段落。比如一段文字只差最后几句,或者一个操作正在进行,这时可以选择延后,稍后再休息。也可以从菜单栏暂停提醒,或者提前开始一次休息。
对于全屏使用应用的场景,Tick Rest 还提供了暂缓提醒的选项。这些设置不需要第一次打开时就全部研究完,先选好一套方案和一种样式,再根据实际使用慢慢调整就行。
如果想了解更多细节,可以去 官网 看看,也可以到 GitHub 仓库 阅读说明和源码。更欢迎直接装上 Tick Rest 用一用,试试哪种休息方案和提醒样式适合自己。下面是安装方法。
从安装开始,把休息放进日常
Tick Rest 支持 macOS 13 Ventura 及更新版本,同时提供 Apple Silicon、Intel 版本和通用版本。
Tick Rest 是个人维护的免费开源项目。考虑到 Apple 开发者计划的年度费用,我暂未加入该计划,因此应用尚未使用 Developer ID 证书签名,也未经过 Apple 公证。
推荐通过 Homebrew 安装。 如果电脑已经装好了 Homebrew,在终端执行:
bash
brew install --cask fthux/tap/tickrest
也可以前往 GitHub Releases 下载 ZIP 安装包,解压后把 Tick Rest 拖入「应用程序」文件夹。Apple Silicon 选择 arm64,Intel 选择 x86_64,universal 则兼容两者。
由于目前尚未签名和公证,首次打开时,macOS 可能提示无法验证开发者并阻止启动。确认应用来自本项目后,可以前往「系统设置 → 隐私与安全性」,点击「仍要打开」并确认。具体操作可参考 Apple 官方说明。
首次启动会引导你选择休息方案和提醒方式。选好后,就可以让它开始计时了。其余设置等用到时再改,不必一次配齐。
关于 Windows
如果你主要使用 Windows,Tick Rest 的 Windows 原生应用也正在积极地开发中。后续有可以使用的版本,我会再介绍。
Tick Rest 还会继续完善。如果你试用了它,欢迎在 GitHub 留下遇到的问题,也欢迎聊聊自己的休息习惯:哪种方案更容易坚持,提醒是太频繁还是不够明显,哪些地方还不顺手。当然,吹水也同样欢迎。
希望这个小工具能在你又一次想着"忙完再休息"的时候,提醒一句:已经忙了一阵了,起来走走吧。