# DSH Cordis plugin This package is both a normal dual-face Cordis plugin and a DSH profile bundle. - Host: reads and validates companion snapshots, then serves `GET /coop-with-vs/open-files` to loopback clients. - Client: registers the `ide-file` source in the existing `@` input-trigger pipeline. - Pick result: a native composer reference chip whose model projection is `{"path":"..."}`. No source content crosses the companion protocol or candidate endpoint. ## Build and test ```powershell pnpm install pnpm test pnpm build ``` `lib/client.js` is wrapped in the `window.__ModuleLoader__.load` format expected by DSH Client Modules. ## Configuration The Host applies `excludedExtensions` to the combined VS Code and Visual Studio candidate catalog. It defaults to: ```yaml excludedExtensions: - .csproj - .fsproj - .vbproj - .vcxproj - .vsproj - .sln - .slnx ``` Matching is case-insensitive, and each value may include or omit its leading dot. Set `excludedExtensions: []` to disable filtering and expose all open documents. `instanceOpenCount` always reflects the number of documents remaining in that IDE instance after filtering. ## Install ```powershell dsh plugin --profile web add F:\dsh-plugin-coop-with-vs\dsh-plugin ``` The profile manager recognizes `dsh.bundle.patch` and appends this package to the Web profile's bundle list. `cordis.patch.yml` inserts one shared `coop-with-vs` row. After the first install or any change to the bundle patch, rerun the install command, fully quit the DSH desktop app, and restart it.