Bring Agents to the
Interfaces Millions Already Use.

Bring Agents to the Interfaces Millions Already Use.

Spectrum is an open-source framework

that

connects

your

agents

to

iMessage app icon

iMessage,

WhatsApp icon

WhatsApp,

Discord app icon

Discord,

Slack App icon

Slack,

Telegram icon

Telegram,

instagram icon

Instagram,

and other interfaces people use every day.

and other

interfaces

interfaces

people use every day.,

people use every day.

Spectrum is an open-source framework

that connects

connects

your

agents

to

iMessage app icon

iMessage,

WhatsApp icon

WhatsApp,

Discord app icon

Discord,

Slack App icon

Slack,

Telegram icon

Telegram,

instagram icon

Instagram,

and other

interfaces

people use every day.

colorful spectrum loops

Cross Channel

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

Cross Channel

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

Simple, powerful, unified API
that connects to infinite platforms

Send rich, structured content

Including styled text, images, files, and more.

Deliver Generative Agentic UI

Native, interactive component across platforms.

Available across every interfaces

From direct messages to group chats & beyond.

Built for omni-channel communication

Seamlessly support text, voice, and video.

Tap into platform-specific capabilities

When you need deeper, native integrations.

Stay proactive with real-time events

Event-driven and responsive.

iMessage background including multiple blue bubbles

Cross Channel

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

Simple, powerful, unified API
that connects to infinite platforms

Send rich, structured content

Including styled text, images, files, and more.

Deliver Generative Agentic UI

Native, interactive component across platforms.

Available across every interfaces

From direct messages to group chats & beyond.

Built for omni-channel communication

Seamlessly support text, voice, and video.

Tap into platform-specific capabilities

When you need deeper, native integrations.

Stay proactive with real-time events

Event-driven and responsive.

iMessage background including multiple blue bubbles

iMessage

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

iMessage

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

iMessage

const spectrum = Spectrum(providers: [...], config: {...})
const agent = new Agent()

// Handle incoming messages by type
spectrum.onMessage(async ({ space, message }) => {
  switch (message.type) {
    case "text":
      const response = await agent.generate(message.content)
      await space.send("Hello World", attachment(...))
      await space.send(response)
    case "attachment":
      await message.react("like")
  }
})

// Auto-select the best available channel for delivery
await spectrum.send("+123456789", sticker(...))

// Explicitly route through iMessage with Telegram as fallback
await spectrum.send("+123456789", imessage().fallback(telegram()), poll({...}))

Native iMessage APIs
for Apple-Level rich experiences

Native iMessage APIs
for Apple-Level rich experiences

Send & receive messages,

supporting markdown
and bubble / message effects.

Share attachments seamlessly

including files, media,
and stacked images.

Accept location sharing

subscribe to real-time
live users’ location updates.

Build and deliver
generative iMessage mini apps

directly within the conversation.

Customize identity with
profile names and photos,

automatically synced with users.

Create and manage group chats

including names, avatars,
and participant control.

First-class for the agent era.

First-class
for the agent era.

Photon delivers reliable, low-latency agent execution and
messaging infrastructure. built to scale with real user demand.

Photon delivers reliable, low-latency agent execution and messaging infrastructure.
built to scale with real user demand.

Green bubble visual background

Photon Spectrum

<1s

Edge-first Provider

~500ms – 1.5s

CPaaS Avg.

~1500 – 2500ms

//E2E Latency

Low latency, high reliability. Spectrum is built to power real-world agents at scale - delivering fast, reliable messages in under 1 second on Photon's edge network with 99.9% uptime.

//iMessage

imessage(space).sendPoll({
question: "Where should we eat?",
options: ["Sushi", "Hotpot", "Italian"]
})

Sushi

Hotpot

Italian

Where should we eat?

Adaptive content rendering. Spectrum adapts message structure, formatting, and interaction patterns to match native platform constraints. Ensuring conversations feel natural and responsive everywhere.

Blue bubble visual background
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face

Scale from first user to millions. Spectrum handles scaling transparently, supporting growth from early experimentation to high-volume production deployments without requiring architectural changes.

Purple bubble visual background

Built-in observability and control. Spectrum provides detailed audit logs, message histories, and human-in-the-loop controls — enabling teams to monitor behavior, improve conversation, and operate Agent systems with confidence.

Green bubble visual background

Photon Spectrum

<1s

Edge-first Provider

~500ms – 1.5s

CPaaS Avg.

~1500 – 2500ms

//E2E Latency

Low latency, high reliability. Spectrum is built to power real-world agents at scale - delivering fast, reliable messages in under 1 second on Photon's edge network with 99.9% uptime.

//iMessage

imessage(space).sendPoll({
question: "Where should we eat?",
options: ["Sushi", "Hotpot", "Italian"]
})

Sushi

Hotpot

Italian

Where should we eat?

Adaptive content rendering. Spectrum adapts message structure, formatting, and interaction patterns to match native platform constraints. Ensuring conversations feel natural and responsive everywhere.

Blue bubble visual background
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face

Scale from first user to millions. Spectrum handles scaling transparently, supporting growth from early experimentation to high-volume production deployments without requiring architectural changes.

Purple bubble visual background

Built-in observability and control. Spectrum provides detailed audit logs, message histories, and human-in-the-loop controls — enabling teams to monitor behavior, improve conversation, and operate Agent systems with confidence.

Green bubble visual background

Photon Spectrum

<1s

Edge-first Provider

~500ms – 1.5s

CPaaS Avg.

~1500 – 2500ms

//E2E Latency

Low latency, high reliability. Spectrum is built to power real-world agents at scale - delivering fast, reliable messages in under 1 second on Photon's edge network with 99.9% uptime.

//iMessage

imessage(space).sendPoll({
question: "Where should we eat?",
options: ["Sushi", "Hotpot", "Italian"]
})

Sushi

Hotpot

Italian

Where should we eat?

Adaptive content rendering. Spectrum adapts message structure, formatting, and interaction patterns to match native platform constraints. Ensuring conversations feel natural and responsive everywhere.

Blue bubble visual background
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face
face

Scale from first user to millions. Spectrum handles scaling transparently, supporting growth from early experimentation to high-volume production deployments without requiring architectural changes.

Purple bubble visual background

Built-in observability and control. Spectrum provides detailed audit logs, message histories, and human-in-the-loop controls — enabling teams to monitor behavior, improve conversation, and operate Agent systems with confidence.

We keep everything secure.

We keep
everything secure.

Each line runs in an isolated, dedicated environment with restricted access by default. Only the required endpoints are exposed, and traffic is securely routed to protect every request in transit.

Dedicated infrastructure.
Locked down by design.

Dedicated infrastructure.
Locked down by design.

Each line runs in an isolated, dedicated environment with restricted access by default. Only the required endpoints are exposed, and traffic is securely routed to protect every request in transit.

Each line runs in an isolated, dedicated environment with restricted access by default. Only the required endpoints are exposed, and traffic is securely routed to protect every request in transit.

Spectrum is built to meet SOC 2 standards for security, availability, and operational control - giving teams the confidence to deploy agents into production conversations.

SOC 2 ready for serious teams.

SOC 2 ready for serious teams.

Spectrum is built to meet SOC 2 standards for security, availability, and operational control - giving teams the confidence to deploy agents into production conversations.

Spectrum is built to meet SOC 2 standards for security, availability, and operational control - giving teams the confidence to deploy agents into production conversations.

Trusted by the world's
best agent teams and developers

Trusted by the world's
best agent teams
and developers

Built for teams at every scale

Ditto logo

Ditto is an iMessage-based matchmaker agent for college students. Learn how we helped them connect 42,000+ users through iMessage.

140k+

active users

4M+

messages processed

People using ditto sending date invitation on iMessage using Spectrum Service

Ditto

Built for teams
at every scale

Ditto logo

Ditto is an iMessage-based matchmaker agent for college students. Learn how we helped them connect 42,000+ users through iMessage.

140k+

active users

4M+

messages processed

People using ditto sending date invitation on iMessage using Spectrum Service

Ditto

Flag for human review.

9:41 AM

👍

❤️

Well done!

👍

👍

Iced latte

Caramel Macchiato

􀁞

Here are the restaurants:

Nobody's going to download an app
or visit a website just to talk to your agent.

Telegram

iMessage

Slack

Discord

WhatsApp

Phone

The best interface for your agent already exists.

Flag for human review.

9:41 AM

👍

❤️

Well done!

👍

👍

Iced latte

Caramel Macchiato

􀁞

Here are the restaurants:

Nobody's going to download an app or visit a website just to talk to your agent.

Telegram

iMessage

Slack

Discord

WhatsApp

Phone

The best interface for your agent already exists.

Deploy your

Coding

Companion

Customer Support

and

Trading

agents

to the platforms

people actually live on.

coding case background including multiple blue bubbles
companion case background including multiple blue bubbles
customer support case background including multiple green bubbles
Trading case background including multiple purple bubbles
Cross channel background including multiple colorful bubbles

Deploy your

Coding

Companion

Customer Support

and

Trading

agents

to the platforms

people actually live on.

coding case background including multiple blue bubbles
companion case background including multiple blue bubbles
customer support case background including multiple green bubbles
Trading case background including multiple purple bubbles
Cross channel background including multiple colorful bubbles

manifesto

manifesto

What we do at Photon is taking away yet another barrier of usage of Agents.

We have a chance to change the way people thought about Agents.

We call it Agents for the rest of us because Agents aren't for ordinary people.

We think we have a chance to make a difference.

What we do at Photon is taking away yet another barrier of usage of Agents.

We have a chance to change the way people thought about Agents.

We call it Agents for the rest of us because Agents aren't for ordinary people.

We think we have a chance to make a difference.

A human interacting with a human-like agent in the future

Start building with Spectrum today

Start building with Spectrum today

Colorful Gradient shows the Spectrum