Dots Phone · Open-source preview

Let Dots make the call.

Give it the call you’ve been putting off. Dots can talk to customer service for you, using the information and apps you choose to share.

Get started

Finding out where the washing machine is.

Product walkthrough 24 seconds

Jamie asks Dots to call about a replacement washing machine. Dots saves a briefing before dialing, answers from it, then checks an allowed Gmail source for a missing delivery reference. The store confirms Friday, 9 am–1 pm.

Scripted conversation with fictional email. No calls or inbox access. Timing is compressed.

Under the hood

It knows when
to ask for help.

Realtime handles the conversation. When a question needs more information or reasoning, it can bring in Codex without losing the call.

Before dialing

Dots

Gathers the details and saves the call briefing.

During the call

Realtime

Answers from the briefing. Ordinary replies skip the extra reasoning step.

Phone connection

Twilio

Carries the audio while your local service manages the call.

Reasoning & lookups

Codex

Selected read tools

Gmail, Yahoo & more

Codex checks the result against the call evidence before Dots reports back.

Your setup

You choose
what it can use.

Set the limits in the brief.

Include what Dots may share and agree to. The document is saved before the call starts.

Connect the apps you want.

Codex uses the read tools you allow for that call. Email access is optional and requires authentication.

Keep the service on your machine.

Call records are encrypted locally. Model requests go to OpenAI; phone audio travels through Twilio.

Before you start

Built for people
who like to tinker.

This is an experimental preview you run on your computer. Bring your own accounts and start with dialing disabled.

01 / Your computer

A local service.

Docker Compose, uv, Node and Codex CLI run the service and reasoning worker. The setup guide has a prompt for Codex to help.

02 / Your accounts

Voice + phone connection.

You need OpenAI API access, a Twilio number, HTTPS/WSS tunnels, and eligible ChatGPT custom plugin access. Check registration access before buying services.

03 / Your limits

Start small.

Set what Dots may share and agree to. Calls can be incomplete, and unfamiliar phone menus or unclear speech can cause mistakes.

Read the test coverage and known limits

A few details

Before the
first call.

What does it cost?

Dots uses your OpenAI and Twilio accounts. OpenAI charges for API voice usage; Twilio charges for the phone number and calls. Your tunnel service may also charge. Codex reasoning uses your ChatGPT plan’s allowance, which is separate from API billing. Call budgets use estimates rather than live billing.

Does it need access to my email?

No. You can supply the facts in the brief. Connected read tools are optional, require your own authentication, and must be allowed for the call.

Where does my data go?

The service keeps encrypted call records locally. Model requests go to OpenAI and phone audio travels through Twilio. Connected tools and tunnels have their own data handling. Worker exchange files rely on local file permissions. Read the data and retention details.

Is the walkthrough a real call?

It is a scripted, silent illustration with fictional people, email and delivery details. No call or inbox lookup happens on this page. Its timing is compressed.

How do I get help?

Start with troubleshooting or report a reproducible issue. Share your version and a redacted error. Keep credentials, phone numbers, transcripts and private account details out of public issues.

Experimental preview

Give Dots
your next call.

The setup guide includes a prompt you can hand to Codex.

Bring your own provider accounts and run the service locally. Setup starts with dialing disabled. MIT licensed.