On this page
01
Before you start
Duet is in early access on the AI Growth, Platform Growth, and Enterprise plans. Ask for early access, and we set it up with you.
- An owner or admin of your Cloptima org
- A Slack workspace where you can install apps
- A GitHub organization where you can install apps, for work on code
- Model access: your own provider API keys in Cloptima, or Cloptima credits
02
Connect Slack, and Duet is set up
In Cloptima, open Settings → Integrations and connect Slack as an org owner or admin. This sets Duet up: Cloptima creates an AI policy named Duet. It is an ordinary policy, so your admins can see it, change it, or delete it in AI → Policies.
03
Choose the repositories Duet may work on
Duet works on code through its own GitHub App, separate from the read-only Cloptima Assist app. In Settings → Integrations, connect Cloptima Duet (GitHub) and choose the repositories on GitHub's install page. You can add or remove repositories there at any time.
- Duet clones the repositories you choose and runs their tests in its own sandbox
- It pushes only to its own branches, named duet/…
- It opens pull requests, always as drafts
- It reads the CI logs on its pull requests and never reruns a workflow
04
Pick the model and spend limits
Open AI → Duet → Settings. Owners and admins change these settings; members can see them.
- 1
Choose the model
The list holds the models the Duet policy allows: Claude, GPT, or Gemini. New sandboxes run the model you pick. Default leaves the choice to Cloptima.
- 2
Set the spend limits
In AI → Policies, set the Duet policy's daily and monthly budgets. They are hard limits: once Duet reaches one, its next model call is refused.
- 3
Attach your guardrails
Your org's guardrail baseline applies to Duet like the rest of your AI traffic. To mask secrets and personal data on Duet's calls in particular, attach a guardrail profile to the Duet policy.
Settings
- Duet is on
- Off, Duet answers every mention in Slack with a note that it is turned off, and runs no sandbox.On
- 1Model
- Default
New Duet sandboxes run this model. The list holds the models Duet's policy allows.
- Package mirrors
- On
- Read public websites
- On
- Open pull requests on GitHub
- On
05
Invite Duet and tag it in a thread
In Slack, invite @Duet to a channel, then mention it in a thread. Any full member of the workspace can ask; guests can't.
- 1
Ask in a thread
Duet reads the thread, does the work in its own sandbox, and replies in the same thread, with files.
- 2
Review the draft pull request
For work on code, it opens a draft pull request in a repository you chose. Your team reviews and merges it.
- 3
Keep going
A failed CI check, or a reviewer who mentions @Duet on its pull request, starts a new task in the same thread.
06
See what Duet did
AI → Duet → Activity lists each Slack mention and each GitHub event on Duet's pull requests, newest first, with how each one ended. It keeps no message text. For each step's model, tools, and cost, open the task in AI → Sessions.
07
Tighten access, or turn Duet off
The switches in AI → Duet → Settings narrow what Duet can do, and one turns it off.
| Switch | When it is off |
|---|---|
| Package mirrors | New sandboxes install no npm, PyPI, or Go packages, and download no GitHub release assets. |
| Read public websites | New sandboxes reach only package mirrors and GitHub. |
| Open pull requests on GitHub | Duet pushes its branch and replies with a compare link, so a person opens the pull request. |
| Duet is on | Each new mention gets a note that Duet is turned off, and no sandbox runs. A task already running finishes. |