Cardinal 是 macOS 上最快最准的文件搜索 App,1.6k Stars 开源免费。支持 Everything 兼容语法(空格 AND、通配符、大小过滤、路径限制、Finder 标签、内容搜索等),全局快捷键 Cmd+Shift+Space 即开即搜,原生支持 15 种语言免费用即可。

🎤 引言

Windows 用户有个神器叫 Everything——秒级索引百万文件,输入几个字符立刻出结果。macOS 用户?系统自带的 Spotlight 慢吞吞、Alfred 收费、第三方搜索要么卡要么难用。

Cardinal 想做的事情非常直白:把 Everything 的体验搬上 macOS。1.6k stars、867 次 commit、MIT/Apache 协议(仓库待确认)、基于 Rust + Tauri 构建——它不是又一个 Spotlight 套壳 App,而是从头实现了一套完整兼容 Everything 语法的搜索引擎。

Cmd+Shift+Space 唤起,输入 report draft,空格自动作为 AND 运算,瞬间列出所有文件名同时包含这两个词的文件。用过 Everything 的人秒懂这是什么体验


⭐ 核心功能

Everything 兼容语法层

这是 Cardinal 最硬核的特性——完整移植了 Windows Everything 的搜索语法,macOS 老用户和从 Windows 迁移过来的开发者的体验完全一致:

语法含义示例
空格AND 运算report draft 同时含两个词
*.ext扩展名过滤*.pdf briefing 找 PDF 中带 briefing 的
size:>100MB大小过滤*.zip size:>100MB 找大 ZIP
in:/path路径限制in:/Users demo !.psd 在 /Users 下找 demo 排除 psd
tag:NameFinder 标签tag:ProjectA;ProjectB; 表示 OR)
content:"..."内容搜索*.md content:"Bearer "
"exact"引号精确匹配"Application Support"
path/sub路径分隔符brary/Applicat 找 Library/Application Support
/prefix /suffix /exact/强制匹配/report draft/ /report/
~/**/*.extGlobstar~/**/.DS_Store 全盘找残留 .DS_Store

完整操作符目录(布尔分组、正则、目录限定等)见 doc/pub/search-syntax.md

即时索引(Everything 同款体验)

基于 Rust 构建的索引器在后台持续扫描文件系统,首次启动后几乎瞬间就能搜索整个磁盘。输入查询 → 几乎无延迟 → 结果按相关性 + 文件属性排序。这跟 Spotlight 的"先索引几分钟再能用"完全不同。

全局快捷键 + 快速预览

  • Cmd+Shift+Space —— 全局快速启动,随处唤起。
  • Space —— Quick Look 预览选中文件,无需打开 App。
  • Cmd+O —— 直接打开。
  • Cmd+R —— 在 Finder 中显示。
  • Cmd+C / Cmd+Shift+C —— 复制文件 / 复制路径。
  • Esc —— 一键隐藏窗口。
  • Cmd+F —— 焦点回到搜索框。
  • Cmd+, —— 偏好设置。
  • ArrowUp/Down / Shift+ArrowUp/Down —— 移动 / 多选。
  • 搜索框内 ArrowUp/Down —— 翻历史搜索。

原生 i18n

仓库 README 已经收录 15 种语言:English / Español / 한국어 / Русский / 简体中文 / 繁體中文 / Português / Italiano / 日本語 / Français / Deutsch / Українська / العربية / हिन्दी / Türkçe。

状态栏点 ⚙️ 按钮即时切换,不用重启 App

技术栈现代化

  • Rust 写核心引擎(cardinal-sdk + cardinal-syntax)
  • Tauri 写桌面壳(Rust 后端 + Web 前端)
  • Node.js 18+ 提供前端工具链
  • 比纯 Electron App 小一个数量级的安装包 + 内存占用

📥 安装与使用

Cardinal 的安装方式分两种。

Homebrew 安装(推荐)

brew install --cask cardinal-search

一行搞定,自动放到 /Applications,Launchpad 里直接搜 Cardinal 启动。

手动安装

GitHub Releases 拉最新 .dmg,拖入 /Applications 文件夹即可。

系统要求

  • macOS 12+
  • 第一次启动需要授予"磁盘访问权限"(系统设置 → 隐私与安全 → 完全磁盘访问权限),否则搜不到结果。

首次配置

  1. 启动 Cardinal → 状态栏出现 🔍 图标。
  2. Cmd+Shift+Space 唤起主窗口。
  3. 输入测试关键词,例如 *.pdf → 验证是否能列出所有 PDF。
  4. 点 ⚙️ 切换界面语言。
  5. 索引会后台持续运行,几分钟后覆盖整个磁盘。

日常使用

  • 全局快捷键唤起 → 输入 → 选文件 → Enter 或 Cmd+O 打开
  • 临时筛选:在搜索框加修饰(*.md, in:~/Downloads 等)
  • 找特定类型大文件:*.log size:>50MB
  • 找散落的配置文件:~/**/.DS_Store~/**/thumbs.db
  • 找某标签下的文件:tag:Work;Personal(OR 关系)

自定义快捷键

在偏好设置 (Cmd+,) 里可以改全局快捷键,与其他 App(Raycast、Spotlight)冲突时也能灵活调整。

开发 / 自构建

需要修改源码或参与贡献:

git clone https://github.com/cardisoft/cardinal
cd cardinal/cardinal
npm install
npm run tauri dev -- --release --features dev

生产构建:

cd cardinal
npm run tauri build

需要 Rust 工具链 + Node.js 18+ + Xcode 命令行工具。


🎯 适用场景

谁最适合装一个 Cardinal?

  • 从 Windows 迁移到 macOS 的开发者:Everything 用习惯了,Spotlight 各种不顺手,Cardinal 是无缝迁移方案。
  • 重度文件管理用户:设计师(找 PSD/Sketch)、视频剪辑(找素材)、开发者(找代码片段)、律师(找文档)——任何需要"快速定位某个具体文件"的场景。
  • 磁盘空间焦虑患者size:>500MB *.zip 一键列出所有大 ZIP,*.log size:>100MB 找占空间的日志,*.dmg size:>1GB 找下载残留。
  • 强迫症清理党~/**/.DS_Store 找出所有隐藏的系统文件残留,*/Thumbs.db 同理。
  • 多语言 / 国际化用户:界面原生支持 15 种语言,中文 / 英文 / 日文 / 韩文 / 西语用户都能直接用。
  • 不喜欢订阅制的工具控:开源免费,无需付费买 Alfred Powerpack 这种订阅套餐。

🔍 对比 / 替代方案

macOS 上的文件搜索工具不多,Cardinal 的位置可以这么看:

系统自带

  • Spotlight:系统内置,免费,但索引慢、语法弱(基本只能模糊匹配),对开发者的复杂查询支持很差。
  • Finders 搜索:Finder 自带搜索条,体验类似 Spotlight 但可以指定文件夹,对全盘搜索束手无策。

第三方经典

  • Alfred:macOS 经典效率工具,免费版基础功能够用,Powerpack 付费 才能解锁自定义搜索 + Workflow。搜索体验其实比 Spotlight 强很多,但和 Everything 的"毫秒级全盘"还是有差距。
  • Raycast:Alfred 的强力挑战者,免费版功能极强(剪贴板历史、窗口管理、快捷启动),文件搜索是其中之一但不是核心卖点。
  • HoudahSpot:老牌专业搜索工具,UI 复古但搜索能力强,付费软件。

Everything 移植派

  • Cardinal:本文主角,完整兼容 Everything 语法,Rust + Tauri,性能强。
  • fzf / ripgrep:终端党的命令行方案,体验顶级但需要会终端。
  • Hammerspoon 自定义:极客方案,自己写脚本拼 Everything 体验。

Cardinal 的差异化

  • 唯一完整实现 Everything 语法的 macOS 原生 GUI 工具——其他要么没 GUI、要么语法残缺。
  • Rust + Tauri:比 Electron App 小 10 倍以上,启动 < 1 秒。
  • 15 种语言原生支持,状态栏一键切换。
  • 完全开源免费,无订阅、无广告、无内购。
  • Finder 标签集成——这是 macOS 独有的特性,Cardinal 原生支持 tag:ProjectA 语法。
  • ⚠️ 仅 macOS——Linux/Windows 用户还是用原生 Everything。

⚠️ 注意事项

客观地讲几个坑:

  • 仅 macOS:Linux 和 Windows 用户请继续用原生 Everything,Cardinal 不跨平台。
  • 首次启动需授予"完全磁盘访问权限":这是 macOS 系统限制,没权限搜不到系统级目录(/Library/Applications 等)。不授权也能用,只是搜得不全
  • 首次全盘索引需要几分钟:索引器后台跑,几分钟后覆盖整个磁盘。期间搜索结果可能不完整。
  • 不支持 Windows 平台的 Everything 全部特性:比如 regex: 正则、dupe: 查重、empty: 查空文件夹等高级操作符,Cardinal 当前版本不一定全支持。迁移前请看 doc/pub/search-syntax.md 确认。
  • 与 Spotlight / Raycast 冲突:如果全局快捷键冲突,需要在系统设置或 Cardinal 偏好里改。
  • GitHub Copilot 提交:项目里有大量 [Copilot] 提交,是作者用 GitHub Copilot 协作开发的产物。代码 PR 质量没问题,但 review 时建议多加注意
  • iCloud 文件路径:iCloud Drive 里的"未下载"文件可能被识别为占位符,需要先下载才能搜到完整内容。
  • dmg 文件版本号可能滞后 Homebrew:Homebrew Cask 通常更新更及时,追求最新版优先 brew 升级
  • 39 个 open issues + 11 个 PR:项目活跃但功能仍在迭代,部分边缘场景可能临时有 bug。

✅ 总结

Cardinal 是 macOS 上目前最接近 Everything 体验的开源文件搜索工具——Rust 性能 + Tauri 轻量 + Everything 完整语法 + 15 种语言原生支持 + 全免费开源。Spotlight 慢、Alfred 收费、HoudahSpot UI 复古的尴尬局面,从今天起有了第四个正经选项。

  • ✅ 完整兼容 Everything 搜索语法(空格 AND、通配符、大小过滤、路径限定、标签、内容、正则等)
  • ✅ Rust + Tauri,启动快、内存小、性能强
  • ✅ 全局快捷键 Cmd+Shift+Space 即开即搜
  • ✅ 15 种语言原生支持,状态栏一键切换
  • ✅ Finder 标签原生集成(macOS 独有特性)
  • ✅ 完全开源免费,无订阅、无广告
  • ✅ Homebrew 一行安装
  • ⚠️ 仅 macOS 平台
  • ⚠️ 需要授予"完全磁盘访问权限"
  • ⚠️ 首次全盘索引需要几分钟
  • ⚠️ 部分 Everything 高级操作符(regex、dupe、empty 等)暂未完整支持
  • ⚠️ 项目仍在 0.x 迭代,39 个 open issues

推荐指数:⭐⭐⭐⭐⭐ (5/5)

适合:从 Windows 迁到 macOS 的开发者、重度文件管理用户、磁盘空间焦虑患者、找大文件 / 找隐藏文件的清理党、Everything 铁粉、需要多语言切换的国际化用户。

不适合:只用 Spotlight 就够用的轻度用户、Windows/Linux 用户(继续用 Everything)、需要 Everything 全套高级操作符(regex/dupe/empty)的极客。

如果你在 macOS 上经常为"找不到那个文件"而烦躁,强烈建议装一个 Cardinal——brew install --cask cardinal-search 一行命令,然后用 Cmd+Shift+Space 体验一把 Everything 那种"键入即所得"的丝滑。


Cardinal — Everything's macOS cousin.