chore: simplify plugin readmes, changelogs and manifest descriptions

This commit is contained in:
LukeGus committed 2026-09-27 00:24:48 -05:00
1 parent 7423e33184
commit 8043d6dbdd
96 files changed
+1147 -722

No files matched your search

+2 -12
View File
@@ -2,16 +2,6 @@
## 1.0.0
Bundled with Termix 2.9.0.
First release, bundled with Termix 2.9.0.
- Runs entirely through the plugin SDK: no imports from Termix core.
- Remote Desktop's admin switch and guacd URL, each user's RDP defaults and
every host's RDP, VNC and Telnet options are this plugin's settings now,
moved over on upgrade.
- The user's RDP defaults now apply to saved hosts too, not only Quick Connect.
- Provides `sessions.live` for RDP, VNC and Telnet, so these sessions can be
shared and presented in collab rooms.
- Jump host tunnels and the macOS VNC proxy close with their session instead
of after an hour.
- Opening the Windows Remote Desktop client goes through the desktop app's
backend.
Adds RDP, VNC and Telnet sessions in the browser through guacd. Supports clipboard, file transfer through RDP drive redirection, session recording and session sharing.
+54 -44
View File
@@ -1,60 +1,70 @@
# Remote Desktop
RDP, VNC and Telnet sessions over guacd, with clipboard, file transfer through
RDP drive redirection, session recording and session sharing.
RDP, VNC and Telnet sessions in the browser, with clipboard, file transfer, recording and sharing.
## guacd
## Features
guacd (the Apache Guacamole proxy daemon that speaks RDP, VNC and Telnet) is an
external service this plugin talks to over TCP. The stock Docker compose runs
it as its own `guacamole/guacd` container. This plugin never starts it.
- Connect to hosts over RDP, VNC or Telnet from any browser.
- Clipboard sync and file transfer through RDP drive redirection.
- Session recording and session sharing, when those plugins are on.
- Jump host support.
- Opens the Windows Remote Desktop client from the desktop app.
Where to find it is the admin setting **guacd URL** (`host:port`). The
`GUACD_URL`, or `GUACD_HOST` and `GUACD_PORT`, environment variables override
the setting, so a compose file stays the source of truth where it sets them.
Changing the setting rebuilds the connection server without a restart.
## Setup
Other environment variables the plugin reads:
This plugin needs guacd, the Apache Guacamole proxy that speaks RDP, VNC and Telnet. The Docker compose file runs it as its own `guacamole/guacd` container. This plugin never starts guacd itself.
| Variable | What it sets |
| ------------------------------ | --------------------------------------------------------------------------- |
| `GUACD_TUNNEL_HOST` | The name guacd uses to reach Termix for a jump host tunnel (default termix) |
| `GUACD_RECORDING_PATH` | Where guacd writes recordings, as guacd sees it |
| `GUACD_RECORDING_BACKEND_PATH` | The same folder as Termix sees it |
| `GUACD_DRIVE_PATH` | The root of each user's RDP drive folder on the guacd host |
| `GUACAMOLE_ENCRYPTION_KEY` | The connection token key; derived from `JWT_SECRET` when unset |
Set where guacd runs with the guacd URL admin setting. The `GUACD_URL`, or `GUACD_HOST` and `GUACD_PORT`, environment variables override that setting.
Other environment variables:
| Variable | What it sets |
| ------------------------------ | --------------------------------------------------------------------------------- |
| `GUACD_TUNNEL_HOST` | The name guacd uses to reach Termix for a jump host tunnel. Defaults to `termix`. |
| `GUACD_RECORDING_PATH` | Where guacd writes recordings, as guacd sees it. |
| `GUACD_RECORDING_BACKEND_PATH` | The same folder, as Termix sees it. |
| `GUACD_DRIVE_PATH` | The root of each user's RDP drive folder on the guacd host. |
| `GUACAMOLE_ENCRYPTION_KEY` | The connection token key. Made from `JWT_SECRET` when not set. |
## Settings
- **Admin**: turn Remote Desktop on or off, and the guacd URL.
- **User**: RDP defaults (colour depth, resize method, wallpaper, clipboard
and the rest). A host's own values win; anything a host leaves on its
default takes the user's.
- **Host**: the RDP, VNC and Telnet switches, ports, security mode,
certificate handling and every guacd parameter, edited in the host
editor's RDP, VNC and Telnet tabs. The toolbar switch is in the Plugins tab.
### Admin
The logins (users, passwords, stored credentials, domain) stay on the host in
core, because sharing decides which of them a recipient may use.
- Enable Remote Desktop: turn remote desktop on or off.
- guacd URL: where guacd runs, as `host:port`. Changes apply without a restart.
## Capabilities
### User
- `credentials:read`: guacd needs the host's RDP, VNC or Telnet password in
plain text, so the plugin reads it through `ctx.credentials`. A shared
recipient only ever gets the owner's shared snapshot or their own override.
- `ssh:connect`, `credentials:use`: jump host tunnels, through
`ctx.ssh.jumpChain`, or the tunnels plugin's `tunnels.access` for a single
hop when it is running.
- `network:serve`: the routes and the `/display` socket.
- `desktop:window`: opening the Windows Remote Desktop client from the desktop
app.
- `hosts:read`: the online indicator while a session is open.
- `ui:surface`: everything the frontend registers.
- RDP defaults: color depth, resize method, wallpaper, font smoothing, audio, printing, drive redirection and clipboard. A host's own values win over these.
### Host
- RDP, VNC and Telnet: turn each protocol on and set its port.
- RDP security mode and Ignore certificate errors.
- guacd settings: every other guacd option.
- Remote desktop toolbar: show the toolbar in the session.
## Permissions
- `remote-desktop.sessions`: Let session sharing and recording reach your remote desktop sessions. Admins and users have it by default.
## Services
Provides `sessions.live` under the names `rdp`, `vnc` and `telnet`, which is
how session sharing and collab rooms find a live session and mint a viewer
token for it. Uses `recordings.writer` (session-recording) to decide whether
to record and to list finished recordings, and `tunnels.access` (tunnels)
for single-hop jump tunnels. Both are optional.
Provides to other plugins:
- `sessions.live` as `rdp`, `vnc` and `telnet`: find a live session so it can be shared.
Uses from other plugins:
- `recordings.writer` to record sessions. Optional.
- `tunnels.access` for single-hop jump host tunnels. Optional.
## Development
```bash
npm run build # build into dist/
npm run test # run this plugin's tests
npm run typecheck # type-check this plugin
```
See `packages/plugin-sdk/ARCHITECTURE.md` for the plugin contract.
+1 -1
View File
@@ -2,7 +2,7 @@
"id": "remote-desktop",
"name": "Remote Desktop",
"version": "1.0.0",
"description": "RDP, VNC and Telnet remote desktop sessions, with clipboard, drive redirection, session recording and session sharing.",
"description": "RDP, VNC and Telnet sessions in the browser, with clipboard, file transfer, recording and sharing.",
"author": {
"name": "Termix"
},