Installation
npx -y @deepseek-ai/dsh plugin --profile web add github:skymecode/deepseek-harness-for-vscodeThis installation command is an unverified starting point generated from the GitHub repository address.
README
Maintainer-authored documentation snapshot.
DeepSeek Harness for VS Code
English | 简体中文
A native VS Code coding-agent extension powered by DeepSeek Harness. Install the platform-specific VSIX and start working—there is no upstream repository to clone, no Node/npm setup, and no local Harness deployment to manage.
This is a community-maintained
0.4.7release. DeepSeek Harness is currently a Developer Preview, and this extension pins the official@deepseek-ai/dsh@0.1.0-rc.6package.
Features
- Native VS Code workbench — all interaction happens in the sidebar; the local Harness Gateway exposes only the loopback API transport, while the official WebUI is neither served nor embedded.
- Detachable workbench — open the same synchronized conversation UI in an editor-area panel and move it to another VS Code window when more space is needed.
- Complete session workflow — persistent history, create, switch, rename, fork, and resume sessions.
- Streaming Markdown — headings, lists, tables, code blocks, copy controls, safe external links, and clickable workspace file references.
- Stable incremental rendering — streamed updates preserve disclosure state and the reader's scroll position.
- Claude-style live reasoning — reasoning opens automatically while deltas stream, follows the newest text, and collapses when its block completes.
- Editor context — selected code appears as a removable context card; type
@to fuzzy-search and attach workspace files without leaving the composer. - Slash commands — use official Harness commands plus
/model,/reasoning, and/presetextension commands. - Harness-native capabilities — reasoning, tool calls, approvals, structured questions, Todos, Skills, Goals, Plan mode, and background jobs.
- Model and agent controls — DeepSeek V4 Flash / Pro,
off/high/maxreasoning effort, and four official Agent Presets. - Token usage — see current input and output token counts in the composer.
- Native DSH plugin center — search a curated catalog, filter by category, inspect installed plugins, or install an npm/GitHub/local/tarball package.
- Automatic localization — follows the VS Code display language with English and Simplified Chinese support.
- Zero-deployment runtime — official
dsh, pnpm, and standalone Node 22.22.3 are bundled in each platform VSIX and managed by the extension.
Open the workbench with Ctrl+Alt+H on Windows/Linux or Cmd+Alt+H on macOS.
Interface preview
The workbench follows the VS Code display language. The screenshots below use Simplified Chinese; select either image to view it at full resolution.
|
|
| Native conversation workbench | Model, DSH mode, and reasoning effort |
Installation
- Download the VSIX matching your platform from Releases.
- Open the VS Code Extensions view (
Cmd/Ctrl+Shift+X). - Select
...→ Install from VSIX... and choose the downloaded file. - Reload the VS Code window when prompted.
For example, an Apple Silicon Mac requires the darwin-arm64 package.
Quick start
- Open the project you want to work on.
- Select the DeepSeek Harness icon in the Activity Bar.
- Open Connection settings and configure DeepSeek Official or add a relay source. You can also run
DeepSeek Harness: Set API Keyfor the official source. - Describe your task in the composer and send it.
No Harness install or start command is required.
DSH plugins
Open the ⊞ Plugins button in the workbench header to browse repositories read directly from the dsh-plugin GitHub topic. Results are merged with Awesome DSH Plugin metadata for curated categories, localized descriptions, and npm install specs. The Installed tab also accepts one package spec directly, including an npm package, github:owner/repository, a local path without shell metacharacters, or a tarball URL.
Native plugin discovery, compatibility labels, and managed installation
The extension uses the official dsh plugin --profile web add/remove workflow. Plugin profile files live under the extension's globalStorageUri/harness-home/profiles/web; Harness is stopped while pnpm changes that profile and is then restarted automatically. The bundled pnpm means no system package manager is required.
Host tools, policies, and runtime services contributed by a plugin work in this extension. A plugin may also contain client UI designed specifically for the upstream DSH browser application; those UI contributions cannot be rendered generically by this native VS Code workbench and are marked Official Web UI.
Marketplace cards classify known entries as Agent compatible, Agent works · Web UI unavailable, or Official Web UI only. UI-only themes and layout extensions cannot affect the native workbench, so their install button is disabled. GitHub-only entries without curated metadata are marked Compatibility unknown until their installed manifest can be inspected.
Configuration
| Setting | Default | Description |
|---|---|---|
deepseekHarness.model | deepseek-v4-flash | Default model for new sessions |
deepseekHarness.reasoningEffort | high | off / high / max |
deepseekHarness.agentPreset | standard | Default Agent Preset for new sessions |
deepseekHarness.provider | deepseek-official | Default source selected from the extension's Connection settings panel |
deepseekHarness.permissionMode | workspace-write | read-only / workspace-write / danger-full-access |
deepseekHarness.autoAttachSelection | true | Automatically attach the active editor selection when sending |
Provider endpoints and write-only credential references are managed through the bundled Harness settings and credentials services. API keys are stored in the extension's private Harness home, are never returned to the webview, and are not written to project-level .vscode/settings.json. Legacy deepseekHarness.apiKey, baseUrl, and providers values are imported once and then removed.
Use the Connection settings panel to add, edit, test, or remove DeepSeek relay sources. Custom sources are registered live through the upstream llm-pi-ai adapter and expose the same Flash/Pro choices in the model panel.
Automatically attached selections are limited to 16 KB and are truncated when necessary. If the same file selection is already embedded manually, the host will not attach it again.
Commands
| Command | Description |
|---|---|
DeepSeek Harness: Open Workbench | Open the sidebar workbench |
DeepSeek Harness: Open Workbench in New Window | Open the detachable editor-area workbench |
DeepSeek Harness: Reload Workbench | Restart the runtime and reconnect |
DeepSeek Harness: Set API Key | Save the API Key |
DeepSeek Harness: Clear API Key | Clear the API Key |
DeepSeek Harness: Show Logs | Open diagnostic logs |
Localization
English is the default language, and a Simplified Chinese language pack is included. Manifest contributions, settings, extension-host prompts, errors, and the full chat workbench follow the VS Code display language. After changing the display language, run Developer: Reload Window.
Security and privacy
- The Harness Gateway listens only on a random
127.0.0.1port. - The Webview uses a strict CSP and loads no remote scripts or iframes.
- Plugin catalog JSON is fetched by the Extension Host, validated into a narrow UI data model, and rendered with
textContent. - Raw Markdown HTML is disabled, and rendered markup is sanitized through a DOMPurify allowlist.
- Remote Markdown images are disabled; http(s) links are validated again by the extension host.
- File and command access is controlled by
permissionModeand Harness approval policies. - The API Key is never sent to the Webview or written to extension logs.
- Third-party DSH plugins are trusted Extension Host dependencies: they run outside the Agent sandbox. Review their source before installation.
Platform support
There is one extension ID and one Marketplace product. Platform-specific VSIX files are required because the bundled Node, PTY, and sandbox packages contain native binaries:
- macOS:
darwin-arm64,darwin-x64 - Linux:
linux-arm64,linux-x64 - Windows:
win32-arm64,win32-x64
The current hosted GitHub Actions matrix builds darwin-arm64, linux-arm64, linux-x64, and win32-x64. Other architectures require a self-hosted runner or local packaging.
Development and packaging
npm install
npm run check-types
npm run lint
npm test
npm run compile
npm run package
npm run package creates a VSIX for the current operating system and CPU architecture. npm ci executes lifecycle scripts required by native dependencies, so build only trusted commits and lockfiles.
All project commit messages use English. See docs/ARCHITECTURE.md for the architecture and security boundaries.
License
Extension code is licensed under the MIT License. Licensing details for DeepSeek Harness, Node.js, and other dependencies are available in THIRD_PARTY_NOTICES.md and the license files shipped with each dependency.
Project files and signals
Shown items are public repository signals detected in the directory snapshot.
Repository information
- Language
- TypeScript
- License
- MIT
- Latest release
- v0.4.7
- Last updated
- Aug 17, 2026, 9:08 AM
Install deliberately
Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.