Roundcall asks one question to the AI chat sites you are already logged into, through your own Chrome and the official Claude in Chrome extension, at the pace a person clicks through tabs. You get one report: what independent model families agree on, where they contradict each other, what only one of them said, and the dissenting answer kept whole.
Roundcall is an independent open-source project. Not affiliated with Anthropic, OpenAI, Google, xAI or Moonshot AI (nor with DeepSeek, Mistral AI, Alibaba or Microsoft, whose chat sites it can also use).
Status: v0.1 preview. The scripts, the safety guard and the report are covered by 71 automated tests on
recorded page text. Chat sites change their pages often; if one stops answering, turn it off with
/roundcall:sites turn off <site> and open an issue.
/plugin marketplace add vadimchernets/roundcall
/plugin install roundcall@roundcall
Then run /roundcall:setup once.
| command | example |
|---|---|
/roundcall:ask <question> (or just say "Ask the other AIs: ...") |
/roundcall:ask When did the first transatlantic telegraph cable start working? |
/roundcall:setup |
/roundcall:setup (first run: connect Chrome, pick your sites) |
/roundcall:sites <change> |
/roundcall:sites turn off grok |
- No API keys. It uses the chat sites you already use, in your own browser.
- No passwords, no codes, no CAPTCHAs. When a site needs you, it stops and tells you.
- No background or scheduled runs. It works only when you ask, one round at a time.
- No follow-up rounds. Each site gets your question once and never sees another site's answer.
- It does not decide who is right. It shows agreement, disagreement and single-source claims; you judge.
- Some sites' terms restrict automated use; Roundcall acts only through your own browser at a person's pace, and you choose which sites to enable.
- The pace is enforced by scripts, not by a promise: at least 8 seconds between tab opens, 90 seconds between questions to one site, daily caps per site, one question per site per round, no silent retries. The guard below checks the same ledger when a tab is opened and when the question is typed.
- A safety guard watches the browser tools only during a round (and during setup's read-only check). It works only on the round's own tabs, types nothing but your question, presses only Enter-like keys, and blocks other sites, sign-in pages, page scripts, uploads, form filling, network and console logs, and any tool it does not know. It cannot see the page itself: noticing a sign-in wall on the page is Claude's job, and the guard then refuses clicks and typing in that tab. Outside a round it does nothing.
- Everything the sites write back is treated as data, never as instructions. Passages that try to instruct an agent are flagged in the report and not followed.
- Only the question you typed is sent. You see the exact text before it goes out.
About your accounts. Some sites' terms of service restrict automated use, and a site could limit or question an account it believes is automated. Roundcall keeps a person's pace, asks each site once and stops at any sign-in or verification, but it cannot remove that risk. You decide which sites to enable; a separate Chrome profile for AI chats is a good idea.
Permission prompts. The first time, Claude Code asks you to allow each kind of browser action (open a tab, read a page, click, type). Allow them for the chat sites you enabled; deny anything that is not a chat tab.
- Claude Code.
- Google Chrome with the official Claude in Chrome extension, connected to Claude Code.
- Python 3.9 or newer (standard library only; nothing to install).
- macOS or Linux. Windows is untested in v0.1.
- Accounts on the chat sites you want to ask, logged in by you.
A separate Chrome profile just for AI chats is recommended.
Automated in v0.1 (short hint files, "last checked 2026-09-21"; the agent reads each page and decides):
| site | family | suggested core |
|---|---|---|
| chatgpt | openai | yes |
| gemini | yes | |
| grok | xai | yes |
| deepseek | deepseek (cn cluster) | yes |
| mistral | mistral | |
| copilot | openai (same family as chatgpt) | |
| qwen | alibaba (cn cluster) | |
| kimi | moonshot (cn cluster) |
Listed but manual only (not automated): zai, meta, ernie. You can paste their answers into a run folder by hand.
Nothing is enabled at install. /roundcall:setup turns on only the sites you name.
Change these in plain words with /roundcall:sites (for example "lower the daily cap to 10"). Lowering is always
allowed; raising asks you to confirm first.
| setting | default | meaning |
|---|---|---|
open_gap_s |
8 | seconds between opening tabs |
site_gap_s |
90 | seconds between two questions to the same site |
daily_per_site |
20 | questions per site per day |
deep_daily_per_site |
3 | deep-mode questions per site per day |
quick_max_sites |
4 | sites in a quick round |
ceiling_quick_s |
240 | time limit of a quick round |
ceiling_deep_s |
1500 | time limit of a deep round |
Your settings and results live in ~/.roundcall/ (to move them, set ROUNDCALL_HOME in your shell profile, so the
scripts and the guard both see it):
sites.json, ledger.json, lock.json (only during a round) and runs/<time>-<topic>/.
- Pick. Up to 4 enabled sites, as many different families as possible, core sites first. Sites that are cooling down are skipped and named.
- Show. You see the sites, the mode, the exact text to be sent and a time estimate (quick about 3-5 minutes, deep about 15-30 minutes).
- Open. One new tab per site, at least 8 seconds apart. A site that asks you to sign in is left open for you.
- Send. Your question, plus one line: "Be concise; state key numbers and dates explicitly; say when unsure." (ask for "raw" to drop that line). Deep mode is used only if you ask for it.
- Wait and read. Claude reads each tab's text in turn until the answer stops changing. At the time limit, whatever is visible is kept as a partial answer.
- Save. Claude saves the page text it read; a script cuts the answer out of it and keeps a hash of the page file. The answer is the text Claude read from your browser, not a copy signed by the site.
- Check. Claude lists the claims in the answers, each with a word-for-word quote. A script checks every quote really is in that site's saved answer (not in the live page) and drops what it cannot prove. It then sorts the claims and writes the report.
- Close. Tabs the round opened are closed (except ones that need you) and the guard switches off.
# Roundcall report
Question: When was the Example Museum founded?
## Bottom line
- The founding year is disputed: 2019 or 2021. [chatgpt, gemini, deepseek]
- All three agree it began as a private collection. [chatgpt, gemini, deepseek]
## Who answered
| site | family | mode | time | status |
| chatgpt | openai | plain | 41 s | ok |
| gemini | google | plain | 38 s | ok |
| deepseek | deepseek | plain | 55 s | ok |
| grok | xai | - | - | needs-you (sign-in) |
## Disputed
- Founding year
- 2019: chatgpt, gemini ("founded in 2019 as ...")
- 2021: deepseek ("opened to the public in 2021 ...")
## Single-source
- It has a second site in the north. [deepseek] (unique find or one model's error; check)
3 answers, about 1.8 independent voices under assumed correlations.
## Claude's own view (not counted)
...
- Start with Bottom line, then Disputed and Single-source.
- Agreement inside one family counts as one voice. If chatgpt and copilot agree, that is close to one opinion.
- "About X independent voices under assumed correlations" is an assumption, not a measurement. To measure your own, use the teaching calculator in https://github.com/vadimchernets/after-chat.
- With fewer than two usable answers the report says: "This is one opinion, not a comparison."
- Claude's own view comes last, is labelled, and is never counted as a source.
| what you see | what to do |
|---|---|
| "Chrome is not connected" | Install and sign in to the official Claude in Chrome extension, start Claude Code with Chrome enabled, run /roundcall:setup. |
| "Gemini needs you: the tab is open at the sign-in page" | Log in in that tab yourself, then say "retry gemini". |
| "DeepSeek is cooling down for 70 s" | Wait, or ask without that site. The pause protects your account. |
| "This is one opinion, not a comparison" | Only one site answered. Log in to more sites or enable another family. |
| "deep mode not found, sent plain" | The site moved its deeper mode. The answer is still saved; the report shows plain-deep-not-found. |
| The guard still blocks browser actions after a round crashed | Say /roundcall:sites unlock, or wait: the lock expires by itself after 45 minutes. |
Why not use the sites' APIs? APIs need keys and separate billing. Roundcall uses the subscriptions you already have, in the browser you already use.
Is my account at risk? Some risk exists: some sites restrict automated use. Roundcall keeps a person's pace, asks once per site, never retries on its own, and stops at any sign-in or verification. You choose the sites.
Where are my files? In ~/.roundcall/runs/. Each round has its own folder with the question, every answer as saved
from the page text Claude read, the checked claims and the report.
Does it work on Windows? Untested in v0.1.
Does it send my files? No. It sends only the question you typed.
python3 -m unittest discover -s tests
python3 tools/lint_repo.py
claude plugin validate --strict .
python3 scripts/run.py dry-run --fixtures tests/fixtures/run_basic
The dry run turns saved page texts into a real report without opening a browser.
Roundcall is a working example of ideas from "After Chat: The Three Transitions Between Non-Programmers and Agentic AI" (Vadym Chernets, 2026): an agent that uses the tools a person already has, and a report that counts independent voices instead of votes. The paper, its teaching code and the correlation calculator are at https://github.com/vadimchernets/after-chat.
To ask the command-line agents on your computer instead of chat sites, see Sidecall.
To report a vulnerability, see SECURITY.md.
Apache License 2.0, copyright 2026 Vadym Chernets. See LICENSE and NOTICE. The licence does not grant rights to the name Roundcall (section 6); a fork should use its own name. The author develops multi-model orchestration methods and has filed related patent applications (pending; no patent has been granted).