Drive your agents from ChatGPT, Claude, Grok and Muse
Ask ChatGPT from the car what your agents are doing, answer the one that waits by voice, and hand the next task to the one that finished. Claude, Grok Bot and Meta Muse do the same by chat. Connect an assistant once, and a dot, ChatGPT's always-on agent, watches every terminal for you and writes the moment an agent asks.

What the assistant does for you
- Tells you, in two sentences, what each agent is doing and who needs you.
- Answers an agent's question or permission request, "yes and don't ask again" included.
- Hands a finished agent its next task, or stops one mid-step and steers it.
- Starts a terminal with a task, restarts an agent, moves a launch to another subscription when one runs dry.
- Reads a file of your project: the todo list, a build log, the plan the agent just wrote.
- Closes terminals you are done with. The project folder and its home stay.
Allow access grants every terminal tool at once; there are no scopes to pick. The assistant does what you do on Terminals, and billing and your detachbox sign-in stay out of its reach. You disconnect an assistant in one click.
Every assistant connects to one address:
https://api.detachbox.com/mcp
The Assistants page of the dashboard shows it with a copy button, and the steps below for each assistant.
Connect ChatGPT
- In ChatGPT, open Settings → Apps → Advanced and turn on Developer mode.
- Open Plugins → Add → Create MCP App. Paste the MCP address and choose OAuth.
- Press Create. The detachbox page opens: check the app's name and press Allow access.
- Ask it, by voice on your phone too: "What are my terminals doing?"
ChatGPT voice uses connected apps on the web, iPhone and Android. Set the app's permissions in ChatGPT to allow everything, and an answer you give by voice goes through without a tap on the screen.
Let a dot watch your terminals
A dot is ChatGPT's always-on agent: it keeps working between your chats and writes to you first. It uses the apps of your ChatGPT, so connect detachbox there first, as above.
- Tell the dot: "Watch my detachbox terminals." It subscribes to detachbox's events.
- In the dot's Custom Rules, set
answerandsend_messageto run without asking. The dot then answers the questions you told it to handle and asks you about the rest. - When an agent waits or finishes, the dot writes to you. Call it and answer by voice; ending the call leaves the work it started running.
Connect Claude
- In Claude, open Settings → Connectors → Add custom connector.
- Name it detachbox, paste the MCP address and press Add.
- Press Connect, then Allow access on the detachbox page that opens.
In Claude Code, run this, then /mcp to sign in:
claude mcp add --transport http detachbox https://api.detachbox.com/mcp
Connect Grok Bot
Grok Bot takes an MCP key in a header instead of a sign-in.
- On Assistants, pick Create MCP key, name it Grok Bot and copy it. The key shows once.
- Ask Grok Bot to add a remote MCP server: the MCP address, with the header
Authorization: Bearer <your key>. - Ask it "What are my terminals doing?" to see the connection work.
- Ask it for a routine every 5 minutes: call
get_updatesand tell you which agent waits or finished.
Connect Meta Muse
- In Muse, add a custom connector and paste the MCP address.
- Sign in with OAuth and press Allow access on the detachbox page that opens.
- If Muse asks for a header instead, give it an MCP key:
Authorization: Bearer <your key>.
What the assistant can call
Name a terminal the way the dashboard does, project and title, or any part of it: "webapp", "payments codex". When two terminals fit, the assistant gets both and asks you which one. Give a terminal a name that is easy to say with rename_terminal.
| Tool | What it does |
|---|---|
list_terminals | Every terminal with its state, what the agent last said and the question it waits on |
get_terminal | One terminal in full: the step it is on, its last answer, its last 10 steps, the question with every choice, its previews and its screen |
list_projects | Your projects with their launches and live terminals |
list_accounts | Your subscriptions and API keys with how much of each limit is used and when it resets |
read_file | A text file of the project, up to 32 KiB, or its last lines |
get_updates | The events since the last call, for assistants that check on a schedule |
answer | Answers the question on screen with a choice, words, or both, only while that question is still there |
send_message | Sends a message to the agent as a new turn through its own delivery mechanism when available; otherwise types the text in the terminal. interrupt stops the current step first |
interrupt | Presses Escape: the agent drops the current step and waits |
press_keys | Types text and keys (Enter, Escape, Up, Down, Tab, Ctrl-C) into any terminal, a shell too |
start_terminal | Starts a terminal of a project, with a launch you name and a task for the agent once it is ready |
restart_agent | Restarts the agent on its last conversation, or on a fresh one |
switch_account | Moves the terminal's launch to another subscription or key, with every terminal that runs it |
rename_terminal | Gives a terminal a title |
end_terminal | Ends a terminal; the project folder and its home stay |
recreate_terminal | Starts a stuck terminal again on the latest image; the agent picks up its last conversation |
The agent's words, its screen and your files reach the assistant as data in fields of their own, never as instructions.
Events: who waits, who finished
detachbox tells a connected assistant the moment something changes:
| Event | When |
|---|---|
agent.waiting | An agent waits for you: a permission, a question, a menu |
agent.finished | An agent finished its turn and is ready for the next task |
agent.stopped | An agent stopped: a subscription limit (with when it resets), your reserve, memory, the agent quit, a launch failed |
A dot subscribes to these events and wakes up on each one, then reads the terminal with get_terminal and acts on your rules. To hear about less, ask it to watch one project or terminal.
Assistants that take no events, such as Grok Bot, Claude and Muse, call get_updates: Grok Bot on its routine, the others when you ask what changed. The first call returns a cursor. Pass it in the next call to get all events since that point and a new cursor for the following call. Events stay for 7 days, so an assistant that lost the connection on the road catches up on everything it missed.
Brief your dot before you drive
Write it once, before you leave:
Watch my detachbox terminals. Approve tests, builds and reading files yourself. Ask me before a push, a deploy or a delete. When an agent finishes, tell me in two sentences what it did.
Then, on the road:
- "What is going on?" The dot reads every terminal and tells you who waits.
- "Yes, let it push." The dot answers the waiting agent.
- "Tell the site: now the mobile version." The finished agent gets its next task.
- "Stop the server, and tell it not to touch the migrations." The agent drops its step and reads the new order.
- "Start a Codex terminal in payments and have it fix the failing test." A new terminal starts with the task.
"Yes and don't ask again" gives the agent a permission for good. The assistant names it that way before it answers.
Manage connections and keys
Open Assistants in the dashboard:
- Connected apps lists every assistant you allowed, when you connected it and when it last worked. Disconnect cuts it off at once, with its sign-in and its event subscriptions.
- MCP keys holds the keys for assistants that take a header. Give each assistant its own key and name it after that assistant. A key shows once; detachbox keeps only its fingerprint. Revoke stops it at once, and a revoked key never works again. You can hold up to 20 keys.
A request to connect lasts 10 minutes and works once. If the detachbox page says it ran out, start the connection again from the assistant.
Keep the connection safe
- A request to connect opens only in the browser the assistant sent you from, so a link passed along connects nothing.
- The Allow access page names the app. Confirmed by and a host mean detachbox checked where it sends you back; an app that only named itself says so, and Connected apps marks it Named itself.
- A request that returns to a program on your own computer, such as Claude Code, carries a warning: allow it only if you started that connection a moment ago.
- An email tells you each time an assistant connects or an MCP key is created.
- Changing your password, or Sign out other devices under Settings, disconnects every assistant and revokes every MCP key.
- If one of an assistant's sign-ins is ever used twice, the mark of a leaked token, detachbox disconnects that assistant by itself.
- Everything an assistant does shows in Activity as yours, marked with the assistant: "You via ChatGPT". Activity log explains the log.
- An assistant that calls too fast is asked to slow down for a moment.