Vision & Multimodal

deepseek-harness-desktop-mapan042

mapan0424/deepseek-harness-desktop/packages/harness-channel-config · ★ 5

mapan0424

Visual channel configuration UI for DeepSeek Harness (feishu / imessage / telegram / ...)

An English summary is not available; the Chinese summary is shown.

License
MIT
Added
2026-10-30
Maintenance
active
Install kind
github
Manifest status
Declared
Manifest path
package.json#dsh
Manifest checked
2026-10-30T14:20:17.971Z
Lifecycle scripts
None found

Static manifest checks report declarations only; they are not compatibility or security review.

安装

dsh plugin --profile web add 'github:mapan0424/deepseek-harness-desktop#6f7bbce026017be3ca37cb40f1823c65898391e5&path:/packages/harness-channel-config'

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: en · Read Chinese README

Table of contents
  1. What's new in v0.3.16
  2. What's new in v0.3.15
  3. What's new in v0.3.14
  4. ✨ Why use it
  5. Ready out of the box
  6. The complete Harness experience
  7. Messaging channels
  8. 🌐 Multi-language & Ethnic Locales (Locale Pack)
  9. A proper Mac app
  10. Local-first by design
  11. Legacy-device compatibility matrix
  12. 🚀 Download and install
  13. macOS
  14. Windows
  15. Automatic updates
  16. 🧭 How it works
  17. 🌊 Vision
  18. 🛠️ Development
  19. Requirements
  20. Run locally
  21. Build for Apple Silicon
  22. Build for Intel Mac
  23. Build for Windows x64
  24. 🤝 Contributing
  25. 📄 License and notice
  26. 🔗 Related projects
  27. 🌐 Friendly links

[!IMPORTANT] This project is for personal learning and testing only. It is an experimental project I built while learning Tauri desktop packaging and DeepSeek Harness plugin development. It is not thoroughly tested, may change or stop being maintained at any time, and is not recommended for production or important work.

Please download and use the official DeepSeek release instead: DeepSeek Harness website · Official GitHub repository (with Node.js installed, you can also run npx @deepseek-ai/dsh web).

https://github.com/user-attachments/assets/486eb943-a455-4f56-b009-5fc1e877e812

What's new in v0.3.16

  • Fixes menu-bar usage failing with unexpected end of hex escape when a session preview contains a clipped emoji;
  • Tolerates lone UTF-16 surrogates while reading existing previews without rewriting stored sessions or usage records;
  • Makes new preview clipping respect emoji surrogate pairs while preserving existing length budgets;
  • Adds native parsing and preview regression tests, with usage fields also verified against a real local session-list response.

What's new in v0.3.15

  • Fixes the model selector failing to render on macOS 12.7.6 when Array.prototype.toSorted() is unavailable;
  • Adds a sorting fallback for older WebKit without mutating the model catalog or replacing native implementations on newer engines;
  • Adds six compatibility regression tests to the existing build checks, with model ordering also verified using the real macOS 12.7.6 JavaScriptCore engine;
  • Continues to bundle @deepseek-ai/dsh@0.2.1-alpha.5 and @deepseek-ai/cordis@4.0.5.

What's new in v0.3.14

  • Upgrades embedded core runtime to official @deepseek-ai/dsh@0.2.1-alpha.5 and @deepseek-ai/cordis@4.0.5, locking the complete verified closure of 293 subpackages to prevent prerelease drift;
  • Brings upstream 0.2.x features: plugin market with custom plugin index sources, model selector search, automatic masking of secrets in sent messages, manual context compaction via /compact, Office / PDF preview and conversation improvements, etc.;
  • Rewrites the desktop loopback auto-login patch for the new 0.2.x browser-session authentication API, so the app still opens straight into the workspace;
  • Updates the bundled plugin suite, all passing DSH 0.2 plugin version compatibility checks: Channel Config 0.1.13, Core 0.1.10, Feishu 0.1.8, DingTalk 0.1.6, WeCom 0.1.10, iMessage 0.1.11, Harness Insights 0.1.15, Locale Pack 0.1.9;
  • Adds a build gate that fails when DSH disables any bundled plugin as version-incompatible;
  • Keeps macOS 12.7.6 compatibility: every native binary targets macOS 12.7.6 or earlier, and all WebKit compatibility patches apply to the new runtime;
  • Windows builds continue to exclude macOS-only iMessage while retaining all cross-platform channels and features.

✨ Why use it

Ready out of the box

You do not need to install or maintain:

  • Node.js
  • npm or pnpm
  • Homebrew
  • the DeepSeek Harness CLI
  • extra runtimes or first-launch downloads

Download the right DMG, move the app to Applications, and launch it. Every release carries a pinned, self-contained runtime, unaffected by your global Node version, PATH, or package manager state.

The complete Harness experience

This is not a reduced chat wrapper. It hosts the DeepSeek Harness Web UI directly and preserves the capabilities that make Harness useful:

  • multi-turn sessions and streaming responses
  • Markdown and code rendering
  • workspaces and context management
  • tool calls and approval flows
  • model, credential, and plugin configuration
  • an experience that can evolve with upstream Harness
  • bundled Harness Insights for local Token, model, and tool usage analytics with Golden Ratio heatmap and dual themes
  • bundled omnichannel messaging gateways: visual configuration, Feishu / Lark, DingTalk, WeChat Work / WeCom, and iMessage on macOS
  • bundled multi-language and ethnic locale pack: seamless switching across Tibetan, Mongolian, Uyghur, Nuosu Yi, Traditional Chinese, Japanese, Korean, etc.

The desktop layer does not reinvent Harness. It makes Harness feel at home on desktop systems. Built-in plugins are developed as modular Cordis plugins, decoupled from upstream source, and delivered out-of-the-box inside the installer.

Messaging channels

The installer includes the validated channel plugins. After launching Harness, configure them from the Message Channels settings page:

  • Visual configuration for unified channel parameters, authorization state, default workspaces, and session routing;
  • Feishu / Lark with WebSocket long-connection events and Open API card/text streaming replies;
  • DingTalk with Stream long connections, no public webhook requirement, and in-conversation Agent approvals/questions;
  • WeChat Work / WeCom with custom application credentials for bi-directional messaging with local Harness agents;
  • iMessage on macOS, including the local Messages/chat.db mode. The first use requires Full Disk Access and Automation permissions.

The Windows installer does not ship the iMessage plugin, and iMessage is hidden from its configuration page because Messages.app is macOS-only.

🌐 Multi-language & Ethnic Locales (Locale Pack)

The desktop app comes pre-packaged with a powerful localization pack that supports instant UI language switching in Settings:

  • Ethnic Minority Languages: Tibetan (བོད་ཡིག), Traditional Mongolian (ᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡ), Uyghur (ئۇيغۇرچە), Nuosu Yi (ꆈꌠꉙ);
  • Global & Regional Languages: Traditional Chinese (繁體中文), Japanese (日本語), Korean (한국어), French (Français), German (Deutsch), Russian (Русский), Spanish (Español), and English.

A proper Mac app

  • a dedicated window and Dock entry
  • automatic startup of the local Harness service
  • automatic selection of an available port
  • direct entry into the workspace once startup completes
  • close-to-tray behavior, so reopening the window does not restart Harness
  • left-click tray panel for weekly Tokens, model calls, a seven-day chart, and Token breakdown
  • right-click tray summary with open and quit actions
  • one automatic same-port recovery when dsh exits unexpectedly, followed by a local recovery page if needed
  • automatic cleanup of background processes when the app quits from the tray or system menu
  • the macOS system WebView instead of a bundled Chromium runtime
  • no terminal window or manually managed local server

Local-first by design

The Harness service listens only on 127.0.0.1. Sessions, settings, workspaces, and credentials remain under local Harness management, and the desktop app does not expose the UI service to your local network.

Where model requests go—and how providers process them—depends on the model service you configure in Harness.

Legacy-device compatibility matrix

Intel Macs that are still useful should not be left behind. Each architecture receives its own installer, Node.js runtime, and native dependencies, reducing the size and compatibility problems caused by mixed-architecture bundles.

Platform Release package Status Automated verification
macOS 12.7.6+ Apple Silicon DeepSeek.Harness_*_macos_arm64.dmg Supported arm64 app, minimum OS, native modules, embedded runtime, and Markdown/WebKit compatibility
macOS 12.7.6+ Intel DeepSeek.Harness_*_macos_x86_64.dmg Supported Intel app, x86_64 native modules, minimum OS, embedded runtime, and Markdown/WebKit compatibility
Windows 10 / 11 x64 setup.exe or *.msi Supported x86_64 installers, expanded runtime, native dependencies, Markdown, and bundle integrity

macOS 12.7.6 is the minimum version declared by the current release. Intel and Apple Silicon use their matching DMG. This matrix describes release artifacts and automated checks; performance and WebKit behavior can still vary by device model and system patch level.

🚀 Download and install

Open GitHub Releases and choose the package for your platform and processor:

Platform Package
macOS Apple Silicon (M1, M2, M3, M4, and later) DeepSeek.Harness_*_macos_arm64.dmg
macOS Intel DeepSeek.Harness_*_macos_x86_64.dmg
Windows 10 / 11 x64 (recommended) DeepSeek.Harness_*_windows_x86_64-setup.exe
Windows x64 enterprise deployment DeepSeek.Harness_*_windows_x86_64.msi

macOS

  1. Open the DMG.
  2. Drag DeepSeek Harness.app into Applications.
  3. Launch the app and configure your preferred model or API credentials in Harness.

If macOS blocks the first launch, verify that the file came from this repository's Release page, then run:

xattr -dr com.apple.quarantine "/Applications/DeepSeek Harness.app"

Windows

  1. Download and run setup.exe.
  2. Open DeepSeek Harness from the Start menu after installation.
  3. Configure your preferred model or API credentials in Harness.

MSI is primarily intended for enterprise or managed deployment. Windows 10 and 11 normally include the required Microsoft Edge WebView2 Runtime.

Automatic updates

Starting with v0.2.0, an installed desktop app checks GitHub Releases after startup has settled. When a newer release is available, the app shows its notes first; after confirmation it downloads the signed package, stops the local dsh process, installs the update, and restarts. macOS Apple Silicon, macOS Intel, and Windows x64 each use their matching signed updater package.

v0.1.9 and earlier do not have updater support, so they require one manual install of v0.2.0. Later releases can be installed from inside the app.

🧭 How it works

DeepSeek Harness.app
├── Native macOS / Windows window & system tray
├── Rust / Tauri desktop layer
│   ├── Starts the embedded runtime
│   ├── Selects local port with automatic recovery
│   ├── Waits for the service to become ready
│   └── Manages process lifecycle
├── Official Node.js runtime
├── DeepSeek Harness core (Agent / Session / LLM)
├── Bundled plugins matrix (Cordis Plugins)
│   ├── Harness Insights (Token / model usage analytics)
│   ├── Harness Channels (Feishu / WeCom / iMessage / Settings UI)
│   └── Harness Locale Pack (Multi-language & ethnic locales)
└── System WebView
    └── Harness Web UI

Production builds run one embedded runtime directly from App Resources. Nothing is downloaded or unpacked into a second runtime copy on first launch. The desktop layer owns the environment and lifecycle; Harness owns agents, sessions, models, tools, and plugins.

🌊 Vision

The goal is not merely to make Harness launchable. It is to build a dependable macOS home for Harness:

  • Lower the barrier: make Harness useful without requiring knowledge of the Node.js toolchain.
  • Stay faithful upstream: preserve Harness capabilities, interaction patterns, and plugin ecosystem.
  • Respect the platform: progressively improve menus, shortcuts, notifications, file interactions, and updates.
  • Keep valuable hardware useful: support older Intel Macs and macOS releases where practical.
  • Remain local-first: keep runtimes, processes, and data boundaries understandable and under user control.
  • Ship reproducibly: pin and validate runtimes, architectures, and dependencies for a consistent release experience.

If you want Harness to become a daily tool you can launch from the Dock, try it, share feedback, and help shape what comes next.

🛠️ Development

Requirements

  • macOS
  • Node.js
  • pnpm
  • Rust toolchain
  • Xcode Command Line Tools

Run locally

pnpm install
pnpm tauri dev

For an embedded DSH runtime upgrade, bundled-plugin synchronization and release validation, follow the DSH runtime upgrade guide.

Build for Apple Silicon

pnpm build:macos

Output:

src-tauri/target/release/bundle/dmg/DeepSeek Harness_<version>_aarch64.dmg

Build for Intel Mac

pnpm build:macos:intel

Output:

src-tauri/target/x86_64-apple-darwin/release/bundle/dmg/DeepSeek Harness_<version>_x64.dmg

Build for Windows x64

Windows installers are built on a native Windows GitHub Actions runner:

Actions → Build Windows x64 → Run workflow

They can also be built on a Windows x64 development machine:

pnpm build:windows

The build pipeline automatically:

  • downloads and verifies official Node.js for the target architecture
  • installs a pinned Harness production dependency closure
  • retains native modules for the selected architecture
  • applies macOS 12.7.6 WebKit compatibility handling
  • verifies Markdown behavior, Mach-O architecture, and deployment targets
  • generates npm and Rust/Tauri third-party license reports
  • ensures the app contains one runtime without a first-launch cache copy
  • bundles and verifies the independent Harness Insights plugin

🤝 Contributing

Use Issues to report or discuss:

  • macOS or Windows compatibility problems
  • Intel, Apple Silicon, or Windows x64 feedback
  • desktop experience improvements
  • build and distribution work
  • upgrades to newer Harness releases

When reporting a problem, include your macOS version, processor architecture, and any error information that is safe to share. Never upload API keys or credentials.

📄 License and notice

The desktop shell is available under the MIT License. DeepSeek Harness and bundled components retain their respective copyrights and licenses. See src-tauri/legal/THIRD_PARTY_NOTICES.md for details.

This is an independent community project. It is not an official DeepSeek product and does not imply sponsorship, endorsement, or affiliation. “DeepSeek” and “DeepSeek Harness” are used only to identify the compatible upstream project.

This project is intended only for personal learning and testing and comes with no stability or compatibility guarantees. For everyday use, please prefer the official DeepSeek Harness.