██████╗ ██████╗ ████████╗████████╗██╗   ██╗
██╔════╝██╔═══██╗╚══██╔══╝╚══██╔══╝╚██╗ ██╔╝
██║     ██║   ██║   ██║      ██║    ╚████╔╝
██║     ██║   ██║   ██║      ██║     ╚██╔╝
╚██████╗╚██████╔╝   ██║      ██║      ██║
 ╚═════╝ ╚═════╝    ╚═╝      ╚═╝      ╚═╝   
persistent · agentic · collaborative
cotty 1.2.0  now on web, desktop & mobile

Your terminal,
now it thinks.

cotty is an agentic SSH terminal for your servers. Persistent sessions with splits, tabs, a built-in file browser and live collaboration — plus an agent that plans the routine ops and runs them only on your approval.

Get started
api-prod db-staging
terminal · session 1
subham@api-prod ~ $ node -v
v18.17.0
subham@api-prod ~ $ cotty upgrade node 22
↳ plan: install via nvm · re-link PATH · verify build
✓ node v22.2.0 installed
✓ PATH repointed · npm rebuilt · build green
subham@api-prod ~ $
agent
claude-sonnet-4.5
patch the openssl CVE on this host
Found CVE-2024-2511 in openssl 3.0.2. Here's the one-line fix — approve to run it:
run command pending
$ apt-get install --only-upgrade openssl
Approve Deny

splits · tabs · a planning agent that waits for your approval

one agent · every runtime on your box

Node.js Python Docker Kubernetes PostgreSQL Redis nginx Ubuntu Go Rust Bun systemd Git Caddy
why cotty

A real terminal. A careful agent.
One window.

Everything you expect from a desktop terminal — plus an agent that does the tedious parts and never runs a command you didn't approve.

persistent · portable

Pick up exactly where you left off

Your shells, scrollback and running processes live server-side in persistent, tmux-backed sessions. Close the tab, hop to another laptop, open your phone — splits, tabs and layout come back intact.

  • Window splits & tabs, just like your desktop terminal
  • Layouts sync across every device in real time
  • Survives dropped connections — no lost work, ever
  • Touch-friendly on mobile, with a key bar for Ctrl, Esc and arrows
workspace · 4 hosts · 5 tabs
api-prod
$ tail -f app.log
200 GET /health
db-staging
$ psql
rows: 1.2M
edge-eu
$ htop
cpu 12%
worker
$ pm2 status
online · 0 restarts
agentic · safe

An agent that plans, then asks

Describe the goal in plain English — "bump Node to 22", "free up disk", "patch this CVE". cotty proposes the exact commands and runs them only when you approve. Every action is logged.

  • Proposes a step-by-step plan before touching anything
  • Approve or deny each command — nothing runs on its own
  • Full audit trail of every approval and result
agentclaude-sonnet-4.5
free up disk on this box
Docker is holding 14 GB in dangling images. I'd reclaim it with:
run commandpending
$ docker image prune -af
ApproveDeny
collaborative

Your servers, shared safely

Invite a teammate into a host or a live session instead of pasting commands into Slack. You decide who gets in and what they can do — credentials never leave the server.

  • Share a host or a live terminal session
  • Access you control, per person
  • No shared passwords, no screen-sharing gymnastics
api-prod
51.84.22.10 · ubuntu
live
Shared with
SK MJ AR +2 2 watching now
new in cotty

A full workspace, not just a prompt

The latest releases turn cotty from a terminal into the whole cockpit — files, search, metrics and layout, all in one window.

Built-in SFTP browser

Browse, upload and download files over SFTP right next to your terminal. Drag a file in to send it, click to pull it down — no second app.

Find in terminal

Search the scrollback with live match counts and jump between hits. Stop scrolling for that one error line — just type and find it.

Drag-and-drop panes

Rearrange your layout by dragging a pane where you want it, with drop-zone hints and a smooth reflow as everything settles.

Split across hosts

Put api-prod and db-staging side by side — every pane can connect to a different server.

Performance HUD

A live overlay of round-trip latency, throughput, frame rate and memory — with sparklines — so you can see a slow link the moment it happens.

Safe multi-line paste

Paste more than one line and cotty previews it first — so a stray newline never auto-runs a command you didn't mean to send.

under the hood

The details that keep it safe and fast

Credentials encrypted at rest

Every SSH key and password is sealed with AES-256-GCM before it touches the database — and decrypted only on the server, per request. They are never synced to the browser.

Email or Google sign-in

Sign in with Google, or email with one-time codes and password reset — all via better-auth.

tmux multiplexing

Concurrent tabs per host on durable, named sessions that outlive the socket.

Real-time cross-device sync

Hosts, tabs, split layouts and chats stay in lockstep across every device the moment they change — powered by a sync engine, not page reloads.

Full session audit log

Every connect and disconnect is recorded with a reason and duration, so you always have a paper trail of who touched what and when.

GPU-fast rendering

A WebGL-accelerated terminal that stays smooth under a firehose of output.

how it works

From zero to managed in three steps

1

Connect a host

Add an SSH target with a key, password or agent. It's encrypted before it's ever stored, and tested before it's saved.

2

Work your way

Drop into a terminal with splits and tabs, or just tell the agent what you need in plain English.

3

Approve & ship

Review the agent's plan, approve the command, and it runs — with every action written to the audit log.

security first

Your keys. Your servers.
Your call.

cotty is built so the powerful parts can't act behind your back.

  • AES-256-GCM encryption for every stored credential
  • Credentials are never synced to the browser
  • The agent proposes; nothing runs without your approval
  • A full audit trail of every session and action
credentials · encrypted at rest
host api-prod key ▓▓▓▓▓▓▓▓ aes-256-gcm
host db-staging pwd ▓▓▓▓▓▓▓▓ aes-256-gcm
host edge-eu key ▓▓▓▓▓▓▓▓ aes-256-gcm
↳ decrypted only on the server, per request
wherever you work

Web today. Desktop next.

available now

Web app

Nothing to install. Works in desktop and mobile browsers — open console.cotty.sh and you're in.

soon

macOS

A native app for Apple Silicon and Intel, with secure system-browser sign-in.

soon

Windows

The full cotty terminal as a native Windows app with a one-click installer.

faq

Questions, answered

An agentic terminal for your servers. Connect over SSH, work in persistent sessions with splits and tabs, and let an agent plan the routine ops — which only run on your approval.
No. cotty runs in the browser at console.cotty.sh. Native macOS and Windows apps are on the way for when you want a dock icon.
Encrypted at rest with AES-256-GCM on your cotty server, decrypted only when a connection is made — and never sent to the browser.
No. It proposes a plan, and every command waits for your explicit approval before it runs. Each approval and result is recorded.
Yes. Share a host or a live session with teammates, with access you control per person — no shared passwords required.
The usual stack on a Linux box — Node, Python, Docker, databases and more. It reads what's installed and helps you upgrade, switch or fix versions safely.
Yes. cotty has a built-in SFTP file browser you can open in a split beside your terminal — browse remote directories, drag files in to upload, and click to download, without leaving the app.
Yes. cotty has a touch-friendly mobile layout with bottom navigation and an on-screen key bar for the keys phones don't have — Ctrl, Esc, Tab and arrow keys — that lifts above the soft keyboard while you type.
Use Google, or sign up with an email and password — verified with a one-time code, with password reset if you forget. Your choice.

Stop babysitting servers.
Start shipping.

Persistent terminals with an agent that keeps your stack healthy.

Get started