A phone line for your coding agents
Walk away from the keyboard and your agents don't stall. When one hits a decision only a person can make, it phones you — or anyone on your team — takes your answer out loud, and keeps working. Unblocked from anywhere. No screen.
$ curl -fsSL https://screenless.sh/install | bash
$10 free to start · macOS or Linux · Node 20+ · Claude Code · read the script first
the problem
You brought in agents to move faster — not to spend every morning at a screen reviewing code nobody wrote and unblocking the ones that got stuck. But that is the job now, and every part of it waits on a person at a keyboard.
Overnight your agents open more work than anyone reads before standup. It carries to tomorrow, and tomorrow it is bigger — for everyone at once.
The calls only a person can make — is this the right scope, does this ship, who picks this up — wait for someone to be at a keyboard, in a thread, in a meeting. So they wait.
A voice line can reach anyone on the team, collect what they decide, and hand it straight to the agents that do the work. That is the one medium in this workflow that isn't a screen.
the line
screenless gives your team a phone line wired to the terminals it runs. It goes both ways: anyone can ring in, and any command can ring out.
A teammate calls the line and speaks — a request, a decision, an idea. It is transcribed and routed to whoever's terminal is watching: the caller's own first, any teammate's otherwise, and a queue that holds up to a week when nobody is. Their agent picks it up and acts.
screenless call "…" --to alex@team.com, or
--all. Dispatch a briefing to one teammate or the whole
team, and each conversation lands back in a terminal. It only ever
dials verified numbers on your own team.
Everyone runs screenless watch in a terminal. Calls
route to exactly one, so a team drains its queue together — and a
teammate's request arrives marked as theirs, weighed before it runs
with your access.
the boundary
A hosted service cannot have your team's MCPs, logged-in browsers and Claude subscriptions without asking for credentials nobody should hand over. So it doesn't ask. It takes decisions and gives them back to a terminal that already has the access — never to us.
price
No card at setup, no subscription, no trial clock: every team starts with $10 of credit, calls draw it down by the minute, and when it runs out the calls stop until an admin tops up. Top up when you want more.
before you paste that command
No. The reading happens locally, through MCPs you already connected. What reaches us is the short brief the call is placed from and the transcript of what you said back — both deleted within days.
Whatever opens the pull requests — Claude Code, Codex, Cursor, a human on a bad day. The loop reads your repo and your tracker, not your agent. Claude Code is what runs the skills, so you need that.
Nothing is lost. The undecided items roll into tomorrow's call, and
you can ring the line any time to leave a request or your decisions
as a voice note — no menu, just a beep, and it lands transcribed in
your team's terminal. screenless settings --pause
stops the morning call for as long as you want it stopped.
Then it doesn't call. A drained queue ends the call early; an empty one never starts it. A phone that rings every morning regardless is a phone you stop answering.
Please do — it's plain bash, right here, and the CLI it fetches is two files with no dependencies. All of it is on GitHub, MIT.
Twenty-eight so far, across Europe, the Americas, Asia-Pacific and
South Africa. screenless setup tells you in the first ten
seconds if yours isn't one of them, before any card is asked for.
Ten languages, chosen at setup, and it will follow you if you switch mid-sentence. Voices were picked on measured latency, so it answers at conversation speed rather than waiting a beat.
There is nothing to cancel — it is pay-as-you-go, not a subscription. Stop calling and you stop spending; leftover credit just sits there, and there is nothing to unsubscribe from.
A request from a teammate runs on someone else's terminal, so we treat it as untrusted: it arrives marked as theirs, and the agent is told never to read personal data or secrets, never to leave the repo, and never to do anything irreversible without the operator's say-so. The line only ever dials verified numbers on your own team.
One command. It installs, verifies your number, and points a repo at the line. Invite the team at screenless.sh/team.
$ curl -fsSL https://screenless.sh/install | bash
$10 of credit to start, then 30¢ a minute — no subscription, no card until you want one. If it turns out to be the wrong shape for your team, just stop calling; you are never billed for a minute you didn't talk.