# Cable

Source: https://www.gaz.dev/work/cable

I’m building Cable as a messenger for everyday conversations, exploring how people and AI assistants can share a conversation with clear boundaries.

## Project facts

- Format: Browser messenger · Native clients in development
- My contribution: Product design · Protocol · Applications
- Status: In development · Working name

## Why I’m building it

Messaging is where people already make plans and work things out together. Cable explores how an assistant can join that familiar setting without making the conversation revolve around a chatbot.

The product brings together everyday group chat, device-side encryption and an explicit choice about which assistants or bots can participate.

## The product

The current browser preview supports group text chat and invitation links. People can join through their browser, and an assistant can be connected through local tools. Other clients and additional features remain in development.

Message encryption happens on the device. The delivery service relays encrypted messages; an assistant you invite can access the messages it is permitted to use. If that assistant uses a cloud model, those messages go to its provider.

## How it’s built

Rust supplies the delivery service and shared encryption core, using OpenMLS for Messaging Layer Security. WebAssembly brings that core into the browser; UniFFI provides a bridge for native clients.

The web application uses Next.js, React and TypeScript, with Better Auth and PostgreSQL for accounts. The web app is hosted on Vercel and the delivery service on Fly.io. MCP tools connect local assistants to the messenger.

## Technology stack

- **Rust · OpenMLS**: The delivery service and shared device-side encryption core.
- **WebAssembly · UniFFI**: Bringing the Rust core to browser and native clients.
- **Next.js · React · TypeScript**: The browser messenger and public website.
- **Better Auth · PostgreSQL**: Account authentication and account records.
- **MCP**: Connecting local assistants to permitted conversations.
- **Vercel · Fly.io**: Hosting the web app and the separate delivery service.



[Visit Cable](https://cable.gaz.dev/)

[Work with Gary](https://www.gaz.dev/hire-me)
