What an OpenAI Dots template is
A template, on this site, is a short brief: the job, the sources, and the stop. People looking for OpenAI Dots templates usually want something they can paste into an agent and edit, not a marketplace of certified workflows. The file behind this page is static JSON in the dotsbase repository. Each entry has a name, a description, and a link. The links point at this community repository as placeholders. They are not OpenAI release assets, and following them does not enable a feature in ChatGPT.
The list stays behind GitHub login so the public page can explain the gate without pretending the file is a secret product. Your GitHub login is read only far enough to show a name on this page. The OAuth app asks for the read:user scope. It does not ask for your repositories. The session is an HTTP-only cookie signed by this site. If the deployment is missing its client id, client secret, or session secret, sign-in fails with a clear message instead of a broken redirect. Setup lives in the project README for whoever operates the Cloudflare Pages project.
What the Dots agent briefs cover
The patterns match the jobs on the features page. A weekly research digest tells the agent which sources count and demands links plus open questions. Inbox triage sorts mail into reply, wait, and ignore, and it does not grant send access. A Slack FAQ answers from a document list, cites the document, and writes a follow-up when the documents are silent. A VM runbook names allowed directories, turns the network off unless a task needs it, and requires a person before any write to an outside system. Meeting prep gathers notes and an agenda and stops before emailing the room. A release-notes drafter turns a changelog into text a teammate can edit. The draft is the artifact. The announcement is still yours.
You can use the same shapes with Muse, with Grok Bot, or with a documented OpenAI workspace agent. The briefs are not locked to a client named Dots. They are locked to a habit: say what done looks like, and say what the agent must not do while you are away. That habit matters more than the alias. If your team says Aeon or orbit, the brief still works. The names page is the glossary. The pricing page will not sell you these files. They are part of the community site.
- Edit the stop rule before you edit the tone.
- Name the sources. “Look around” is not a source list.
- Separate a draft from a send, a post, or a payment.
- Assume the computer is someone else’s production system until you have said it is not.
How to review an agent brief before you trust it
A pasted brief is a policy. Read it the way you would read a standing instruction to a new teammate who can touch a keyboard while you are in another room. The first pass is scope. Which folders, mailboxes, channels, and calendars are in bounds, and which are named only so the agent knows to leave them alone? If the brief says “the usual places,” it is not ready. Name the places. A research digest that may read three URLs is a different object from one that may browse until it feels finished.
The second pass is the stop. Every template on this site is written so that a draft, a note, or a sorted list is the output, and a send, a payment, or a delete is not. That split survives contact with a real client only if you keep it when you edit. Teams often delete the stop because it makes the demo shorter. Put it back. The interesting failure of an agent with a computer is not a clumsy sentence. It is a correct sentence delivered to the wrong audience, or a correct command run against a production system the brief never mentioned.
The third pass is the source of truth. “Look around” and “use your judgment” are not sources. A Slack FAQ that cites a handbook can be checked by a person who opens the handbook. A FAQ that cites the agent’s memory cannot. When the sources are silent, the brief should say what the agent writes down instead of inventing an answer. That follow-up note is a feature. It is how you find the holes in the handbook rather than papering over them in a channel.
The fourth pass is identity. Say which account the agent acts as, and say that it must not borrow a personal login to get there faster. OpenAI’s own workspace-agent help makes the same point for Slack: shared connections, on purpose, with an admin who understands that other people can trigger them. You do not need a product named Dots for that rule to apply. It applies to Muse, to Grok Bot, and to any VM you point at a browser that already has your cookies. If the brief does not mention cookies, add a line that the browser starts signed out.
None of this is a certification. The JSON file does not score your edit, and dotsbase does not store the brief you end up using. The checklist is the preference list that should agree with the brief. If you ticked “a stop before sending, paying, or deleting,” the template you paste should still contain that stop after you have made it sound like your team. If you are still deciding whether the agent is a personal steward or a shared teammate, the comparison with Muse and Grok Bot is the page that separates those shapes without turning them into a price.
Sign in with GitHub to open the templates
Unauthenticated visitors see the button and not the entries. After GitHub returns you here, the page asks this site who you are and then asks for the JSON. Logging out clears the cookie. The Chinese gate is the same library at 中文模板页. If you have not read the definition yet, start at what is OpenAI Dots so the briefs have a product picture to sit in. Facts about the underlying agent may change. The briefs are still only briefs.
Frequently asked questions
What are OpenAI Dots templates?
Short community briefs for an agent that might have a computer, Slack, or email: the job, the sources, and the stop. They are plain text you can adapt for any agent client.
Are these official OpenAI templates?
No. The list is a static JSON file in the dotsbase repository. Nothing in it is an OpenAI template or release asset.
Why do I need to sign in with GitHub?
The page explains the library in public, and the list itself is returned only to a signed-in browser. The OAuth app asks for the read:user scope and does not access your repositories.