apps/web/src/browser/browserTargetResolver.ts | 5 +- apps/web/src/browserHistoryStore.test.ts | 444 ++++++++++++++++++++++++++++++++ apps/web/src/browserHistoryStore.ts | 398 ++++++++++++++++++++++++++++ apps/web/src/components/ChatMarkdown.tsx | 6 +- apps/web/src/components/ChatView.tsx | 45 +++- apps/web/src/components/preview/BrowserMockup.tsx | 2 +- apps/web/src/components/preview/PreviewEmptyState.test.tsx | 89 +++++++ apps/web/src/components/preview/PreviewEmptyState.tsx | 67 +++-- apps/web/src/components/preview/PreviewRecentUrlCard.tsx | 51 ++++ apps/web/src/components/preview/PreviewView.test.tsx | 39 +++ apps/web/src/components/preview/PreviewView.tsx | 59 ++++- apps/web/src/components/preview/openDiscoveredPort.ts | 2 + apps/web/src/components/preview/openTerminalLinkInPreview.ts | 2 + apps/web/src/components/preview/useDiscoveredLocalServers.test.ts | 24 +- apps/web/src/components/preview/useDiscoveredLocalServers.ts | 10 +- apps/web/src/environmentGrouping.test.ts | 5 + 16 files changed, 1207 insertions(+), 41 deletions(-)