SSH Connections

Save Your SSH Connections,
Run AI Agents on the Remote Box

AgentsRoom is an SSH connection manager and a built-in SSH terminal in one. Save your remote servers once, connect with an SSH key or a password, then run Claude Code, Codex or Antigravity CLI straight on the remote machine.

Stop juggling a separate SSH client and a code editor. Keep your connection profiles, your terminal and your AI coding agents in the same app, pointed at the same remote server.

Remote SSH
Encrypted SSH tunnel
AgentsRoom
prod-vps.acme.dev
staging.acme.dev
gpu-01.lab
SSH key:22
Remote server
deploy@prod-vps.acme.dev
Production VPS
Agent running
Save once, connect in one clickCredentials stay on your machine

How AgentsRoom connects to a saved SSH server and runs an AI coding agent straight on the remote machine.

Most AI coding agents assume your code lives on the same machine you are sitting at. But plenty of work happens on a remote server : a VPS, a staging box, a beefy build machine, a shared dev server the whole team uses. AgentsRoom treats that case as a first-class one. Save an SSH connection, open the built-in terminal over SSH, and you are working on the remote host as if it were local.

The SSH connection manager keeps a profile for every server you touch : host, port, user, and whether you authenticate with an SSH key or a password. No more digging through scattered config files or retyping the same long command. Pick a saved connection, hit connect, and the terminal lands you on the box in one step.

The payoff is running AI coding agents where the code actually is. Connect to your remote server over SSH, then launch Claude Code, Codex, Antigravity CLI or another agent on that machine. The agent reads and edits the files on the remote host, runs the test suite against the remote environment, and you drive the whole thing from AgentsRoom without a second SSH client open on the side.

An SSH Client Built for Running AI Agents

Connection management, a real terminal, and remote agent execution in one place.

Saved SSH Connections

Store a reusable profile for each remote server : host, port, user and auth method. Your VPS, your staging box and your team dev server all live in one list. Pick a connection and you are in, no command to retype.

Key or Password Auth

Authenticate with an SSH key or a password, whichever the server expects. Point a profile at your private key file or store a password, and AgentsRoom handles the handshake when you connect.

Built-in Terminal Over SSH

Every connection opens a real terminal on the remote host inside AgentsRoom. Full colored output, command history and copy-paste, served by the same terminal you already use for local projects. No separate SSH client to keep open.

Run Agents on the Remote Server

Launch Claude Code, Codex, Antigravity CLI or another agent directly on the remote machine over SSH. The agent works on the files that live on the server and runs commands in the remote environment, not on your laptop.

Attach SSH to a Project

Flag a project as remote and bind it to a saved SSH connection. From then on the project opens its terminals and agents on that server, so a remote codebase behaves like a normal AgentsRoom project.

Credentials Stay Out of the Repo

Your SSH keys stay on your machine and passwords stay encrypted in its keychain, unless you turn on synced passwords, which carry them end-to-end encrypted. Nothing is ever written into the project repo, so nothing about your servers leaks into a folder a teammate might clone.

Import Your ~/.ssh/config

The servers you already reach from a terminal come in as they are. AgentsRoom reads the host blocks in ~/.ssh/config, keeps the identity file each one declares, and preserves a ProxyJump through a bastion : it connects through the alias and lets OpenSSH resolve the block, exactly as your shell would.

AWS SSM Sessions

Reach an instance that has no public address and no inbound SSH port, through aws ssm start-session. The session is authorized by the AWS profile already configured on your machine, so there is no password and no key to store in the app.

WinRM and PowerShell Remoting

Reach a Windows host that has no OpenSSH but speaks WinRM, with NTLM for a workgroup machine or Kerberos for a domain member, including the PowerShell endpoint of an on-prem Exchange. CredSSP covers the second hop, when the session must in turn reach Active Directory or a file server: HTTPS with a checked certificate, and the form warns you that the password is handed to that server. From a workstation outside the domain you name the domain controller and the server IP yourself, and AgentsRoom handles the lookups without touching your hosts file. Agents run PowerShell through it read-only by default; writes wait for your confirmation, every one of them, only the risky ones, or none, as you choose per connection.

Your Passwords Stay Encrypted, on Your Machine by Default

An SSH connection manager is only useful if you can trust it with credentials. The name, host, port and user of a connection follow your account, so a server saved on one computer appears on the others without being retyped. Your SSH keys stay on the machine, and passwords and key passphrases stay encrypted in the keychain of the machine where you typed them. Turn on synced passwords in Settings > Account (off by default) and they follow too, end-to-end encrypted with a key only your computers hold: AgentsRoom stores them without being able to read them. Nothing is ever written into the project you are working on: connecting to a remote server never adds a config file to the repo and never commits a host or a secret by accident.

Authentication runs over standard SSH. Key-based login uses your existing private key, exactly as your shell would. Password login is sent over the encrypted SSH channel like any other SSH client. AgentsRoom is the client, your server stays the source of truth for what it accepts.

When you run an AI agent on the remote box, the code stays on the remote box. The agent reads and edits files on the server you connected to. Nothing about the remote project is copied to your laptop unless you ask for it, and your connection profiles are never shared with anyone else.

From Zero to Agent on a Remote Server

Save a connection once, run agents on it forever.

01

Save the SSH connection

Add a connection profile : host, port, user, and either your SSH key file or a password. Give it a name like prod-vps or staging and it is saved for next time.

02

Connect and open the terminal

Pick the saved connection and hit connect. AgentsRoom opens a built-in terminal over SSH on the remote host. You are now on the server, with full colored output and command history.

03

Run an AI agent on the box

Launch Claude Code, Codex or Antigravity CLI in that remote terminal. The agent works on the files on the server and runs against the remote environment, and you drive it from AgentsRoom like any other project.

When You Need Agents on a Remote Server

Not every codebase lives on your laptop.

Code on a VPS

Your app runs on a VPS and you want to fix it where it lives. Open the saved SSH connection, run a Claude Code agent on the box, and patch the bug against the real environment, dependencies and all.

Work on a staging box

A staging server reproduces a bug your laptop never will. SSH in, point a Codex agent at the staging codebase, and let it reproduce and fix the issue on the machine that actually shows it.

Shared dev server

The team works on one shared dev server. Everyone saves the same SSH connection, opens their own terminal, and runs their own agent on the host without setting up a local clone each.

No local setup needed

A heavy toolchain you do not want on your laptop lives on a build machine. Connect over SSH, run a Antigravity CLI agent there, and keep your own machine clean while the work happens remotely.

AI agents + SSH

How can my AI agents access my SSH connections?

ssh_listssh_connectssh_connection_new

Through AgentsRoom MCP. Your saved connections are exposed to every agent as five MCP tools : ssh_list returns the servers usable in the current project (SSH, AWS SSM and WinRM alike), ssh_exec runs one command on a server and hands back its output (a PowerShell line on a WinRM host, read-only unless you allow writes, which you confirm one by one, only when risky, or never, as you choose), ssh_transfer moves one file to or from a server, ssh_connect opens one as a real terminal tab, and ssh_connection_new proposes a server you have not saved yet. So when you tell an agent "connect to prod and read the logs" or "list the Exchange send connectors", it does not have to guess a hostname or write a command by hand : it reads your connection list and works on the right machine.

Agent SSH access is deliberately credential-free. ssh_list only ever returns metadata: name, host, port, user, auth type and scope. Passwords and key passphrases stay encrypted in your OS keychain, private keys stay on your disk, and the desktop app injects the secret into the terminal itself. The agent names a connection, it never handles it.

A session an agent opens with ssh_connect is a visible terminal tab you can read, type into and close at any moment, and a command it runs with ssh_exec comes back in its conversation with its exit code, so you always see what was run and what the machine answered. Files travel the same way : with ssh_transfer an agent pulls a dump or a log off a server, or pushes a file to it, through the same credential-free channel, and gets back a path on your machine rather than the file pasted into its conversation. A connection can be saved for a single project or globally, so an agent only ever sees the servers that make sense for what you are working on.

Creating can also be entirely the agent's job. ssh_connection_new keeps the reviewed path: it opens the creation form pre-filled with what the agent found in a compose file, a deploy script or your documentation, and you are the one who reviews it, types the credential and saves. Unless you turn off "Agents can manage connections" (Settings, on by default), ssh_connection_save writes the connection outright, and even then the credential never travels through the conversation: the agent names a secret from your vault and the desktop copies it. The off switch is written into the setting rather than asked for in a prompt, because a connection an agent could register unseen would be a backdoor.

Discover AgentsRoom MCP

FAQ

Can I save multiple SSH connections?

Yes. AgentsRoom works as an SSH connection manager : save a profile per remote server with its host, port, user and auth method, name them, and pick the one you need. Your VPS, staging box and shared dev server all live in the same list.

Does it support SSH key and password authentication?

Both. A connection can authenticate with an SSH key by pointing at your private key file, or with a password. AgentsRoom acts as a standard SSH client, so whichever method your server accepts is what you use.

Can I run Claude Code or Codex on a remote server through SSH?

Yes. That is the point of the feature. Open a saved SSH connection, then launch Claude Code, Codex, Antigravity CLI or another agent in the remote terminal. The agent runs on the remote machine and works on the files that live there, not on your laptop.

Where are my SSH credentials stored?

The name, host, port and user of each connection are saved to your account, so they appear on all your computers. Your SSH keys stay on the machine, and passwords and key passphrases stay encrypted in the keychain of the machine where you typed them. With synced passwords on (Settings > Account, off by default), passwords and passphrases follow your account too, end-to-end encrypted with a key only your computers hold: AgentsRoom stores them without being able to read them, and you can still keep any password on one machine only. Nothing is ever written into the project repo, so connecting to a server does not add config files or secrets to anything a teammate might clone.

Do I still need a separate SSH client?

No. AgentsRoom includes a built-in terminal over SSH, so your connection manager, your terminal and your AI agents are in one app. You can keep your usual SSH tools if you like, but you do not need a second client open just to reach the server.

Can my AI agents access my SSH connections?

Yes, through AgentsRoom MCP. Agents call ssh_list to see the servers saved for the current project (plus your global ones), then ssh_connect to open one as a terminal tab. It is the supported way for an AI agent to get SSH access: no hand-written ssh command, no credential pasted into a prompt.

Do my agents see my SSH password?

Never. The MCP tools only expose connection metadata (name, host, port, user, auth type). The password or key passphrase stays encrypted in your machine keychain and is injected into the terminal by AgentsRoom itself, after the agent has asked for the connection by its id.

Can I import my existing ~/.ssh/config?

Yes. AgentsRoom reads the host blocks in ~/.ssh/config and turns them into saved connections, keeping the identity file each block declares. Anything OpenSSH resolves on its own keeps working, a ProxyJump through a bastion included, because AgentsRoom connects through the alias and lets OpenSSH apply the block rather than trying to reimplement it.

Can I reach a server with no public address and no open SSH port?

Yes, with an AWS SSM connection. AgentsRoom opens the session with aws ssm start-session, authorized by the AWS profile already configured on your machine. There is no password and no key to store in the app, and the instance can stay closed to inbound SSH.

Can an agent create a new SSH connection?

Yes, and by default it can even save it on its own. ssh_connection_save writes the connection outright, with no form, and the credential never appears in a conversation: the agent names a secret from your vault and AgentsRoom copies it. Prefer ssh_connection_new when you would rather review first: it opens the creation form pre-filled with the host, port and user the agent found in your deploy script or your documentation, and nothing is stored until you review it, type the credential and save. Turn off "Agents can manage connections" in Settings and only the reviewed path remains, because a connection an agent could register without you seeing it would be a backdoor. When the host already exists in your ~/.ssh/config, importing it is the better route : it keeps the alias, so your bastions and your keys keep working.

Can I connect to a Windows server and get PowerShell?

Yes, two ways. Windows Server has shipped OpenSSH since 2019, so a Windows machine is saved like any other SSH connection, and a remote shell option on the connection makes the terminal land on a PowerShell prompt (Windows PowerShell or PowerShell 7) instead of cmd.exe. For a host that only speaks WinRM, or for the PowerShell endpoint of an on-prem Exchange server, save a WinRM connection instead: NTLM or Kerberos, or CredSSP when the session must reach a second server, with the domain controller and the server IP entered by hand when your workstation is not joined to the domain. Both work whether you run AgentsRoom on macOS, Windows or Linux; the WinRM path installs one small Python package once, in a private folder AgentsRoom owns.

Can I open a project that only exists on a remote server, without cloning it here?

Yes. The New project dialog asks where the project lives: This computer, or Remote server (SSH). Pick a saved connection and the path of the repository on the host, and the project opens from there: its agents start on the server, in that directory, on the files that live there, and nothing is copied to your laptop. The card of every saved connection also carries an Open a project on this server button that opens the same dialog with the connection preselected, and a project of your account that has no folder on this machine can be opened on a server the same way. Role, persona, system prompt, permission mode, skills, status tracking and the Codex account chosen for the agent travel with the agent (the account is copied to the host before the launch, a per-connection setting you can turn off); the AgentsRoom MCP tools (backlog, project memory, skills, dev commands, agent mail) travel too, installed on the host before each launch and wired back to this computer through a reverse SSH tunnel, a per-connection setting on by default that needs Node on the host; a missing CLI on the host is installed on the host, over SSH, from the banner of the agent terminal; and a team run works on a project opened on a server. A ticket marked Code in a separate worktree gets its worktree on the server too, under .worktrees/ of the remote checkout: the agent starts in it; the only thing that still asks for a local checkout is the Own checkout option of a team step. The embedded browser follows the agent as well when the agent has browser access. Environment variables and the other providers' account profiles stay wired to this computer, and the agent form says so while the project is on a server. One requirement: the host must answer with a Linux or macOS shell. A Windows server reached over SSH gives you the terminal and PowerShell, but not a remote project yet; set WSL as the default shell of its OpenSSH service and it behaves like a Linux host.

Do agents running on a server stop when I close AgentsRoom?

Not if you ask them to keep going. In the settings of an SSH connection, turn on Keep agents running on this host when AgentsRoom closes: agents launched there run inside a tmux session on the server (tmux 3.0 or later), so quitting the app, putting the laptop to sleep or losing the network no longer stops them, and the next launch of that agent, from this computer, another one of your account or the phone, attaches to it. The agents use the CLIs installed on the server, including those in your user folders, so nothing has to be installed on your laptop; if a CLI is missing there, the terminal offers to install it on the server.

You may also like

RDS through AWS SSM

Reach an Amazon RDS instance that has no public endpoint, from your own machine, through aws ssm start-session and the AWS-StartPortForwardingSessionToRemoteHost document. No bastion to maintain, no VPN, no inbound SSH rule. AgentsRoom opens the session on a loopback port and connects its database client through it. MySQL, PostgreSQL and MongoDB, so RDS MySQL, RDS PostgreSQL, Aurora and DocumentDB.

Database Connections

Save your MySQL, PostgreSQL and MongoDB connections, reach a database in a private subnet through an SSH tunnel or an AWS SSM session, and let your AI agents query it over MCP. Read-only by default, one statement per call, capped result sets, and the password never reaches the agent. Export, import and database-to-database copy included.

Secret Manager

Store API keys, tokens and passwords in your OS keychain, reference them as {{secret:NAME}} in dev commands and agent environments, and let AgentsRoom resolve them at launch. Agents see the names, never the values, and nothing is ever synced to a server.

Repository import

Connect GitHub or GitLab, browse the repositories you actually have access to, and clone several at once. Each one becomes a project with its own AI coding agents. Self-hosted GitLab instances supported.

Dev Terminals

Per-project terminal manager and process launcher. Start backend, frontend and workers in one click, locally or on a remote server over SSH.

Remote Agent Control

Pilot your AI coding agents from your phone. Drive terminals, projects and prompts on your computer or remote server from iOS and Android.

Localhost Tunnel (Live Preview)

Built-in secure tunnel that exposes a local or remote dev server as a public HTTPS URL. Preview your work in progress from anywhere.

Multi-Project, Multi-Agent

Run many projects and many AI agents in parallel, local and remote, from a single visual command center.

Bring Your AI Agents to the Remote Server

Download AgentsRoom, save your SSH connections, and run Claude Code, Codex or Antigravity CLI on any VPS or remote server through a built-in terminal.

FreeDownload

Companion app: monitor your agents on the go

Bring your own: Claude, Codex, Antigravity CLI, or other AI provider.

Get the extension
Chrome Web Store

Push bugs and requests straight to your public backlog.

Multiple projects
Multi-provider
Multiple agents
Live status
File diff & commit
Mobile companion
Live preview
Agent teams
Browser automation
Backlog-driven dev
Prompt Library
Skills Library
View all features