一、它到底是个什么
Tinycast 是一个纯原生 macOS 启动器:SwiftUI 加 AppKit 实现,零第三方依赖,没有 Electron,也不上报任何遥测。一个全局快捷键唤出命令面板,把一天里反复要找的东西收进同一处。它覆盖的能力很全:
- 应用启动(模糊搜索、置顶常用、看谁在跑、一键全退);全局快捷键与「单键映射到某个 App」的切换热键
- 文件搜索(走系统的 Spotlight,不自己建索引)、剪贴板历史(文字和图片都能搜、能回贴)
- 计算器:算式、单位、实时汇率和加密币换算都能在面板里直接算
- 窗口管理:34 个 Rectangle 式动作(左右半屏、四分屏、三分屏、移动显示器、全屏、Spaces)
- 系统操作(锁屏、睡眠、清空废纸篓、切深浅色、蓝牙、静音、显隐藏文件等)、Apple 快捷指令、片段模板
- 笔记(浮动编辑器里的纯 Markdown 文件)、emoji 选择、日历与会议(面板和菜单栏显示下一场,一键入会)
- AI 对话与 Quick Actions:改语法、重写、翻译、总结选中文本——默认全关,用自己的 key 或已装的 AI 账号
- 原生渲染运行 Raycast 扩展:你已有的扩展直接以 SwiftUI 原生界面跑,还能从 Raycast 导入设置
许可证是 AGPL-3.0(已核对 LICENSE 文件,标准全文之后没有任何追加条款)。一句话:它是把「Raycast 那一类启动器」用苹果自家技术栈重做了一遍,卖点是小、快、不偷数据、可审计。
二、怎么用(命令均取自 README)
先加第三方 tap,再按你的 Mac 选对应那行:
brew trust --tap abue-ammar/tinycast # required for third-party taps brew tap abue-ammar/tinycast
| 你的 Mac | 安装命令 |
|---|---|
| Apple 芯片,macOS 26 及以上 | brew install --cask tinycast |
| Intel,macOS 26 | brew install --cask tinycast-universal |
| macOS 15 Sequoia(不再维护) | brew install --cask tinycast-sequoia |
如果用 Homebrew 装,它会自动清掉隔离属性;如果你是从 Releases 页下的 DMG 直装,因为应用是自签名,要手动清一次 quarantine:
xattr -dr com.apple.quarantine "/Applications/Tinycast.app"
权限上,Accessibility(辅助功能) 是必开的:Tinycast 要把文字粘贴或展开到别的 App 里、以及做片段关键词展开,都需要它。首次用到相关功能会弹窗引导你去系统设置里授权。日常用法就五步:
- 设置 → 通用,录一个全局快捷键来唤起 Tinycast
- 在任意界面按一下,面板浮起,打字过滤,回车启动
- Tab 在「应用」和「剪贴板」之间切,上下键移动,Esc 关闭
- 设置 → 快捷键,给某个 App 或自定义命令录一个全局快捷键
- 设置 → 片段,开启后建带展开关键词的模板
三、优点与缺点
优点(都来自官方自述与仓库事实):
- 真原生:Swift 6、无 Electron、无遥测,自述常驻内存不到 100 MB
- 零第三方依赖、单仓库思路清晰,AGPL-3.0 且许可证干净
- 能复用 Raycast 扩展生态——这是它最狠的一招:不用抛弃你已配置的扩展
- 开发很上心:连公证、hardened runtime、更新器身份这类工程治理问题都开了专项 issue 认真推进
| 风险点 | 说明 | 出处 |
|---|---|---|
| 仍是自签名、未公证 | 直装 DMG 会弹「无法验证开发者」,须手动 xattr 清隔离;公证分两步走,第一步(hardened runtime)已合,切 Developer ID 还要再等 | #619 |
| macOS 26 优先 | 主 cask 只认 Apple 芯片 macOS 26+;Sequoia cask 标「不再维护」;README 徽章写「macOS 15+」但安装表要 26,自相矛盾 | #526 |
| Raycast 扩展是部分兼容 | 有扩展因运行时缺 fs.opendirSync 直接报错;子菜单被拍平,回车会误触发第一项 | #714 / #783 |
| AGPL-3.0 加贡献者协议 | 强 copyleft,改后分发要合规;另有 CONTRIBUTOR 协议把反馈无偿授权给维护者 | LICENSE / CLA |
| 闭源式治理 | 功能集刻意封闭,强制「先开 issue 再写代码」,不合范围 PR 直接关;基本单人维护 | CONTRIBUTING.md |
| 预 1.0、界面仅英文 | 最新稳定版 v0.10.x,beta 三天连发 89→96;中文界面支持有人提(6 赞)但尚未实现 | #566 |
其中最容易踩的是前两条。公证:维护者在 #619 里把切换签名身份拆成了四步,明确说如果直接换成 Developer ID,已装的用户会因为证书变化而永久拒收后续更新、只能手动重装,所以先只开 hardened runtime、等几周再切。结果就是——截至最新 README,安装说明里仍写着「self-signed,清一次 quarantine」。系统门槛:README 顶部徽章写「macOS 15 or later」,可安装表要求 Apple 芯片 macOS 26,Sequoia 的 cask 已被标「no longer maintained」;甚至 macOS 27 beta 的 cask 安装都报过 kLSNoExecutableErr(#526)。这两处「官方自述前后对不上」值得留意。
四、最终能达到什么效果
把它用顺之后,你得到的是一个常驻内存极小、不联网上报、能复用 Raycast 扩展的 Mac 命令中心:启动应用、切窗口、回贴剪贴板、算汇率、跑快捷指令、总结选中文字,都在一个面板里。对在意隐私和体积、又不想离开 Raycast 扩展生态的人,它是目前最顺手的开源替代。
下期预告:Mac 启动器横向对比——Tinycast / Raycast / Alfred / 系统聚焦,从内存、隐私、扩展生态、价格四档拆开,告诉你谁该用哪个。
