[PR #3858] Create Telnet connection type and default loopback profile for Universal #25533

Open
opened 2026-01-31 09:10:07 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/3858

State: closed
Merged: Yes


Summary of the Pull Request

For our Universal terminal for development purposes, we will use telnet to escape the universal application container and empower developers to debug/diagnose issues with their own machine on loopback to the already-elevated telnet context.

PR Checklist

  • Closes internal development-blocker deliverable
  • I work here
  • Manual testing
  • Internal tool right now to test the waters on what's possible, no public doc.
  • I'm a core contributor

Detailed Description of the Pull Request / Additional comments

We have two factors at odds here:

  1. To develop our modern devices platforms, our developers need the ability to run diagnostics and utilities directly on a device.
  2. Universal applications tend to be stuck inside a container

This provides a development-based way around the issue. The telnet server exists on a device when it is in a development mode and runs in an already elevated context. This is great for performing activities from off-device, but not for the same device. However, if we loopback out of the containered app to the elevated context, we should be able to be on-device but with the same power as off-device.

So overall, this adds the following:

  1. A telnet connection type, leveraging the MIT-licensed telnetpp library for the communication channel
  2. Telnet profile generators
  3. Customization of the universal-edition of settings loading so it goes directly into this telnet connection type
  4. A bunch of odds and ends cleaning up strings and handling errors and connection things (and icons and whatnot).

This enables a developer on a more constrained device that is set to developer mode to launch a special edition of Windows Terminal straight into a prompt that runs in an elevated context against the same device.

TODO:

  • Expose third-party notices in about box? @DHowett-MSFT
  • Upload telnetpp vcpkg to feed and update references
  • Do first pass PR on this myself then set to "ready" status from "draft"
  • Hookup resize
  • Make the tab say something
  • Telnet server detects this connection type and moves up to xterm256 utf-8 mode.

TODO after completion:

  • Ingest this package into development images of Windows

Validation Steps Performed

  • Connected from local dev box running this application in a containered context to the telnet server running on another device and ran commands.
  • Connected in loopback on the device itself to itself and ran commands.
**Original Pull Request:** https://github.com/microsoft/terminal/pull/3858 **State:** closed **Merged:** Yes --- ## Summary of the Pull Request For our Universal terminal for development purposes, we will use telnet to escape the universal application container and empower developers to debug/diagnose issues with their own machine on loopback to the already-elevated telnet context. ## PR Checklist * [x] Closes internal development-blocker deliverable * [x] I work here * [x] Manual testing * [x] Internal tool right now to test the waters on what's possible, no public doc. * [x] I'm a core contributor ## Detailed Description of the Pull Request / Additional comments We have two factors at odds here: 1. To develop our modern devices platforms, our developers need the ability to run diagnostics and utilities directly on a device. 2. Universal applications tend to be stuck inside a container This provides a development-based way around the issue. The telnet server exists on a device when it is in a development mode and runs in an already elevated context. This is great for performing activities from off-device, but not for the same device. However, if we loopback out of the containered app to the elevated context, we should be able to be on-device but with the same power as off-device. So overall, this adds the following: 1. A telnet connection type, leveraging the MIT-licensed telnetpp library for the communication channel 2. Telnet profile generators 3. Customization of the universal-edition of settings loading so it goes directly into this telnet connection type 4. A bunch of odds and ends cleaning up strings and handling errors and connection things (and icons and whatnot). This enables a developer on a more constrained device that is set to developer mode to launch a special edition of Windows Terminal straight into a prompt that runs in an elevated context against the same device. TODO: - [ ] Expose third-party notices in about box? @DHowett-MSFT - [x] Upload telnetpp vcpkg to feed and update references - [x] Do first pass PR on this myself then set to "ready" status from "draft" - [x] Hookup resize - [x] Make the tab say something - [ ] Telnet server detects this connection type and moves up to xterm256 utf-8 mode. TODO after completion: - [ ] Ingest this package into development images of Windows ## Validation Steps Performed - Connected from local dev box running this application in a containered context to the telnet server running on another device and ran commands. - [x] Connected in loopback on the device itself to itself and ran commands.
claunia added the pull-request label 2026-01-31 09:10:07 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#25533