Anthropic opened a research preview of Claude Duet on October 21, 2026. It's a separate app where Claude runs as a proactive agent: it reaches out when something needs you, does tasks in the background, and asks before it acts for you.
We're opening a research preview of Claude Duet, a new app where Claude works as a proactive agent. It comes to you with what needs your attention, completes tasks you ask of it, keeps working when you step away, and checks with you before it acts on your behalf.
— Claude (@claudeai) October 21, 2026
Access is a waitlist for Pro and Max subscribers in the US, on iOS, Android and claude.ai. It's designed around Claude Opus 5.5 and shares your plan's usage limits, background checks included. Team and Enterprise plans aren't included yet. Everything below about Duet comes from Anthropic's announcement and product page.
The parts of a proactive agent
A chat assistant waits for a prompt. An agent that starts work on its own needs a few more pieces, and Anthropic documents most of them:
| Piece | What Anthropic documents for Duet |
|---|---|
| Trigger | A morning brief, plus checks of your connected accounts every few hours. You can tell it what you want to hear about and how often. |
| Background execution | Its own virtual machine with a browser, so your laptop or phone can be off. |
| State and memory | Carries over memory, skills and connected apps from your Claude account. One ongoing thread, by text or voice. |
| Tool access | The 6,000+ connectors and plugins in the Claude Marketplace. Credentials follow the Claude Managed Agents design, so it never directly sees passwords or sign-in tokens. |
| Approval gate | Before it sends a message, makes a payment, signs a document or deletes anything, it shows exactly what it will do and waits. Trading securities and moving money between accounts are blocked even with approval. A separate classifier rejects sharing card numbers and government IDs. |
| Observability | A notification when a task is done or needs review. Finished work comes back as a doc, sheet or deck. |
The interval is a cost decision, and Anthropic says so: checking nonstop would use up plan limits much faster. Actions also pass its auto mode classifier, and its prompt injection defenses come from its browser-use research.
What isn't documented yet
Neither page gives the exact check interval, or how much of a plan one background check or a large task uses. I didn't find a reviewable log of the steps it took, and Anthropic says it can't show you its browser yet. Anthropic says it will share more safety details in the coming days. It also lists the known limits: Duet can misread a thread, misjudge urgency, or miss something that arrives between check-ins.
The same pieces in my home lab
Most of these pieces already exist on the LLMBits VM, an Ubuntu guest on my Proxmox server with eight vCPUs, 16 GB of RAM and no GPU.
The model and the agent come from my Hermes Agent post. Ollama runs as a systemd service on 127.0.0.1:11434, and Hermes points at its OpenAI-compatible endpoint. The smallest model that made real tool calls was a 64K-context alias of qwen3.5:2b-q4_K_M. That run is my model for one scheduled check:
/usr/bin/time -p timeout 210 ~/.local/bin/hermes chat --model llmbits-hermes-qwen35-2b --toolsets terminal --reasoning none --max-turns 4 --run-budget 180 --format stream-json -q "Use the terminal tool to run this read-only command: df -h / && cat /home/j/hermes-demo/lab.txt . Then answer two tasks: (1) summarize actual root disk space, (2) report the maintenance window and model-server URL from that file. Call the tool first; do not guess any results or modify files." </dev/null
Tool access is the --toolsets flag, limited to what the task needs. The timeout, --max-turns and --run-budget flags cap a run that goes sideways. The whole command took 90.05 seconds on this CPU, so a check every few hours costs almost nothing.
Observability is the stream-json transcript. It records each tool_use and tool_result, and that's how I caught the failures. A 0.6B model reported a 1,000,000 GB root filesystem and exited with code 0 without running a tool. The real disk is 99G.
State and approvals come from how this site gets built. Last night my assistant handed five install jobs to a coding agent on my Mac, which ran them one at a time under nohup over SSH. Each job kept a PROGRESS.md to resume from after a usage limit, plus logs and screenshots as evidence. Publishing posts needs no approval, because I asked for that. Emailing subscribers always waits for my explicit OK.
The missing piece is the trigger. My plan is a systemd timer that runs a script to collect real data first, then calls Hermes only to summarize it, and writes the result as a draft. After the million-gigabyte disk, I don't let a 2B model guess at system state. I haven't built the timer yet. That's next on my list.