You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f951ea1
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: apps/desktop/README.md
+22-2Lines changed: 22 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -156,6 +156,26 @@ const desktop = useDesktop()
156
156
157
157
Good fits for the bridge: OS notifications + dock badge on workflow completion, global shortcuts, "reveal in Finder", tray, secure OS-keychain storage. Anything that touches the server/DB still goes through normal APIs — the bridge is only for **native** capability. This same bridge is also the robust way to retire the web-app couplings in the table above: have the web app *tell* the shell (`signalLogout()`, `markAuthSurface()`) instead of the shell inferring from URLs.
158
158
159
+
### Browser authentication and Sim previews
160
+
161
+
Browser tabs for the exact configured Sim origin share the desktop app's existing
162
+
Electron session. This includes dev: authenticated file previews and deployed chat
163
+
pages use the current login without copying cookies or exposing tokens to the model.
164
+
Normal resource permissions and any separate deployed-chat password still apply.
165
+
External websites use the independent `persist:sim-browser-agent` partition.
166
+
167
+
Crossing between Sim and an external site opens a tab in the destination session and
168
+
preserves the source tab's history; an unused blank tab adopts its first destination's
169
+
session. A cross-session form POST is blocked instead of replayed as a GET. Restored
170
+
tabs and popups select their session from the destination origin. Sign-out and account
171
+
or server changes use the existing browser teardown. Browser views retain their own
172
+
permission/download policy, SSRF guards, and minimal preload with no `simDesktop` API.
173
+
174
+
Generated HTML remains inside its `allow-scripts` sandbox. The driver can inspect and
175
+
interact with inline frames through isolated Chromium worlds, including out-of-process
176
+
frames; it does not grant those pages access to the parent app. These shell changes
177
+
require a desktop update, not just a hosted web deployment.
178
+
159
179
### Local filesystem access
160
180
161
181
Copilot can inspect user-selected local directories through the ordinary VFS tools. Granted folders appear beneath the top-level `user-local/` namespace, and `glob`, `grep`, and `read` are routed to Electron only when their path/pattern is explicitly scoped there. This capability is:
@@ -188,8 +208,8 @@ Raw local file bytes are never exposed through the preload bridge and cannot be
188
208
189
209
## Known caveats
190
210
191
-
- The hosted Sim renderer may request microphone access for voice input from the configured app origin; camera access remains denied. On macOS the shell also requires the operating-system microphone grant. Separately, a page in the isolated agent browser may request microphone or camera only from its main frame after a recent native user gesture; Sim then requires an explicit document-scoped prompt and the operating-system grant where applicable.
192
-
- The built-in agent browser is not a general-purpose download manager. Its dedicated partition applies the same bounded policy to every download, including one started by a direct user click: at most 2 GiB per file, two active downloads per task, six app-wide, and a 1 GiB free-disk reserve. A rejected download appears in the browser's downloads menu; use a normal browser for an intentionally larger transfer.
211
+
- The hosted Sim renderer may request microphone access for voice input from the configured app origin; camera access remains denied. On macOS the shell also requires the operating-system microphone grant. Separately, a page in the agent browser may request microphone or camera only from its main frame after a recent native user gesture; Sim then requires an explicit document-scoped prompt and the operating-system grant where applicable.
212
+
- The built-in agent browser is not a general-purpose download manager. Both browser session types apply the same bounded policy to every download, including one started by a direct user click: at most 2 GiB per file, two active downloads per task, six app-wide, and a 1 GiB free-disk reserve. A rejected download appears in the browser's downloads menu; use a normal browser for an intentionally larger transfer.
193
213
- Default Electron ships H.264/AAC/MP3 — do not swap in the codec-free ffmpeg build.
194
214
- Third-party web analytics (GTM/GA) are blocked at the network layer by default (`blockThirdPartyAnalytics`); first-party PostHog `/ingest` is untouched.
195
215
-`Cmd+F` opens the native find overlay in built-in browser tabs. The hosted Sim workspace continues to use Monaco- and table-specific find surfaces.
0 commit comments