apps/desktop/src/ipc/channels.ts | 2 + apps/desktop/src/ipc/methods/preview.ts | 15 +++++ apps/desktop/src/preload.ts | 5 ++ apps/desktop/src/preview/AnnotationKeyboard.test.ts | 21 +++++-- apps/desktop/src/preview/AnnotationKeyboard.ts | 3 +- apps/desktop/src/preview/GuestProtocol.ts | 1 + apps/desktop/src/preview/Manager.test.ts | 80 ++++++++++++++++++++++++++ apps/desktop/src/preview/Manager.ts | 39 ++++++++++--- apps/desktop/src/preview/PickPreload.ts | 37 ++++++++++-- apps/server/src/auth/RpcAuthorization.test.ts | 23 ++++++++ apps/server/src/auth/RpcAuthorization.ts | 17 +++--- apps/server/src/mcp/PreviewAutomationBroker.test.ts | 7 --- apps/web/src/browser/ElectronBrowserHost.tsx | 15 ++++- apps/web/src/browser/useOpenLink.ts | 8 ++- apps/web/src/components/ChatMarkdown.tsx | 32 +++++++---- apps/web/src/components/ChatView.tsx | 28 ++++++--- apps/web/src/components/LegacySidebar.tsx | 8 ++- apps/web/src/components/ThreadTerminalDrawer.tsx | 6 ++ apps/web/src/components/files/FilePreviewPanel.tsx | 16 ++++-- apps/web/src/components/preview/PreviewPanel.tsx | 15 ++++- apps/web/src/components/preview/PreviewView.test.tsx | 98 ++++++++++++++++++++++++++++++++ apps/web/src/components/preview/PreviewView.tsx | 56 +++++++++++++++--- apps/web/src/components/settings/ConnectionsSettings.tsx | 6 ++ apps/web/src/routes/_chat.tsx | 10 +++- packages/contracts/src/auth.ts | 3 + packages/contracts/src/ipc.ts | 7 +++ 26 files changed, 476 insertions(+), 82 deletions(-)