The project's README from github.com/MuQY1818/OpenYoink. As one markdown file: README.md.
随手一拖,先放一下。
原生 macOS 拖拽暂存架。把文件、文本、图片和链接暂存在屏幕边缘或 Mac 刘海, 切换到目标位置后再继续拖。
[!NOTE] 当前稳定版 v1.6.6 默认不再让文件拖拽靠近顶部时展开灵动岛,避免干扰浏览器标签页操作;右侧暂存架仍可由真实文件靠近屏幕边缘时展开,也可在设置中单独开启顶部触发。完整教程见使用文档。
在 Finder、浏览器、邮件等应用之间搬东西时,目标窗口往往不在眼前。OpenYoink 给内容一个临时落脚点:先拖进屏幕边缘或 Mac 刘海,切换窗口后再拖到目标位置。
OpenYoink 常驻菜单栏,不显示 Dock 图标。需要时出现,用完后收起。
⌘ 拖入启用托管移动,详见文件安全与生命周期。系统要求:macOS 15 Sequoia 或更高版本。 Release 构建同时面向 Apple Silicon 与 Intel Mac。
brew install --cask muqy1818/tap/openyoink
Homebrew cask 下载对应版本的 GitHub Release DMG,并在安装后移除这一应用的隔离属性,通常不会出现 Gatekeeper 拦截。该步骤不改变安装包签名,也不等同于 Apple 公证。安装后可由 Sparkle 检查后续更新。
Applications。[!NOTE] GitHub Releases 中的免费社区构建使用 ad-hoc 签名,未经过 Apple 公证,因此首次手动安装可能触发系统提示。Sparkle EdDSA 签名保护的是更新包完整性,不能替代首次下载校验或 Apple 公证。
仅在确认应用来自上面的 OpenYoink 官方 Release 地址后使用。可以先运行 shasum -a 256 OpenYoink-VERSION.dmg(把 VERSION 换成实际版本号),并与同版本 Homebrew cask 中的 sha256 比对。下面的命令会明确绕过这一个应用的 Gatekeeper 隔离检查:
xattr -dr com.apple.quarantine /Applications/OpenYoink.app
| 操作 | 方式 |
|---|---|
| 显示 / 隐藏 | ⌘⇧Space、菜单栏菜单,或单击屏幕边缘的拉环 |
| 添加内容 | 拖到暂存架或边缘拉环上 |
| 移动而非引用 | 按住 ⌘ 拖入文件或文件夹 |
| 暂存剪贴板 | 连按两次 ⌘⇧Space |
| Quick Look | 选中卡片后按 Space,或双击卡片 |
| 多选 | 按住 ⌘ 点选,或在空白处拖动框选 |
| 移除 | 悬停后点 ×、按 Delete,或右键菜单 |
| 调整位置 | 沿屏幕边缘拖动拉环,或在设置中选择位置 |
| 开启 / 关闭 Island | 设置 → 通用 → OpenYoink Island |
| 内容 | OpenYoink 的处理方式 |
|---|---|
| 文件与文件夹 | 默认保留对原位置的 sandbox bookmark,不复制到暂存架 |
| 纯文本与链接 | 直接记录在暂存架数据中 |
| 图片、HTML 与 RTF | 在应用沙箱的托管目录中物化为文件 |
| 联系人、日历事件与邮件 | 来源应用提供可读数据时,物化为 .vcf、.ics、.eml |
拖出普通文件时,OpenYoink 提供文件 URL 与 Chromium 兼容的文件名表示,兼容 Finder、Safari 和常见 Chromium 浏览器上传区域;托管移动项目使用可确认落盘的 file promise,交付成功后才离架。是否接受最终仍由目标应用或网站决定。
⌘ 拖入时,OpenYoink 先把内容复制到应用沙箱的托管目录并确认副本存在,再把原文件移入废纸篓。任一步失败都保留原文件并回退为普通引用。原文件仅在废纸篓尚未清空时可恢复。Application Support/OpenYoink,可在 设置 → 存储 打开数据目录或清理未使用文件。开发环境需要 macOS 15+ 与 Xcode 26+。
git clone https://github.com/MuQY1818/OpenYoink.git
cd OpenYoink
xcodebuild \
-project Open-Yoink.xcodeproj \
-scheme OpenYoink \
-destination 'platform=macOS' \
build
xcodebuild \
-project Open-Yoink.xcodeproj \
-scheme OpenYoink \
-destination 'platform=macOS' \
test \
-only-testing:OpenYoinkTests
本地构建无需设置 DEVELOPMENT_TEAM。项目使用 SwiftUI 渲染界面,以 AppKit 管理窗口、拖放和全局事件;测试覆盖持久化、拖入拖出、快捷键、触发器和布局等核心行为。
维护者可通过 Scripts/make-release.sh 生成 Developer ID + 公证的正式构建,或显式使用 --adhoc 生成免费社区构建。脚本不会在签名失败时静默降级发布模式。
欢迎提交 Issue 和 Pull Request。
Roadmap 表示探索方向,不承诺具体版本或时间;优先级会根据稳定性和用户反馈调整。
OpenYoink 是独立的开源实现,与商业应用 Yoink 及其开发者没有隶属、授权或背书关系。自动更新由 Sparkle 提供。
第三方组件与许可证见 THIRD_PARTY_NOTICES.md。项目基于 MIT License 开源。
© 2026 weijue · MIT License