CLI, MCP server, VS Code and iPhone
Get a question outside Slack
The command line tool, the MCP server your coding agent calls, the VS Code extension and the iPhone app all use one account. A question you answer in one of them counts in all of them.
Install the command line tool and the MCP server
You need Node 24 or later and a free Atomic Reps account. On an older Node, every command prints the version it needs instead of starting. There is nothing to install globally: npx fetches the package when you run it.
npx atomicreps # signs you in with a code you type at atomicreps.com/connect
npx atomicreps connect # adds the MCP server to your editor or coding agentconnect offers Claude Code, VS Code with GitHub Copilot, Copilot CLI, Cursor, Windsurf and Codex, and prints the command to add it by hand to any other MCP client. The MCP server is the process your editor starts with npx -y atomicreps mcp. The coding agent page shows what a question looks like there.
| Command | What it does |
|---|---|
npx atomicreps | The terminal screen: you, this session, topics, mutes, rate. On the first run it signs you in. |
npx atomicreps setup | The first-run wizard: areas, topics, how often, how hard. It prints what would be sent for the repository you are in, before you sign in. |
npx atomicreps login | Sign in from a browser with a typed code. |
npx atomicreps connect | Register the MCP server with your editor or coding agent. |
npx atomicreps doctor | Check the sign-in, the server and the pace, and say why no question came. |
npx atomicreps logout | Forget the token on this machine. --purge also forgets your cached reps and offers to remove what connect wrote. |
The question is for you, not for your agent
When your coding agent finishes a task, it calls the server once with a few words for what changed. The server picks one question or nothing, and your agent shows the question to you unchanged. You reply with a letter, A to D, or you ignore it.
Your agent only relays the question. The server never sends it the answer key, and its instructions tell it not to solve the question or hint at it. The server also refuses an answer that arrives within a few seconds of the question, so an agent that answers for you gets a refusal, not a verdict.
Your agent never shows a question
A question is not guaranteed after every task. The server sets a minimum gap between questions and a daily cap, and it returns nothing while a topic is muted or the rate is off. When the server returns nothing, your agent says nothing. A failure also returns no question rather than an error, so a missing sign-in looks the same as a quiet hour.
To find out which one it is, run npx atomicreps doctor. It prints the lines below and exits with an error code when you are not signed in or the server did not answer.
| Doctor shows | What it tells you |
|---|---|
| Version | The CLI version, your Node version, and a newer release if one exists. |
| Server | Which server the CLI talks to, whether you are signed in, and whether the server answered and how fast. |
| Pace | When the next question may come, or that one may come now. |
| Waiting question | A question that is waiting for your letter, if there is one. |
| Last failure, last no-question | The most recent error, and the most recent reason the server returned no question, each with its time. |
| Claude Code | Whether the four tools are allowed and the status line is set up. When either is missing, doctor names the command that sets it up. |
If doctor says you are signed in, the server answered and a question may come now, and your agent still shows nothing, run npx atomicreps connect again and restart the editor. If that does not fix it, email support with the output of doctor.
Install the VS Code extension
Install Atomic Reps from the Visual Studio Marketplace, or from Open VSX for Cursor, Windsurf and VSCodium. From a terminal:
code --install-extension AtomicReps.atomicrepsThen run Atomic Reps: Connect this editor from the command palette and approve the code in the browser. That is the same sign-in as the command line tool. The extension asks after a commit, a push, a finished test or build task, or when you ask with cmd+alt+r on a Mac or ctrl+alt+r elsewhere. The VS Code page covers the rest.
The extension has its own doctor. Open the Doctor tab in the panel, or run Atomic Reps: Doctor. It shows the server the extension talks to, when the next question is due, the last thing that failed, and a button that checks the server.
Install the iPhone app
The iPhone app is a free beta on Apple's TestFlight and needs iOS 26 or later. Install TestFlight from the App Store, then open the Atomic Reps beta link on your iPhone and tap Install. Sign in with the same account you use on the web.
Apple makes each TestFlight build available for 90 days. After that the build stops opening. Open TestFlight and install the latest build; your account and your record are on the server, so nothing is lost. If TestFlight shows no newer build, email support.
What leaves your machine
From the command line tool and the MCP server: catalog topic names with small weights, the package, file extension and folder names the public catalog already knows, your settings when you change them, and the letter you answer with. Never your code, the contents of a file, or your prompts. npx atomicreps setup prints the exact payload for your repository before you sign in. The Privacy Policy and the security page say what we keep and for how long.
