Commit Graph
13 Commits
Author SHA1 Message Date
winewill cda5c51b4f merge: reconcile desktop diagnostics with master 2026-10-22 18:47:16 +08:00
zhc 9676ff7724 fix(file-drag): generalize transfers and address lifecycle review 2026-10-20 17:45:09 +08:00
winewill dfbe5d8da3 feat(desktop): retain bounded plugin operation diagnostics 2026-10-19 17:35:18 +08:00
winewill 4745934683 feat(desktop): hide the window on close and confirm interruptible quits
Closing the main window hides it on macOS and Windows; the page and the
Host keep running and the next show resumes the same document. Windows
gets a permanent tray icon (open / quit) and a one-time notification the
first time the window is hidden after installation.

Every ordinary quit entry asks the Host over a new quit-inspection IPC
request for active tasks (same rule as the update restart check) and
armed scheduled reminders (schedule family of workspace/session-activity
for loaded sessions). Nothing to interrupt quits silently; otherwise a
native message box explains what stops, with Quit as the default and
Cancel on Esc. Inspection failure or a missed two-second deadline counts
as running tasks. The installer restart, fatal recovery, the development
restart command, and OS session end skip the confirmation.

Also: defer the downloaded-update confirmation while the window is hidden,
render the tray ICO from the vector icon, and point the installer's
running-application message at the tray.

Closes #4013
2026-09-24 14:24:39 +08:00
lsdsjy d5db0ff0c4 merge: sync master into desktop welcome branch 2026-09-21 19:53:28 +08:00
lsdsjy 048297321a feat(desktop,credentials,client): integrate DeepSeek account sign-in and Platform pages 2026-09-20 11:31:40 +08:00
fz 6e49ccad18 feat(skill): extract the workspace-dependencies tool into a package
Move `load_workspace_dependencies` and the primary-runtime payload logic out
of `apps/desktop-host` into `@deepseek-ai/dsh-tool-workspace-dependencies`
so profiles other than Desktop can mount the same tool. Desktop keeps its
behavior through the package.

Two additions for carriers that are not Electron applications:

- `root` is optional: without it the payload is validated and used in place
  (no copy under the Harness home), which suits read-only container layers.
- `runtime.json` accepts `linux`, and the `node` / `pnpm` components are
  optional; the returned paths and the tool output omit what the payload
  does not ship.

The `sdk` profile mounts the tool and `@deepseek-ai/dsh-skill-office` when
`DSH_PRIMARY_RUNTIME` names a payload directory (its sibling `office-skills/`
carries the skill resources); both rows stay disabled otherwise. Both
packages join the Python runtime closure.
2026-09-17 18:16:47 +08:00
winewill c06d2719d0 merge: sync latest master into desktop updates 2026-09-17 10:48:32 +08:00
yudshj fa518ecd89 feat(desktop): enable standalone Office skills 2026-09-16 15:21:18 +08:00
winewill 63dd8fb80d feat(desktop): add ordinary and mandatory update flows 2026-09-16 10:48:23 +08:00
07akioni 0c88492646 feat(desktop): bundle release-bound workspace runtimes 2026-09-14 18:09:22 +08:00
07akioni e84a4e857e refactor(desktop): run shared Web UI in a thin Electron shell 2026-09-10 22:08:33 +08:00
07akioni fe0b7f2814 fix(desktop): move host out of CLI package 2026-09-04 16:21:45 +08:00