/

All Blogs

From infrastructure
to real-world AI.

All

Engineering

Comparison

Feature

Product

Customer Story

Founder

Feature

Aug 12, 2026

Give Your Mastra Agent an iMessage Number, Using Photon

Mastra agents can now send and receive iMessages via Photon Spectrum by installing the @photon-ai/chat-adapter-imessage, adding it to the agent’s configuration, and providing Photon credentials; Photon provisions dedicated iMessage numbers in the cloud, handling delivery, retries, and presence, while Mastra offers declarative channel setup, deduplication, and full traceability, enabling seamless, scalable iMessage integration without needing a Mac or personal Apple ID.

Julie

Product

Aug 12, 2026

What Is an iMessage API? The Complete Guide for Developers and Businesses

"Is there an iMessage API?" is one of the most-asked questions in our Discord, and the honest answer: *no official one exists, but here's how it actually works* — deserves more than a one-line reply. At Photon, we operate iMessage infrastructure that handles millions of API calls a day, which means we know exactly where the real protocol ends and the spoofed blue bubbles begin. This guide is the full answer: why Apple ships no public API, how managed infrastructure closes the gap, what native features you can genuinely send, and how to vet a provider without getting burned by an SMS gateway in a blue costume.

Julie

Comparison

Aug 12, 2026

iMessage vs RCS vs SMS: A Guide for Developers Building Messaging Apps and AI Agents

At Photon, we spend all day inside the plumbing of consumer messaging. Spectrum, our open-source framework, routes millions of messages daily across iMessage, RCS, SMS, WhatsApp, and Telegram, which means every routing decision, encoding quirk, carrier fallback, and Apple platform change lands on our infrastructure first, before it ever becomes a blog post. So we wrote the guide we wish we could just link people to. It covers how each channel actually works under the hood, where the support boundaries really are as of mid-2026, and when each one is the right tool. Yes, we build a product that makes the answer "all three, automatically". We'll show you how at the end. But the first 90% of this guide is channel-agnostic and useful whether you ever touch Spectrum or not.

Julie

Engineering

Aug 7, 2026

We found a kernel memory leak in macOS that any shell script can trigger

A Mac mini in our fleet became unresponsive after 37 days of uptime. The kernel had wired 15.1 GB of the machine’s 16 GB of memory. Only 67 MB remained free, the load average was 250, and the system could no longer fork a process. Photon runs Mac hardware continuously for our iMessage API relays. We found that every Mac we checked was accumulating wired memory at a steady rate. At the observed rates, the fastest machine would exhaust its memory in about five weeks. The cause was a kernel memory leak triggered by nested `#!` scripts. The leak can be reproduced with six lines of shell. It does not require administrative privileges, and the allocated memory is released only after a reboot.

Tom

Feature

Aug 6, 2026

NanoClaw Now Supports iMessage — Powered by Photon

NanoClaw now offers hosted iMessage support through Photon, eliminating the need for a local Mac, personal Apple ID, or hardware management; agents can send and receive texts, attachments, reactions, typing indicators, read receipts, and effects on any OS via Photon’s cloud infrastructure, with simple setup using a Photon account and NanoClaw’s setup commands.

Ryan

Jul 16, 2026

How Photon built one of the most stable and enterprise-ready iMessage APIs

Photon processes over 10 million iMessage API calls per day across production deployments for companies like Rho, Vercel, Hermes Agent, Ditto, and FlipText. The platform achieves the same uptime, delivery speed, and feature coverage as Apple's own iMessage service — not through incremental improvements to the standard Mac-bridge architecture, but through a fundamentally different technical approach. This post breaks down the three engineering layers that make that possible: protocol-native Apple communication, Astrolabe (our open-source macOS fleet manager), and enterprise cloud routing on AWS EKS.

Ryan

Engineering

Jul 14, 2026

Auto-scaling and load balancing for iMessage

Your iMessage lines now scale themselves. Route users to the healthiest line with a single API call.

Ryan

Engineering

Jul 13, 2026

You can now send Live Mini App Cards in iMessage

Spectrum now supports live, interactive mini app cards inside the iMessage transcript — plus in-place updates so cards can react in real time.

Evan

Ryan

Engineering

Jul 8, 2026

We built the most feature-complete iMessage adapter for Vercel Chat SDK

We upgraded our Chat SDK iMessage adapter to Spectrum — the result is the most feature-rich and reliable iMessage integration in the ecosystem, with tapbacks, effects, mini-app cards, webhooks, and more.

Andy

Tom

Engineering

Jul 3, 2026

How We Rebuilt Our Shared iMessage Routing to Handle 10M+ Messages a Day

We migrated the iMessage routing service from Bun to Node, added OpenTelemetry tracing, replaced a fragile fan‑out architecture with a durable Postgres‑backed event log, fixed a binding‑cache bug that dropped messages on transient errors, and switched the OTLP exporter to gRPC, resulting in a simpler, observable, and more reliable system that can handle over a million messages daily.

Ryan

Tom

Feature

Jun 30, 2026

Astrolabe: Managing Mac Fleets at scale

Terraform changed how teams think about cloud infrastructure: declare the desired state, apply it, and let the tool keep reality in sync. Astrolabe brings that same model to macOS. If you run Macs in a fleet — inference nodes, CI runners, developer workstations, kiosks — you've probably stitched together shell scripts, MDM profiles, and manual checks to keep machines in shape. Astrolabe replaces that patchwork. Declare your macOS configuration in Swift with a SwiftUI-like syntax, and Astrolabe continuously enforces the state you described. No setup scripts. No periodic audits. Just a declaration that enforces states.

Ryan

Feature

Jun 25, 2026

Spectrum supports sending markdown in iMessage, Telegram, and WhatsApp

Spectrum now lets you send styled text in iMessage, Telegram, and WhatsApp — bold, italic, strikethrough, and code blocks — written in standard Markdown.

Comparison

Jun 18, 2026

BlueBubbles vs Photon: iMessage setup options for Hermes Agent

Short answer: use BlueBubbles if you have a Mac that you don’t use for personal or work, want full local control, and are comfortable maintaining the bridge yourself. Use Photon if your Hermes agent runs on Mac, Linux, Windows, Docker, a VPS, or any managed server, and you want iMessage, SMS, and RCS without turning a personal Mac into production infrastructure.

Photon

Comparison

Jun 11, 2026

Photon vs Sendblue: choosing an iMessage API for AI agents

There is no official Apple iMessage bot API. If you want an AI agent to send and receive iMessages, you have to choose between a few imperfect paths: sales-oriented iMessage APIs like Sendblue, Mac-based bridges like BlueBubbles, local automation, experimental protocol projects, or Photon. Photon is built for teams that want the iMessage experience, but also need the broader interaction layer around it: managed messaging, SMS and RCS fallback, real-time agent conversations, and a framework that can grow beyond one channel.

Photon

Engineering

Jun 11, 2026

We brought Hermes Agent to iMessage, even on Linux and Windows

Hermes Agent can now connect to iMessage through Photon Spectrum. Choose Photon as the channel, complete setup, and your Hermes agent can send and receive iMessages without running on a Mac.

Photon

Engineering

Jun 1, 2026

How to build an iMessage agent in 2026: every approach compared

Short answer: there is no public Apple iMessage bot API. If you want an agent to send and receive iMessages, the practical paths are BlueBubbles or another Mac-based bridge, AppleScript automation, pypush-style protocol experiments, or a managed platform. Photon is built for the last path: production iMessage agents with a real API, managed iMessage lines, SMS and RCS fallback, and the same Spectrum agent model you can use across other messaging surfaces.

Ryan

Feature

May 22, 2026

Introduce background customization in iMessage

Apple introduced conversation background customization in iMessage with iOS 26. Today, Spectrum takes it a step further with a new API that allows developers to programmatically personalize iMessage backgrounds for each conversation.

Ryan

Feature

May 20, 2026

Opt-in traces for reliable Spectrum messaging

In the latest spectrum-ts release, we added opt-in OpenTelemetry tracing for Spectrum’s messaging layer.

Ryan

Feature

May 16, 2026

Astrolabe binaries can now update themselves

Astrolabe is a declarative macOS configuration framework. You describe the desired state of a machine in Swift — packages, services, system settings, and related setup work — and Astrolabe keeps the machine moving toward that state over time. This update adds a built-in way for the Astrolabe binary itself to update after it has been installed.

Ryan

Product

May 11, 2026

Spectrum 1.6: Designed for building Agents

Spectrum 1.6 is a fundamental redesign. We collapsed the entire platform surface from seven action methods down to two primitives — an input stream and an output dispatcher — because Spectrum is a tool for building agents, and the old surface did not reflect what agents actually are.

Ryan

Feature

Apr 23, 2026

Introducing Terminal UI for agent developing and testing

Spectrum’s terminal provider now runs a fully asynchronous chat UI in your terminal, with support for reactions, replies, and inline image rendering. Test agents without leaving your editor.

Ryan

Founder

Apr 23, 2026

Why We LeetCode Every Engineer, And Why It Matters More in the Age of Agents

The developer world has decided LeetCode is dead. AI can solve any hard problem in seconds. Grinding algorithms is a hazing ritual from a bygone era. We have heard the arguments. We disagree — and we are doubling down. At Photon, every engineering hire goes through a live LeetCode interview. Not because we are nostalgic. Because we are testing for one specific thing that matters more now than it ever has: **the ability to find the meta**.

Ryan

Product

Apr 21, 2026

Introducing Spectrum: Agents for the rest of us

Agents are powerful, but they are stuck behind dashboards and apps most people will never use. Spectrum is an open-source SDK and cloud platform that connects your agents to iMessage, WhatsApp, Telegram, and the messaging interfaces where human life already happens.

Ryan

Engineering

Apr 6, 2026

We Found a Ticking Time Bomb in macOS TCP Networking - It Detonates After Exactly 49 Days

At Photon, we are developing the world’s most complete iMessage API (with RCS and SMS fallback) for agents: infrastructure that lets Agents reliably communicate through one of the most native messaging interfaces people already use. While building it, we run Mac-backed systems continuously and care a lot about making the platform stable enough for enterprise-grade workloads. During that work, we ran into a macOS networking issue that showed up after about 49.7 days of uptime: new TCP connections stopped working, while ping and existing connections still looked normal. We reproduced the behavior on two machines and traced it to how XNU handles a 32-bit TCP timestamp counter around wraparound. This post walks through what we saw, how we reproduced it, and the kernel code path behind it.

Ryan

Evan

Customer Story

Mar 14, 2026

How MimiClaw Put a Pocket AI Assistant on iMessage

MimiClaw built a personal AI assistant that runs on a $5 chip. With Photon, it now lives natively in iMessage - the app 1.3 billion people already text from every day

Photon

Engineering

Mar 13, 2026

The path from BlueBubbles to production iMessage agents on Photon

BlueBubbles is free software, but an iMessage agent is not free to operate just because the bridge has no license fee. The real cost is the Mac that has to stay awake, the permissions that have to keep working, the setup that has to be repeated when macOS changes, and the engineering attention spent on a problem that is adjacent to the agent you actually want to build. Photon exists for the moment when you want to stop treating iMessage as a hobbyist bridge and start treating it as a production interface for agents.

Ryan

Engineering

Jan 29, 2026

CI/CD in the Age of AI

At Photon, we only hire 10x engineers. We shipped a full SDK in a week, then built the infrastructure to support it in a month. That kind of work usually takes big companies a year. But as we moved faster, one thing started slowing us down: the CI/CD pipeline—releases, versioning, testing, and binary builds. In 2026, we're writing software at a speed we never imagined possible, but our CI/CD is still stuck in 2015.

Yan Xue

Ryan

Engineering

Jan 7, 2026

Frontier Agent Interaction on iMessage: Tech Overview

At Photon, we keep asking ourselves a simple question: what should AI and agents actually look like in the future? Will we really open a browser, type in a URL, and use agents as if they were just another SaaS tool? Will we download yet another app just to “chat with an AI boyfriend or girlfriend”? This feels unexciting and it certainly does not match the futures we see in sci-fi scenes. We believe that in the world we are heading toward, AI should not appear as a “feature” or a “tool.” It should feel like a type form of life, deeply woven into our social structures. Our kids will not be surprised when they see AI as we were. They will not treat it as a cold, external program as we treat our macs and phones. They will look at AI the same way they look at friends and classmates. In that world, AI becomes a first‑class citizen in our society. With that in mind, we started asking what we can build today that moves us in that direction. One answer we kept coming back to was iMessage. In the United States, almost everyone uses iMessage every day. Millions of messages flow through it constantly. It might be the most natural and native interaction surface for agents in this era: the agent shows up in your conversation list like a friend, and even joins your group chats. So we decided to turn this idea into reality and build infrastructure that lets AI exist in a truly “human” way inside iMessage. That is how we arrived at imessage-kit - an open‑source TypeScript SDK for controlling iMessage. It lets developers send, receive, and orchestrate iMessage messages through code. Along the way, we had to work through a lot of technical constraints and ended up re‑imagining how AI can communicate with people. This blog focuses on the technical side of that journey: how iMessage works under the hood, what it takes to build a reliable SDK around it, and how that unlocks new interaction patterns for agents. We will save more speculative interaction design and UX experiments for future posts.

Ryan

Evan