Sync the self-hosting stack

This commit is contained in:
2026-10-09 10:00:52 +02:00
parent 4ba344985d
commit 9001d605c4
2 changed files with 54 additions and 1 deletions
+43
View File
@@ -9,6 +9,49 @@ one of them changed. An entry says which artefact and which version, so `web 0.1
Every version published to a channel appears here. Nothing is written from memory afterwards: a build Every version published to a channel appears here. Nothing is written from memory afterwards: a build
cannot be published without its entry. cannot be published without its entry.
## 2026-10-09 — Quick Assist: help someone whose PC Jarvis does not manage `agent 0.48.0` `api 0.130.0` `web 0.160.0`
**Quick Assist** is a new page in the sidebar. It lets an operator see and control the screen of
somebody on a Windows PC that is not enrolled in Jarvis: a customer's laptop, a new employee's
computer, anyone who calls for help. Nothing is installed on their PC, and nothing stays on it when
the call ends.
**On the operator's side.** Press **New session**. Jarvis gives you a code such as `7K3M-9QXA` and a
link to your own instance, `/help/7K3M-9QXA`. Send the link by chat or email, or read out the short
address and the code on the phone. When the person opens the helper, their user name, computer,
Windows version and address appear on the page. **Connect** opens their screen in a tab of its own,
with the same viewer as an enrolled machine; **End assistance** ends the call for both of you.
**On the person's side.** The link opens a page, with no account needed, that first names who is
helping them and from which organization. They download `JarvisQuickAssist.exe` and open it; the file
already knows your instance and the code, so they type nothing. A Jarvis window then appears in the
bottom-right corner of their screen, says who is helping, and has a **Stop** button. When you connect,
they are asked, as on a workstation, and the usual notice stays on their screen for the whole session.
The page and the window speak English, French or German.
**What it can and cannot do.**
- It shows only the Windows session of the person who opened the helper, and it answers nothing but
the screen: no terminal, no files, no commands.
- It runs with the person's own rights. A UAC prompt or the lock screen is not shown to you, and your
keyboard and mouse do not reach windows running as administrator.
- A code works once, for 10 minutes. Wrong codes are limited per network and across the instance, and
checking a code on the join page counts as trying it. A session lasts at most 4 hours, and an
operator can have at most 5 codes waiting.
- The helper is not signed yet. The first time, Windows SmartScreen says "Windows protected your PC";
the person clicks **More info**, then **Run anyway**. The join page tells them so.
- Each operator sees only the sessions they started. Starting, using and ending a session is in the
audit log.
Quick Assist needs the remote desktop permission and follows the instance's remote desktop switch: with
remote desktop turned off, it is unavailable.
Update the API, the web image and the agent release image together. The API applies an additive schema
update (a new table for Quick Assist sessions, and a desktop session can now name a Quick Assist
session instead of a machine). The download needs the Windows 64-bit build from the agent release
image. The helper connects on `/api/agents/ws/assist` and `/api/agents/ws/assist/desktop`, which your
reverse proxy already forwards if it forwards `/api/agents/ws` by prefix, as required.
## 2026-10-08 — Hear the remote machine from the remote-desktop viewer `agent 0.47.0` `api 0.129.0` `web 0.159.0` ## 2026-10-08 — Hear the remote machine from the remote-desktop viewer `agent 0.47.0` `api 0.129.0` `web 0.159.0`
The remote-desktop toolbar has a new speaker button. It turns on the sound of the machine you are The remote-desktop toolbar has a new speaker button. It turns on the sound of the machine you are
+11 -1
View File
@@ -299,7 +299,8 @@ All three are the kind that produce confusing symptoms rather than clean errors.
- **Forward the WebSocket upgrade.** Three separate sockets ride `JARVIS_PORT`: the chat, on - **Forward the WebSocket upgrade.** Three separate sockets ride `JARVIS_PORT`: the chat, on
`/socket.io/`; enrolled agents, on `/api/agents/ws`; and, for remote desktop only, one media `/socket.io/`; enrolled agents, on `/api/agents/ws`; and, for remote desktop only, one media
connection per live session on `/api/agents/ws/desktop`. None falls back to plain HTTP. Without connection per live session on `/api/agents/ws/desktop` (and, for Quick Assist, the helper's
`/api/agents/ws/assist` and `/api/agents/ws/assist/desktop`). None falls back to plain HTTP. Without
the upgrade the chat does not lose streaming — it never connects at all, and since the prompt the upgrade the chat does not lose streaming — it never connects at all, and since the prompt
itself travels over that socket, nothing sends. Presence and in-chat approvals go with it, no itself travels over that socket, nothing sends. Presence and in-chat approvals go with it, no
agent can connect, and no screen can be watched. A proxy that forwards `/api/agents/ws` by exact agent can connect, and no screen can be watched. A proxy that forwards `/api/agents/ws` by exact
@@ -480,6 +481,15 @@ which ends active sessions. What the banner guarantees is that watching is never
secret. It does not guarantee consent once it has started, and under the banner policy it is not secret. It does not guarantee consent once it has started, and under the banner policy it is not
asking for any. asking for any.
**Quick Assist, for a PC Jarvis does not manage.** An operator with the remote desktop permission
starts a session under **Quick Assist**, gets a single-use code that lasts 10 minutes, and sends the
person a link to `/help/<code>` on your instance. That public page names the operator and the
organization, then hands over `JarvisQuickAssist.exe`: the Windows agent, carrying your address and
the code. The person opens it, a Jarvis window shows who is helping, and the screen is shared only
after they accept, with the notice on their screen throughout. It installs nothing and keeps no key on
disk; it shows the person's own session only, with their own rights, and answers nothing but the
screen. The download needs the agent release image, like enrolment does.
## Things worth knowing before you trust it with production ## Things worth knowing before you trust it with production
These are deliberate and documented rather than surprises waiting to be found. These are deliberate and documented rather than surprises waiting to be found.