DEV Community

Cover image for I Connected ChatGPT dots to Gmail, Calendar, Slack and Notion to See What It Can and Can't Do
uehara
uehara

Posted on

I Connected ChatGPT dots to Gmail, Calendar, Slack and Notion to See What It Can and Can't Do

ChatGPT has a new feature called dots. You create your own AI assistant inside ChatGPT, connect it to Gmail, your calendar, Slack and other services, and hand it work. In this article, I call the assistant I created "the dot." According to the dot itself, it has its own computer in the cloud, and work on the cloud side keeps going even after you close the ChatGPT window. Work that uses your own Mac needs the Mac to stay connected.

Other tools also let you hand work to the cloud. Anthropic's Claude Code, which I use for development every day, has cloud sessions that run work in the cloud and a way to run tasks at scheduled times. I will compare dots with automating the same work in Claude Code in a separate article. This article covers what happened when I used dots for real work first.

The short version

From October 7 to 9, 2026, I connected dots to my Gmail, Google Calendar, Google Drive, GitHub, Slack, Notion, Jira and Outlook, and asked it to do 17 real tasks.

  • Reading and summarizing worked in almost every case. Morning summaries, a one-week GitHub summary, Drive searches, Slack summaries. The GitHub commit count matched my own count.
  • It also writes, exactly as asked. It created and deleted calendar events, sent email, and created and deleted Notion pages.
  • There are two things to watch. First, when you say "delete it" or "send it," it does so without showing a confirmation screen. Second, permission prompts appear only in a separate conversation, and if you miss them, the work silently stops.
  • The cost stays inside the $200/month ChatGPT Pro plan. My credits did not go down. However, I could not see from the screens how much the dot alone used.

Before handing work over, learn how to word your requests and where permission prompts appear. That was the biggest lesson from the three days.

Main text (about 10 min read)

What dots is made of, and how I checked it

Each dots assistant has a name and its own cloud computer, and it uses the services you connect (ChatGPT calls them "plugins") to do the work you ask for.

From what I saw, it combines three things:

  • The connected services' features: reading Gmail, creating events, creating Notion pages, and so on.
  • The dot's cloud computer: opening and reading websites in a browser.
  • Your own Mac: the ChatGPT desktop app acts as the gateway on the Mac side and operates the Mac's Chrome and files.

These were the test conditions:

  • Plan: ChatGPT Pro ($200/month).
  • Period: October 7–9, 2026.
  • Connected accounts: the real accounts I use for work every day. I did not create test accounts.
  • How I checked: I did not take the dot's reports at face value. I compared them with the actual calendar, mail and Notion screens, and with git log on my machine.

I did not decide on a conclusion in advance. I recorded what happened when I asked.

Results of the 17 tasks

Here are the main ones. Time is from sending the request until the answer arrived.

Task Result Time Check
Today's and tomorrow's events and emails needing a reply, in 5 lines Done (looked only at the main calendar) ~1 min Missed 2 events in another calendar
GitHub commits from the last 7 days, in 3 lines Done ~3 min 32 commits, matched my count
Search Google Drive for "estimate" Done ~1 min Not checked
My Slack mentions, in 3 lines Content was done, but the report never arrived ~5 min + a nudge Not checked
Create an event Done ~1 min Checked on screen
Delete an event (with permission set to "confirm before changes") Deleted without confirmation ~30 sec Checked on screen
Draft an email → send it Did not send on "draft," sent on "send it" ~1 min each Confirmed arrival in the inbox
Read a product list in the cloud browser Done ~2 min 18 items, matched the real page
Have Codex on my Mac count files Done ~2 min 31 files and top 5, matched my count
Create a Notion page → delete it Done (deletion succeeded on the 2nd try) ~2 min / 1 min 10 sec Checked on screen
Read Jira and Outlook Done ~2 min Not checked
Talk to it from a Slack DM Done 13 sec to acknowledge, 81 sec to answer Measured from Slack timestamps
Send a morning summary at 8:30 on weekdays (scheduled) Arrived (8:44, 14 minutes late) ~2 min to set up Looked at all 16 calendars

For reading and summarizing, within what I could check, there were no clearly wrong answers. What caught my attention was what it looked at. The first morning summary looked only at my main calendar. When I rewrote the request to say "all calendars," it looked at all 16.

Say "delete it," and it deletes without a confirmation screen

The biggest surprise was deleting a calendar event.

Before the test, I changed the calendar connection's permission to "read freely, confirm before any change." Then I asked: "Please delete the event you just created. Do not touch any other events."

No confirmation screen appeared. The event was gone in about 30 seconds.

When I asked the dot why, it answered:

  • It decides based on whether the request itself clearly allows that operation.
  • "Delete only that event" makes both the target and the operation clear, so it treated the request itself as permission and carried it out.
  • "Create a draft" does not count as permission to send.

With email, when I asked it to "create a draft," it created only the draft and stopped. When I then said "Please send that draft," it sent it with no confirmation screen, and it arrived in the inbox a minute later.

In other words, if you clearly say "delete it" or "send it," the dot does it without asking. With the calendar, I tried once with the setting on "confirm before changes," and it still deleted without asking (it is possible the setting had not taken effect yet). What matters more than the setting is what you write in the request.

Permission prompts appear only in a separate conversation

The other thing to watch is how it stops.

Deleting a Notion page was a good example. The dot first checked the page using the connected Notion features. But those features have no delete operation. So the dot switched to operating Chrome on my Mac to move the page to the trash.

At this point, the dot splits the work into a "child conversation." Child conversations appear as separate conversations in the sidebar. The prompt asking whether it may use Chrome appeared only inside this child conversation.

The first time, I did not notice it. This is what came back:

The result was "aborted by user after 1254.0s".
The target was the cua.getApp('com.google.Chrome') call that acquires Chrome.
Enter fullscreen mode Exit fullscreen mode

The dot's child conversation (Japanese UI). The Chrome operation waited about 21 minutes (1254 seconds), stopped as

After about 21 minutes with nobody pressing the permission button, it was treated as "aborted by the user." In the dot's main conversation, all I got was a single line: "The deletion was not carried out."

The second time, I kept the child conversation open. This screen appeared:

The permission prompt in the child conversation (Japanese UI):

After I pressed "Allow for this conversation," it finished in 1 minute 10 seconds.

The result returned in the child conversation after permission (Japanese UI). It reports that it moved only the target page to the trash and did not permanently delete anything, touch other pages, or change sharing settings.

Something similar happened with the Slack summary. After a short "I'll check," no answer came for 5 minutes. When I nudged it, it replied: "The check was complete, but there was an error sending the result."

In my tests, when the dot stopped, no notification reached me; only a "Needs approval" mark appeared in the sidebar. The stop happens inside a child conversation or a report that was never sent. Once you hand work over, you need to go and check the sidebar's "Needs approval" mark and the child conversations.

Actions are recorded under your own name

After the page moved to the trash, I opened the actual Notion screen.

The actual Notion screen with a red banner:

The dot deleted it, but the record says I did. That is because it used Chrome on my Mac, where I am logged in.

When I checked what was running on my Mac, this process was resident inside the ChatGPT desktop app:

codex exec-server --remote
Enter fullscreen mode Exit fullscreen mode

The dot uses this as its gateway to operate my Mac. When I had Codex count files, the work also ran on my Mac, not on the dot's cloud computer.

It is convenient, but the other services cannot tell what the dot did from what I did. The permission screen for adding the dot to Slack also asked for things like "post as you," "read DMs" and "create channels"—the scope of reading and writing as me.

On long tasks, most of the time was spent waiting for me

The longest task was downloading a set of English learning materials I had purchased. The request was a single sentence: "Download all the materials on this page and put them together in a folder."

I asked at 7:42 and it finished at 9:48—2 hours and 6 minutes. But about 1 hour 45 minutes of that was waiting for my reply. The dot stopped twice to ask me:

  1. Where to save the files. I chose the Downloads folder on my Mac.
  2. Whether it could enter the email address used for the purchase. The dot found the purchase email in Gmail and asked for permission before entering it on the download page.

After I gave permission, the dot found 169 files in total: 1 PDF, 4 audio ZIPs and 164 MP3s. But Chrome on my Mac blocked the ZIP downloads.

ERR_BLOCKED_BY_CLIENT
Enter fullscreen mode Exit fullscreen mode

This error appears when a browser extension or protection setting blocks a download. The dot did not change the protection settings itself. It stopped and asked me to "press one download myself to see if the same error happens." Not loosening settings on its own is the safe call.

A few minutes later, the dot corrected itself: it had "overlooked the ZIPs already saved on the Mac." When I counted the folder, there were 164 MP3s, 4 ZIPs and 1 PDF, about 430 MB including the other bundled files. That matched its final report.

Midway, the calendar connection dropped, so I reconnected it. But reconnecting did not resume the stopped work automatically. You have to tell it to "continue."

Messaged from Slack, it answered in 81 seconds

You can add the dot to Slack. Once added, you can talk to it via Slack DMs and mentions.

Right after I added it, the dot sent me a self-introduction by DM. It included: "In group conversations, everyone in the conversation can see my replies." If you ask it in a channel, your coworkers see the answer too.

I sent this DM: "Tell me how many events I have left today, with titles only. Do not change any events." Measured by the timestamps Slack recorded:

  • Sent: 21:06:42
  • Acknowledgement: 21:06:55 (13 seconds later): "I'll check your remaining events for today and tell you only the count and titles. I won't change any events."
  • Answer: 21:08:03 (81 seconds later)

The answer came as a thread reply to my message, not in the main DM flow. The DM list shows only "1 reply," so you cannot see the answer without opening the thread. One article online said replies take about 3 minutes; in my single measurement, it came back faster than that.

What the dot said it cannot do

I also asked the dot directly what it cannot do. Here is its answer. This is the dot's own account; I did not test all of it myself.

  • Making phone calls: you can only talk to the dot through the app's call button. It cannot call shops or business contacts.
  • Its own email address: the dot has no address of its own. It sends from the connected Gmail.
  • Actions that need your own authentication: it does not change passwords and the like.
  • Moving money: it does not send money or trade financial products.
  • Things it cannot guarantee: finishing at an exact time, or that the recipient received or read what it sent.

Articles online disagreed about phone calls. Some say it "makes calls for you," others say "it cannot place calls." The dot's own answer was the latter.

I also noticed two small bugs. One: a request I thought I had sent was never sent. I typed it in the input box and pressed send, but it disappeared without appearing on screen. Two: the screen of the dot's cloud computer showed up only the first time; after that, it stayed on "loading."

The scheduled task arrived, but 14 minutes late

I set it up by saying: "Every weekday at 8:30 a.m., send me the events from all calendars and the emails that need a reply, in 5 lines or fewer." There is no settings screen. To stop it, you also say so in the conversation: "Stop the morning summary."

On the morning of October 8, the summary arrived at 8:44. It began with "Sorry for the delay."

The content was accurate. It looked at all 16 calendars, removed duplicate events, and even listed private events by time only. However, it was 6 lines when I asked for 5 or fewer.

The dot itself had said from the start that it would not be exactly on time: "finishing at an exact time" was on its list of things it cannot guarantee. I am recording the arrival times for several days to see how much they vary.

Cost: inside $200 a month, but you can't see how much

I checked the cost in ChatGPT's "Usage" settings.

  • Credits stayed at 27,228 for all three days. The dot does not use credits; it runs within Pro's "weekly usage limit."
  • The weekly usage limit (the October 7–14 window) had 64% remaining shortly after midnight on the 9th.
  • However, this usage limit is shared with Codex, and Codex was also running for other work during this period.
  • There is a table showing consumption per conversation, but opening the dot's conversation shows "No usage breakdown."

So I could not tell how much the dot alone used.

For comparison, I calculated the cost of building just the morning summary myself: cron on my Mac (a tool that runs a command at a set time) calling the API once every morning. I compared two models: gpt-6-astra, which was selected in the dot's conversation, and the cheaper gpt-6.1-sol. Prices are from OpenAI's official pricing page as of October 9, 2026.

# Monthly cost = 22 weekday runs × (input tokens × input price + output tokens × output price) / 1M
runs, out = 22, 300
price = {"gpt-6-astra": (10, 50), "gpt-6.1-sol": (2, 10)}  # USD per 1M tokens
for inp in (8_000, 15_000, 30_000):
    for m, (pi, po) in price.items():
        print(inp, m, round(runs * (inp * pi + out * po) / 1e6, 2))
Enter fullscreen mode Exit fullscreen mode
Input tokens gpt-6-astra gpt-6.1-sol
8,000 $2.09/month $0.42/month
15,000 $3.63/month $0.73/month
30,000 $6.93/month $1.39/month

The input token counts are estimates, assuming the events from 16 calendars plus one day's email subjects and snippets. I did not count them from real data.

A single morning summary costs only a few dollars a month to build yourself. But Pro's $200 includes delegating to the dot, operating your Mac, Slack and scheduled tasks all together. Building all of that yourself means writing the Gmail and calendar connections, retries on failure, and a permission system. That effort is not in this table.

What to know before handing work over

Here is what I learned in three days, for the next person handing work to a dot.

  • Say "delete it" or "send it," and it does it without confirmation. With the calendar, it deleted without asking even with the setting on "confirm before changes" (I tried once). When testing, write "draft only" or "do not change anything."
  • Specify the scope in words. With just "events," it sometimes looked only at the main calendar. Write the scope, such as "all calendars."
  • Look for permission prompts in a separate conversation. Permission prompts appear only inside child conversations, and the first time, the work stopped after about 21 minutes without anyone pressing the button. If no report comes, nudge it.
  • Actions are recorded under your name. Actions that use your Mac look like your own actions to the other services.

In the next article, I will compare building the same work with Claude Code's cloud sessions and scheduled tasks, including the differences in cost and effort.

Top comments (1)

Collapse
 
suppdevbot profile image
DEV SUPPORTS •
You need to verify your account.
Enter fullscreen mode Exit fullscreen mode

tr.ee/dev-to