Tether:让 Linux 也能收发 iMessage

Tether: iMessage, SMS, etc. on Linux

Tether:让 Linux 也能收发 iMessage

当我全职转向 Linux 后,最怀念的不是 macOS 本身,而是 Apple 的 Continuity 功能,特别是 OTP 验证码的自动填充。现有的 KDE Connect 无法满足我的需求,于是我开发了 Tether。这个项目从剪贴板同步起步,通过 mTLS 确保安全,并借助 WebExtensions 解决了邮件验证码自动填充难题。最关键的突破是利用 Bluetooth 协议实现了 iMessage 和 SMS 的直连,无需依赖 Mac 作为代理。现在,Tether 已支持在 Linux 上收发 iMessage、短信、通知以及同步联系人,让 iPhone 与 Linux 的协作体验终于完整。

听起来微不足道,但那确实是我真正最怀念的功能!
  1. pzmarzly

    Personally, I think putting an interoperability protocol implementation behind a copyleft license is a little unfortunate!

    Huh, haven't thought of it. Just relicensed ancs4linux to MIT.

  2. voakbasda

    Mega-kudos to the author for chipping away at the wall around Apple’s garden.

    I have had a iPhone for 15 years, and I have only ever been able to back it up with iTunes on windows (as I will never buy a Mac).

    Apple’s refusal to provide interoperability borders on criminal. I wish there was a better option.

  3. amluto

    What’s the security story behind the iMessage integration? Why is iOS willing to send iMessage data over Bluetooth to a device that hasn't convinced Apple that it’s a validly authenticated device signed in as the same user?

  4. ThinkBeat

    This is all made possible by broker app on the iPhone / (or other device)

    to send data back and forward.

    When I first read the headline I thought it would integrate directly into the Apple ecosystem without needing middlemen which would have been crazy impressive since I believe it is or very near entirely impossible.

  5. blinkingled

    As a KDE Connect user for a few years I know it doesn't always work without reconnecting especially with sleep cycles on the phone and the laptop but it does everything on Android at least - clipboard sync, notifications, sms, calls, remote control and media playback control. Must be iOS restrictions that made the author go through the admirable effort.

    IOW Linux ecosystem has better vertical integration without any direct ties with Android :)

  6. pkulak

    Sorry if this is obvious, but does it use the same thing OpenBubbles does? What's nice about that is that it just hooks directly into Apple's servers, so doesn't require a connection to your phone or anything.

  7. harryposner

    The linked blueferry doc is excellent. Back in 2020, inspired by a comment on HN, I looked into writing a proxy to send and receive iMessages on Linux through an iPhone connected with Bluetooth Message Access Profile (MAP). I was able to send and receive messages, but I ran into the problem mentioned in the doc in the "Group metadata side channel" section: the bMessages in the inbox included the message originator, but didn't include the recipients, even though the MAP standard says that it "shall" be included (see page 22). I didn't know about ANCS, so it didn't occur to me to use that channel, and without any way to tell what context a message was sent in, I couldn't do threading, so I decided it wasn't worth pursuing.

    The group messages were the biggest problem, and that's what made me give up, but there were some other issues:

    - Shared links showed up as "Website: Short description (example.com)" and didn't include the URL

    - Images weren't shown at all

    I might take a look and see how blueferry handled those limitations.

    [blueferry doc] https://github.com/erikwb/blueferry/blob/main/PROTOCOL.md

    [inspiration] https://news.ycombinator.com/item?id=23411520#23413394

    [Bluetooth MAP standard] https://www.bluetooth.com/specifications/specs/message-acces...

  8. VladVladikoff

    Whoa this is so much better than having to send it via a BlueBubbles bridge, if this actually works I’m donating! Awesome project!

同日更多故事

2026-08-29