conv.

All stories
TechActive · 16h

Fly.io details VSCode SSH agent architecture, security tradeoffs

Fly.io blog post examines VSCode's remote SSH editing system and its security implications for LLM-based agentic development.

What to know

  • VSCode's SSH remote editing agent downloads a Node.js binary over SSH and establishes a WebSockets tunnel that grants broad local execution capabilities to the remote machine—differing significantly from Emacs Tramp's lighter-weight approach.
  • Security concern: the protocol allows a compromised remote machine to initiate local code execution, edit files, and persist itself on the local VSCode host, raising risks for production use.
  • Developer consensus splits: some view the architecture as fit-for-purpose and appropriate for dev environments with proper isolation; others worry about attack surface and reverse code execution from compromised remotes.

The dispute Whether VSCode's allowance of remote-initiated local execution is a design flaw or an acceptable tradeoff hinges on how tightly users isolate dev machines from production and whether they view the remote as a trusted component of the local system. · positions read across 23 posts and comments

many voices

VSCode's architecture is reasonable for remote dev; complaints misunderstand its intended threat model.

  • “So a program that is specifically designed to edit files and run arbitrary commands on a remote machine... can do so. Not sure where the bananas part comes in.”

    10000truths · Hacker News ↗
some voices

Remote-initiated local code execution is a genuine security risk that should concern users.

  • “The issue the article highlights is this opens you to local code execution initiated by the remote.”

    Rapzid · Hacker News ↗
some voices

VSCode's SSH implementation has practical operational issues beyond security.

  • “As a Linux user I've hated VSCode's ssh. There's lot of annoying things that make it harder to admin for. Like it doesn't pick up the MotD…”

    godelski · Hacker News ↗

Fly.io Cloud platform operator

Fly.io details VSCode SSH agent architecture, security tradeoffs
fly.io

How it unfolded 2 developments, newest first · click a bar or a number to jump articlespostscomments

Peak 5 pieces in one half hour at Yesterday, 5 PM; 25 pieces over 17 hours (1 article · 2 posts · 22 comments) Yesterday, 4:13 PM — quietYesterday, 4:43 PM — 2 pieces · 1 article · 1 post — Hacker News 1, Newswires 1Yesterday, 5:13 PM — 1 piece · 1 post — Mastodon 1Yesterday, 5:43 PM — 5 pieces · 5 comments — Hacker News 5Yesterday, 6:13 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 6:43 PM — 3 pieces · 3 comments — Hacker News 3Yesterday, 7:13 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 7:43 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 8:13 PM — quietYesterday, 8:43 PM — 2 pieces · 2 comments — Hacker News 2Yesterday, 9:13 PM — quietYesterday, 9:43 PM — quietYesterday, 10:13 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 10:43 PM — quietYesterday, 11:13 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 11:43 PM — 1 piece · 1 comment — Hacker News 1Today, 12:13 AM — quietToday, 12:43 AM — 1 piece · 1 comment — Hacker News 1Today, 1:13 AM — quietToday, 1:43 AM — 1 piece · 1 comment — Hacker News 1Today, 2:13 AM — quietToday, 2:43 AM — 1 piece · 1 comment — Hacker News 1Today, 3:13 AM — 2 pieces · 2 comments — Hacker News 2Today, 3:43 AM — quietToday, 4:13 AM — quietToday, 4:43 AM — quietToday, 5:13 AM — quietToday, 5:43 AM — 1 piece · 1 comment — Hacker News 1Today, 6:13 AM — quietToday, 6:43 AM — quietToday, 7:13 AM — quietToday, 7:43 AM — quietToday, 8:13 AM — quietToday, 8:43 AM — quiet 12
8 PMtoday4 AMnow · 9:13 AM ET
  1. 2

    Developers debate threat model and real-world applicability

    Hacker News commenters divided on severity: some argued VSCode's capabilities are intentional and appropriate for remote dev environments if properly isolated; others raised concerns about reverse code execution from compromised remotes and memory overhead.

    “The issue the article highlights is this opens you to local code execution initiated by the remote.”
    — Rapzid, HN commenter · source
    • > The agent runs over port-forwarded SSH. It establishes a WebSockets connection back to your running VSCode front-end. The underlying protocol on that connection can: Wander around the filesystem Edit arbitrary files Launch its own shell PTY processes Persist itself Wait, could someone clarify which machine is being referred to here?So in the…

      xg15Hacker News14h agoview on Hacker News ↗
    2 more of the top 3 · 19 posts in this stretch
    • Allow me to translate this for the vibe bros. The "agent" here is not an LLM agent, it's the SSH agent that connects the VSCode front-end to the remote back-end.The issue the article highlights is this opens you to local code execution initiated by the remote.Here is the security notice on the official SSH extension…

      RapzidHacker News13h agoview on Hacker News ↗
    • I have been using VSCodium (chromium-like version of VSCode) with this extension:https://github.com/jeanp413/open-remote-sshI run the editor (and its extensions), my projects and any agent harnesses from inside a container and use that extension to get an editor.This is mostly to protect my credentials and data from malicious…

      DanielHBHacker News5h agoview on Hacker News ↗
    all of them →
  2. 1

    Post highlights bidirectional execution risk in VSCode remote protocol

    The Fly.io analysis identifies that VSCode's WebSockets-based remote protocol allows the agent on the remote machine to wander the filesystem, edit arbitrary files, launch shell processes, and persist itself—granting broad execution capabilities initiated by the remote.

    “In security-world, there's a name for tools that work this way. I won't say it out loud, because that's not fair to VSCode, but let's just say the name is murid in nature.”
    — Fly.io
    1. first by HN Frontpage, 16h ago

    • When I give an agent ssh access to something I want to be able to watch and fully understand what it's doing. I want it to essentially only "type" things into the CLI that I could have typed myself, I can comprehend what it's doing, and am not surprised by the results. Opencode and a smart LLM (qwen 3.8-flash-next, deepseek v4 0731 or smarter) do…

      walrus01Hacker News15h agoview on Hacker News ↗
    2 more of the top 3 · 4 posts in this stretch
    • hkrn@mstdn.social

      VSCode's SSH Agent Is Bananas L: https:// fly.io/blog/vscode-ssh-wtf/ C: https:// news.ycombinator.com/item?id=4 9822555 posted on 2026.09.23 at 17:01:48 (c=0, p=4)

      hkrn@mstdn.socialMastodon15h agoview on Mastodon ↗
    • Missing a (2025)FYI VSCode's SSH Agent is a godsend for remote development - the "disadvantages" that Fly lists are part of its advantages. I've worked in several teams that have made extensive use of the extension, and it's never been an issue. You can restrict SSH access arbitrarily to ensure whatever security or access guardrails you need.

      danielklnsteinHacker News15h agoview on Hacker News ↗
    all of them →
  3. background

    Fly.io publishes analysis of VSCode SSH agent architecture — Fly.io published a blog post examining how VSCode's remote SSH editing feature works, comparing it to Emacs Tramp and detailing the security model of VSCode's approach, which involves downloading a Node.js-based agent that runs over port-forwarded SSH.

What people are saying 17 voices from 1 site · best of 23 · verbatim