经过一段时间的内测和很长时间的思考,今天决定将 PasteMemo 完全开源。
相比走收费路线,开源能让更多人用上、也能让更多人参与进来,对这个项目的长远发展更好。从 v1.0.0 开始,所有功能完全免费,源代码基于 GPL-3.0 协议开放。
PasteMemo 是一款 macOS 原生剪贴板管理器,SwiftUI + SwiftData 构建,驻留菜单栏,不占 Dock 。
一句话概括:复制一次,随时访问,即刻粘贴。

自动检测剪贴板内容类型 — 链接自动抓取图标和标题、代码语法高亮、颜色显示色块、电话号码提供拨打/短信按钮。不只是存文本,每条记录都有智能预览。
按 ⌘⇧V(可自定义)在任何应用中唤起快捷面板,搜索、选择、粘贴,全程键盘操作。⌘1 ~ ⌘9 直接粘贴对应条目。

命令面板式操作:粘贴、纯文本粘贴、复制、置顶、编辑、删除,还有格式转换(转大写、URL 编码、清理追踪参数等),不用离开键盘。

复制多条内容,按顺序逐条粘贴。填表、录数据、批量操作的利器。支持文本拆分,一段文本按逗号/换行拆成队列。

基于「条件 + 动作」的规则引擎。比如:复制链接时自动清理 utm 追踪参数,复制邮箱时自动转小写。内置常用规则,也可以自定义。
.txt,截图粘贴为图片文件,直接拖入 Finderbrew tap lifedever/tap
brew install --cask pastememo
从 GitHub Releases 下载 .dmg:
PasteMemo-1.0.0-arm64.dmg — Apple Silicon (M1/M2/M3/M4)PasteMemo-1.0.0-x86_64.dmg — Intel Mac系统要求:macOS 14 (Sonoma) 或更高版本。
做这个项目的过程中一直在纠结要不要上架 App Store 走付费。后来想了很久,觉得对于一个日活不到 100 的小工具,与其花精力在商业化上,不如开源出来,让更多人用上,也欢迎感兴趣的开发者一起参与。
如果觉得有用,欢迎 Star 或者请我喝杯咖啡。
1
Yangpengxu 1 天前
优秀的作品,学习了,感谢老哥的开源项目
|
2
stinkytofux 1 天前
你要把别人卷死了
|
3
hugodotlau 1 天前
用了 raycast 后类似小工具很难有生存空间了
|
4
ares001 PRO 多设备同步是刚需
|
5
gefangshuai OP @ares001 #4 用爱发电付不起 688 ,这功能基本无望了
|
6
gefangshuai OP @hugodotlau #3 是的
|
7
needpp 1 天前
@hugodotlau 为何呢,能展开说说呢
|
8
slowman 1 天前
哥们功德无量
|
9
fromzero 1 天前
感谢分享,我也写了一个,我的痛点是跨平台同步。
|
10
Zenyet 1 天前
还是对 paste 这种交互比较喜欢,搞得我也想 vibe 一个了😂
|
11
beiguo 1 天前
优秀
|
12
yukminnie 1 天前
开源原生项目越来越多了,比心🫰
|
13
greatbody 1 天前
@hugodotlau 也不一定啊,这个接力模式看起来还挺有用的。
|
14
rechardwong0522 11 小时 6 分钟前
感谢老哥开源。对于 Swift 初学者来说,PasteMemo 的架构和难度适合用来学习吗?
|
15
hugodotlau 6 小时 36 分钟前
@greatbody raycast 你实际用试试,基本也差不多类似,至于接力拆分调节这种太小众需求了
|
16
slowman 5 小时 28 分钟前
搜索是不是没用,不管输入什么都 0 结果
|
17
aoizz 5 小时 4 分钟前 via iPhone
正在用,很好用,大佬能支持一下预览图片链接吗?复制的图片链接,无法预览
|
18
gefangshuai OP @aoizz #17 设置-偏好,打开网页预览
![]() |
19
gefangshuai OP @slowman #16 不应该啊,github 提个 issue ,详细说一下复现过程,我查查
![]() |
20
slowman 3 小时 27 分钟前
@gefangshuai 更新到 1.1.0 搜索没有问题了
|
21
gefangshuai OP @slowman #20 好的
|
22
slowman 3 小时 5 分钟前
@gefangshuai 给你发了支付宝口令红包,用工具 https://github.com/FiloSottile/age 和你的 github 私钥解密, 口令明文是 KB 开头
-----BEGIN AGE ENCRYPTED FILE----- YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1yc2EgUUF4cXF3CkNVSnhXdnZj NWdpZjQ4QkExMCtzNGUxeTFlWERUS2t5bFR0NlluMUhuY20xQVE3Q2V6c1ZsUnBG US94ODAwRmwKeTE3RUc1MklLQ0dobGFPalVUc3pBUEtLT09QaE1Lb0YvU1p3d3R5 bVVmK1FjOHZEQkE4OTBBZlFQdnBLOGNPZwpTOGx2THZMa255K3ZXemlnWkN5MW5V em1PRkJDSXdSRDZqYkNSd0xIdUU5dGt0QjY3Z0wvaEMzYjBZOEt6UGV3CjJDZnBk eHd0c0NtNmt5OG8xSkl4bDU3cWNpSGFhWU9hWFI3dXc3Z09ocnJwbE1RZGczdEkx SUc4bFJZZGM1S2EKS2w1eEtJMHF3bHJyQzhLTzIva3EwMnpwZlBHZUhVY2FWbjUv ZmZNVTdOZGpwa2xudlVEZTlrLzZTVkdwanZJNQowSnBFTVM3Q01uN0RaZkpuNmtt RDgzdHhCYTIyUUo5cGZySElxd3VzUTA2TW9NTFYrcjRHUlp5SmlsMXd5WUVTCm90 MTRBL05NOURDM0wzLzJZRGh6YXpzaUxYMU9OeFN2aEc4b3h3TjVQbkluOXlIcUdN RFUyMmY0YWsrSTVOcEYKZWpPS0VGY0hJbjF2MFEzd29BL0wzdHo3cW5BRmNGN2hy RzJmWUVQb0s5eWFrZDhDRzdWWFdLREt6NGxhbmk0YQowR3lhdkRubXR1WDdFaXZT ZDd1STZ3NFhERHZSYllLVkt2Qi9aZzhvWVF3NU1QRThkTzRmWTh1YldmMGpWWk1H CjlmNnpqRUZGYnBNLzM3S0VzTndiZmxySisxWE9IRVZndXVJSzZRcWZuUG5nY3dw Mmx3OGk0Y3pNQmlpZW56Z2wKallUaXdMK2NUSG90ekdycUdEbW1QOUxHRlJGYytZ WkFrQzk5enZXOGJPdwotLS0gUEZldDl6ZG14UnlzQ2tzSzhrZ0VON3M5ZjlQZUtt eFJpaWxFUW5nMTlXZwqfTunAoKDFUiicg/Ak1ECmEHL8hD/thkFWrq1cQqNkIGu5 qaCEECQ5SCM39Ns= -----END AGE ENCRYPTED FILE----- |
23
gefangshuai OP @slowman #22 解密失败。。。。
$ age -d -i ~/.ssh/id_rsa /tmp/msg.age age: error: failed to decrypt file key: crypto/rsa: decryption error age: report unexpected or unhelpful errors at https://filippo.io/age/report |
24
slowman 1 小时 54 分钟前
@gefangshuai 看到你二维码了,直接支付宝扫了
age 这个我来回用自己的 key 试了没问题,搞不清楚为什么会报错,看来这一套没人用还是有原因的 |