apps/server/src/server.test.ts | 36 + apps/server/src/workspace/Layers/WorkspaceEntries.test.ts | 29 + apps/server/src/workspace/Layers/WorkspaceEntries.ts | 15 + apps/server/src/workspace/Layers/WorkspaceFileSystem.test.ts | 58 + apps/server/src/workspace/Layers/WorkspaceFileSystem.ts | 67 +- apps/server/src/workspace/Services/WorkspaceEntries.ts | 9 + apps/server/src/workspace/Services/WorkspaceFileSystem.ts | 23 +- apps/server/src/ws.ts | 31 + apps/web/THIRD_PARTY_NOTICES.md | 11 + apps/web/package.json | 1 + apps/web/src/components/ChatMarkdown.browser.tsx | 92 +- apps/web/src/components/ChatMarkdown.tsx | 60 +- apps/web/src/components/ChatView.browser.tsx | 381 +- apps/web/src/components/ChatView.tsx | 208 +- apps/web/src/components/ComposerPromptEditor.tsx | 2 +- apps/web/src/components/DiffWorkerPoolProvider.tsx | 1 + apps/web/src/components/NoActiveThreadState.tsx | 6 +- apps/web/src/components/RightPanelTabs.tsx | 221 +- apps/web/src/components/chat/ChangedFilesTree.tsx | 4 +- apps/web/src/components/chat/ChatComposer.tsx | 2 +- apps/web/src/components/chat/ChatHeader.tsx | 75 +- apps/web/src/components/chat/ComposerCommandMenu.tsx | 4 +- apps/web/src/components/chat/FileTagChip.tsx | 6 +- apps/web/src/components/chat/MessagesTimeline.browser.tsx | 8 +- apps/web/src/components/chat/PanelLayoutControls.tsx | 114 + apps/web/src/components/chat/PierreEntryIcon.tsx | 95 + apps/web/src/components/chat/VscodeEntryIcon.tsx | 37 - apps/web/src/components/files/FileBrowserPanel.tsx | 128 + apps/web/src/components/files/FilePreviewPanel.tsx | 298 ++ apps/web/src/components/files/fileContentRevision.test.ts | 15 + apps/web/src/components/files/fileContentRevision.ts | 12 + apps/web/src/components/files/filePath.test.ts | 23 + apps/web/src/components/files/filePath.ts | 17 + apps/web/src/components/files/fileSaveCoordinator.test.ts | 87 + apps/web/src/components/files/fileSaveCoordinator.ts | 75 + apps/web/src/components/files/projectFilesQueryState.test.ts | 129 + apps/web/src/components/files/projectFilesQueryState.ts | 206 + apps/web/src/components/preview/PreviewPanelShell.tsx | 17 +- apps/web/src/environmentApi.ts | 2 + apps/web/src/environments/runtime/service.threadSubscriptions.test.ts | 2 + apps/web/src/index.css | 43 + apps/web/src/localApi.test.ts | 2 + apps/web/src/markdown-links.test.ts | 9 + apps/web/src/markdown-links.ts | 15 + apps/web/src/pierre-icons.test.ts | 57 + apps/web/src/pierre-icons.ts | 117 + apps/web/src/rightPanelStore.test.ts | 48 + apps/web/src/rightPanelStore.ts | 59 +- apps/web/src/vscode-icons-language-associations.json | 481 -- apps/web/src/vscode-icons-manifest.json | 8351 -------------------------------- apps/web/src/vscode-icons.test.ts | 52 - apps/web/src/vscode-icons.ts | 211 - apps/web/vite.config.ts | 1 + package.json | 1 - packages/client-runtime/src/wsRpcClient.ts | 6 + packages/contracts/src/ipc.ts | 6 + packages/contracts/src/project.ts | 44 +- packages/contracts/src/rpc.ts | 22 + patches/@pierre%2Fdiffs@1.1.20.patch | 23 - patches/@pierre%2Fdiffs@1.3.0-beta.4.patch | 23 + pnpm-lock.yaml | 106 +- pnpm-workspace.yaml | 6 +- scripts/sync-vscode-icons.mjs | 153 - 63 files changed, 2871 insertions(+), 9572 deletions(-)