Termalin in 60 seconds.
A fast SSH client for you. A safe way in for your AI agents: MCP server built in, keys never leave Termalin, a policy per host, and every agent session live on your screen.
Free on Windows, macOS, Linux & iOS → https://t.co/NN8zdbLbOr
Termalin 0.1.48 is out.
- Remote desktops: RDP and VNC in the app or the browser, through a Connector with no inbound port
- The Connector now installs on Windows and macOS, with monitoring there too
- Encrypted server backups that only your key opens
https://t.co/KlN2GZptcw
Coming soon: Termalin for Chrome.
A command in a chat answer or a Q&A thread gets a Run button. You confirm, it runs on your server through your Connector, and the result goes into the chat box only when you click.
No SSH key in the browser. Every command in your activity log.
@ritesh8x Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
@launch_llama Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
Sneak peek at the next Termalin app update:
- Keys saved under SSH Keys show up in Agent Keys on desktop
- A dropped SSH connection just reconnects, no "Connection lost" error
- Copy on Windows retries when another app holds the clipboard
No date yet.
nginx down at 2 AM, the site on a 502. Termalin's alert names the failed service; ask Claude or ChatGPT why, and it finds one } too many on line 42, runs nginx -t, then starts nginx.
Short blips get one message. An outage of 15+ minutes also gets "back to normal".
@hiteshxdev On Windows it's usually the WSL2 VM behind Docker Desktop that eats the RAM, not Docker itself. Cap it: in %UserProfile%\.wslconfig put [wsl2] and memory=2GB on the next line, then run wsl --shutdown. Or learn on a cheap VPS over SSH and keep the laptop for the editor.
Docker's default json-file log driver keeps every line forever, so a chatty container can fill the disk by itself.
Cap it in /etc/docker/daemon.json (max-size 10m, max-file 3), restart Docker, then recreate the containers. Old ones keep the old settings until you do.
@lucas_builds Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases. Native MCP, so Claude Code (or ChatGPT and Claude chat through a Connector) works on your servers without ever holding your SSH key.
Saturday question for people who run servers: what is the first command you type when a box feels off?
Mine: uptime, then df -h, then journalctl -p err -b | tail.
@PrashantByte09 Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
@Seanwvibedev Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
Ask https://t.co/SBxoLQvfqQ or ChatGPT "Are all my servers online?" It checks them, finds / at 91% on web-01, trims the journal when you say yes, and reports back.
No SSH key in the chat, no open port, and every command lands in your activity log.
@spacedevin Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
@MohakBajaj5 Termalin: a cross-platform terminal for SSH, SFTP, S3 and databases, built for developers and support teams. Native MCP and Connectors, so you can connect your servers right in ChatGPT or Claude chat.
SSH from a chat window, no terminal open.
Add Termalin as a connector in https://t.co/KNBb72Lzl4 or ChatGPT, sign in once, and the chat can list your servers, run commands, tail logs and edit files. In the browser or on your phone.
No SSH key pasted anywhere. Every command is audited.
@PrateekJainDev Nice split. One way to make the parentRef choice fail closed: set allowedRoutes.namespaces on the public Gateway's listener to a Selector (say, a public=true label). Then a route in an unlabeled namespace can't attach to it, even if someone points it there by mistake.
An API key refused with a bare "invalid" sends you guessing. Termalin's keys now say why: expired, revoked, or cut off when it was pasted, and the cabinet shows the last refused attempt.
Also new: ready-to-paste setup for Claude Code, Cursor and VS Code, plus a Test button.