分类:科技 标签:独立开发、Mac应用、开源项目、产品设计


引言:从泳池边的几百行代码说起

去年国庆期间,作者在三亚的泳池边写下了几百行代码,制作了一款名为 Mole 的 Mac 清理命令行工具,并作为开源项目发布到 GitHub 上。最初的动机很简单,只是为了方便自己和同事使用。

然而,项目的受欢迎程度超出了预期。不到一年时间,Mole 在 GitHub 上收获了超过 60K star,发布了 50 多个版本,全球有 121 位开发者贡献了代码,解决了近 800 个功能建议和 Bug。

随着越来越多非技术用户(如父母和妹妹)提出“不想敲命令”的需求,作者萌生了开发 Mac 桌面付费软件的想法。经过大半年的打磨,当桌面版正式发布时,它不仅验证了独立开发的商业价值,更让作者在与全球用户的真实互动中,重新审视了什么是真正的好产品。


AI 时代多出来的“三类数字垃圾”

桌面端推出后,作者发现自己用得最多的功能反而是清理,因为高强度的 AI 编码(如 Claude Code、Codex)让 Mac 的硬盘不堪重负。AI 时代留下的数字垃圾与传统软件大不相同,主要分为三类:

  1. 编译产物与缓存:AI 驱动的 Agent 会高频进行多轮循环,导致 Rust 项目的 target、前端的 .next、Xcode 的 DerivedData 迅速膨胀,单次清理甚至能清出 86GB 的数据。
  2. AI 工具的旧版本:Claude Code、Cursor Agent 等工具通常采用自动更新机制,每次下载全新版本(约 250MB)却从不主动清理旧版本,日积月累留下大量冗余。
  3. 本地模型文件:Ollama、LM Studio 拉取的模型以及 HuggingFace 缓存,动辄占用数十 GB 空间。

巧妙的安全分级策略

为了避免误删重要数据,Mole 建立了一套严谨的三档清理逻辑:

  • 第一档(可再生):HTTP 缓存、GPU 缓存、编译产物。路径明确且 App 已退出,可直接清理 -> 默认勾选。
  • 第二档(重建代价高):包管理器缓存、本地模型权重。可以重建但耗时耗网 -> 需用户人工确认。
  • 第三档(不可替代):聊天记录、邮件库、AI 会话记录(如 ~/.claude/projects)。这里沉淀了数月的对话思路与方案,永远受保护,绝不自动清理。

产品哲学:克制、安全与倾听

1. 先看一眼再删:宁可漏删,绝不误删

市面上很多清理工具为了追求“高效”往往替用户做决定,而 Mole 坚持“扫描 -> 逐项列出 -> 用户确认 -> 执行”的流程。例如系统更新安装包(macOS Install Data),如果系统内有更新待装或进程运行中,工具会进行多重校验,确保不会因为盲目清理导致系统崩溃。

2. 润物细无声:平时绝不打扰

优秀的工具应当具备良好的边界感。Mole 在安装后不会隔三差五弹窗轰炸,也不用贩卖焦虑。扫描动画干脆利落,没有多余的干扰。

3. 一封封手工回邮件的价值

在自动化工具泛滥的今天,作者坚持亲自回复用户的每一封咨询、退款或建议邮件。正是通过这些真实坦诚的交流,作者得以修正对地区习惯(如美区默认摄氏度)的误解,倾听视障用户的深色模式需求,并听取全球各地用户的真实反馈。


独立开发的核心思考

  • 代码只占三成:做产品更核心的功底在于将个人痛点与大众需求相结合,打造一个“无需看说明书就能上手”的流畅体验。
  • 克制比扩张更重要:如无必要,勿增实体。拒绝盲目堆砌功能,明确应用的核心边界,才能保持长期的生命力与易维护性。
  • 把产品当作品牌建设:在虚假繁荣的 AI 时代,信任是最宝贵的资产。通过持续创造价值与真诚沟通,将个人思考融入品牌,才能走得更远。

总结

Mole 桌面版通过清理、卸载、优化、磁盘分析、硬件状态五大模块(对应五颗行星),为 Mac 用户提供了一个安静、优雅的系统维护守护者。从开源 CLI 到付费桌面软件的成功转型证明:世界上最好的工作,大概是持续学习的人在自由市场里,用自己的判断力、能力和审美持续创造价值。