New in 0.4.22Work together — every AI account on one jobWork together
Your servers.Your AI accounts.One crew.
Termiyo is the SSH client that puts the AI tools you already pay for — Claude Code, Codex, Gemini CLI and more — on one job, as one crew. Giti keeps your team’s repositories on a server you already pay for, and your keys are encrypted on your device before anything syncs.
01Work together
New in 0.4.22Every account on one job.
Write the job once and press Use all 4 accounts. One plans, the others write, and Termiyo keeps the job moving when a limit hits.
01One account plans.
Pick a manager, or Termiyo takes the first account in your order. In one turn it writes the plan — up to eight tasks — and at the end it writes the report. With two or more other accounts working, that is all it does.
02Termiyo hands out the work.
Dispatch, tracking and reassignment are Termiyo’s own code, not a model’s: one task per account at a time, up to six at once. Each account is told to write text only — Claude runs with its tools off, Codex in a read-only sandbox, Gemini in plan mode.
03A limit doesn’t stop the job.
When an account hits its limit, its task moves to another account at once and starts again from its brief. The report comes back as Markdown you can copy.
Needs two or more accounts that can answer. Each task spends the allowance of the account that does it.
The jobPlan the move of the checkout service from Redis 6 to Redis 7: what breaks, the rollout, the rollback, and what to test.
- List what changes between Redis 6 and 7 that touches usClaude · personalRunning
Claude · personal
- Draft the rollout, one replica at a timeCodexRunning
Codex
- Write the rollback planGemini CLIRunning
Gemini CLI
- Draft the test checklistClaude · personalQueued
Claude · personal
- Review the plan for risksGemini CLIQueued
Gemini CLI
+ 2 more tasks, both running
02The harness
New in 0.4.22Several models. Several accounts. One question.
Termiyo drives the AI command-line tools you already pay for, under its own control. The Harness tab asks one thing of several lanes at once — a lane is a model on one of your accounts — and shows which account every answer came from.
Question
A 502 shows up only behind the second load balancer. Where do I look first?
Claude Opus
workCompare the two upstream blocks first.
A keepalive timeout on LB2 that is longer
than the app’s idle timeout gives exactly
this: 502s on reused connections only.
Thinking…Answered by work
Claude Sonnet
workCheck LB2’s health check. If it marks a
backend up before the app is listening,
the first requests after a deploy 502 —
its access log shows upstream: -.
Thinking…Answered by work
Claude Opus
personalLook at TLS between LB2 and the backends.
A missing SNI or an old cipher list fails
the handshake, and nginx reports that as
a 502 rather than as a TLS error.
Thinking…Answered by personal
Lanes run on Claude Code today. Carry on uses each lane’s last conversation on this machine; reading each other is one hop, capped, and only when you ask.
It drives the tools you already pay for.
already in the appClaude Code, Codex, Gemini CLI, ChatGPT CLI, Ollama and llm — or any Anthropic- or OpenAI-compatible key. For the command-line tools there is no key to paste, and nothing goes through our server. The AI panel reads answers aloud, too, in your operating system’s own voices.
Every account in a room of its own.
Each account runs in its own private folder and environment and never inherits another login. Prompts go in on stdin, so they stay out of ps. new in 0.4.23One tool can now hold several accounts, and you add each one with that tool’s own sign-in: Claude, ChatGPT through Codex (on macOS too) or Google for Gemini CLI. No API key is needed.
When a limit runs out, the conversation moves on.
In the AI panel the same transcript goes to your next ready account, and a line says so: “work’s limit is reached — continuing on personal.” In the Harness pane a spare account switched in has not seen the conversation, and it says that too.
Limits, as Claude last reported them.
A chip in the status bar names the account that answered last and turns amber at 80%. Termiyo has no live reading of your quota, so there is no percentage bar here — only the figures Claude last reported, and how old they are.
03.env
The file that’s actually causing the outage.
Termiyo finds every .env on a host or on your own machine, shows which program reads it, and flags the ones tracked by git or readable by everyone. Change one key and it leaves the comments and the order alone — with a diff on screen before anything is saved.
new in 0.4.22 The version you replaced is kept encrypted in your vault, on this device — up to ten versions for thirty days — instead of a plain-text backup next to the file.
It edits files. It is not a secrets manager, and it injects nothing into your programs.
/srv/checkout/.env
read by node server.js
/srv/worker/.env
read by python worker.py
⚠ tracked by git
/etc/billing/.env
read by billing.service
⚠ readable by everyone
# payments
STRIPE_TIMEOUT_MS=3000
API_KEY=••••••••••••
# cache
- REDIS_URL=redis://10.0.3.12:6379
+ REDIS_URL=redis://10.0.3.14:6379
REDIS_TLS=true
Draft — check it first
staging pe api service restart karke uske last 50 lines of logs dikhao
04Voice
New in 0.4.22Say it. Check it. Then send it.
Talk instead of typing — in English, or in Hinglish written the way you’d type it (or in Devanagari, if you switch that on). Only after you agree does the audio go through Termiyo’s server to Deepgram, a speech-to-text service, and come back as a draft. Nothing runs by itself: you read the draft, fix it, and send it to the terminal or to the AI prompt.
Needs you signed in, and counts against your plan’s hosted-AI allowance. Termiyo’s server keeps no audio, and asks Deepgram to leave each request out of its Model Improvement Program; Deepgram’s documentation says data from such requests is kept only as long as it takes to process them.
05Giti
New in 0.4.22Push straight to your own server.
Host your private repositories on a server you already pay for. No per-seat git hosting, no root, no extra service — your team clones and pushes over plain SSH.
$ git remote add giti ssh://deploy@build-1/checkout.git
$ git push -u giti HEAD:refs/heads/main
To ssh://deploy@build-1/checkout.git
* [new branch] HEAD -> main
# on build-1, after your push
✓ build ✓ test
01
Straight to your host’s sshd.
Your laptop can be off; the host has to be up. Termiyo sets up the repository, a restricted shell and the keys over SSH — no root, no daemon, no web port — and nothing passes through termiyo.com.
02
Keys that can only fetch or push.
Read-only or read and write, per person. Your teammate needs nothing but plain git, and their key stops working at the end of the owner’s paid period — enforced by sshd itself.
03
Share by link.
A link that lasts one, three or seven days, with an optional passcode. You approve each person by their confirmed address and key fingerprint, and Take back removes their key first. Both of you on a paid plan; a trial doesn’t count.
04
One-click CI.
Opens a pull request on GitHub or a merge request on GitLab with a build-and-test workflow for your kind of project, every action pinned to one exact version, and nothing changes until someone merges. A Giti repository can run its workflow on its own host after each of your pushes. Paid.
already in the app Or keep a repository on this computer, for you alone — nothing uploaded and nothing running. Free.
Giti has no web interface, pull requests or issues: it is where your code lives, not a GitHub replacement, and it proves which key pushed rather than who wrote a commit. Share links are off until termiyo.com’s server turns them on. The deploy half of CI is not built yet.
06The SSH client underneath
Under the crew, a serious SSH client.
Sessions that survive the window.
Two panes, either side anywhere.
Share a terminal.
new in 0.4.2270 terminal themes.
Jump hosts, forwards, and more.
It reads the client you already have.
Eight languages, and a phone.
07Security
Locked before it leaves your machine.
Safety is not a paid feature. Only the second-person approval needs a team — because it needs a second person.
Argon2id · m = 64 MiB · t = 3
The whole field is one guess.
Encrypted before it leaves your device.
Argon2id with 64 MiB per guess, XChaCha20-Poly1305 for every record, and X25519 sealed boxes to share a vault. The server never sees your vault’s contents.
Auto-lock that counts only you.
new in 0.4.22It locks after fifteen idle minutes and when the computer sleeps, and only a key press, a click or a menu choice counts as you being there — background checks can’t hold it open. Locking doesn’t end your sessions.
The agent can’t write shell.
It picks from thirteen fixed actions with checked arguments, and an unattended agent is refused outright on a production host.
A warning before a command that destroys things.
new in 0.4.22The new detector catches 22 of 22 held-out cases with no false alarm on 25 harmless ones. It warns; it never blocks.
Two-factor sign-in on every account.
An authenticator app and ten recovery codes, on any plan.
A second person for production.
TeamAn AI agent’s plan that writes to a production host waits for someone else on your team. The server refuses an approver who is also the requester, and the request lapses after an hour. It doesn’t cover commands you type yourself.
Teams, roles, and a record.
TeamOwner, Admin, Member and Auditor; shared vaults; an audit trail.
Alert · api-2
triggered 12:03 · open 14 min
checkout p95 latency above 800 ms for 10 min
- State
- Alert
- Warn at
- 600 ms
- Alert at
- 800 ms
api-2 · /var/log/checkout/app.log
12:04:11 WARN redis timeout after 3000ms
12:04:12 WARN redis timeout after 3000ms
12:04:12 ERROR checkout failed: upstream timeout
08Monitoring
New in 0.4.22When it pages, you’re already there.
Connect Datadog or New Relic with your own keys and see hosts, open alerts, logs, APM and SLOs beside the terminal, and open its dashboards in your browser. Nothing is installed on your hosts.
One careful write.
The only change it makes is a Datadog monitor edit — four fields, never the query — after you confirm, refused if the monitor changed in the meantime, and written to the audit log.
An alert can look into itself.
Off until you turn it on: a read-only investigation of a waiting alert that names one saved host, while Termiyo is open and unlocked. Never on a production host, and it spends your AI allowance.
The fleet at a glance.
Dashboard cards and a console tab on Ctrl+Shift+G, with thirty days of host history from sysstat over your own sessions.
Webhooks you can verify.
Signed the Standard Webhooks way, retried at 2, 15 and 60 seconds, and a target on your own network is refused unless you tick it.
09Pricing
Free to start. Fair when you grow.
The client, the crew and every safety feature are free. You pay for sync, for sharing, and for Termiyo’s own AI beyond the free allowance.
Free
$0/ month
One person, one device
- Every connection feature
- Your own AI tools and keys, Work together and the Harness tab
- The .env panel and Giti on this machine
- All of the safety
- 50k tokens a month of Termiyo’s own AI
- No sync
Pro
$10/ month
Your devices, in sync
- Encrypted sync, two devices signed in at once
- Giti share links and one-click CI
- One agent run that keeps going after you quit
- 1M tokens a month of Termiyo’s own AI
A 14-day trial starts when you register; share links and CI need the paid plan itself.
Team
$25/ month
Five people included
- Shared vaults, roles and an audit trail
- Host a shared terminal
- Four devices signed in at once, five detached agent runs
- 4M tokens a month of Termiyo’s own AI
Business and Enterprise, and everything each plan includes, are on the pricing page.
Bring the whole crew.
Free for one person · macOS, Windows and Linux · no API key for the AI tools you already use
Write to us here
This reaches the same inbox as an email does. We reply to the address you leave.