DeepSeek Harness (DSH) provides session management, but lacks a direct way to launch the local development environment. omdsh-editor solves this problem by adding a split controller to the session header, allowing you to directly open the local project corresponding to the current conversation directory in the Web interface.

Feature Overview

This plugin adds a split controller to DSH’s session header. The controller is divided into left and right parts:

  • Left section: Click to directly launch the previously selected editor.
  • Right section: Click the arrow to expand a dropdown menu and select a different editor, terminal, or file manager.

The plugin provides three internal interfaces:

  • GET /omdsh-editor/editors: Retrieve the list of installed editors, terminals, or file managers on the current host.
  • GET /omdsh-editor/icon?id=...: Retrieve the icon for a specified editor.
  • POST /omdsh-editor/open: Launch the editor and open the directory corresponding to the session.

Detection Mechanism

The plugin automatically detects locally installed applications. The detection logic supports three methods, tried in priority order:

  • mac-app: Scan macOS application directories (such as ~/Applications) and launch using the open -a command.
  • windows-exe: Scan executable files under %LOCALAPPDATA% or %ProgramFiles%.
  • path-bin: Scan the system PATH environment variable.

Detection results are cached by default for 15 seconds (detectionTtlMs), and the cache duration can be adjusted via configuration. Only detected applications appear in the list.

Configuration

The plugin itself does not register a settings namespace, so it cannot be configured through the plugin card form UI. Configuration must be written to the cordis.patch.yml file.

Add a config field to the bundle row:

- id: editor
  name: '@omdsh-plugins/omdsh-editor'
  config:
    editors:
      - id: nvim
        label: Neovim
        kind: terminal
        accent: '#57a143'
        probes:
          - { kind: path-bin, bin: nvim }
    detectionTtlMs: 60000

Note: The editors array replaces the full list instead of appending to it. If you need to add custom editors, it is recommended to first copy the default list from src/catalog.ts.

Usage Steps

  1. Find the split controller on the right side of DSH’s session header.
  2. Click the left section to directly launch the previously selected editor.
  3. Click the right arrow and select another editor, terminal (such as iTerm2 or kitty), or file manager from the list.

Notes

  • Runtime Environment: The editor must be opened on the machine where DSH is running. Launching editors on remote machines over the network is not supported.
  • Configuration Location: After modifying the configuration, restart DSH or reload the bundle row for the changes to take effect.
  • Permissions: Ensure the DSH process has permission to invoke the system open command or execute executables.

Summary

omdsh-editor addresses the need to directly operate on local development environment directories from the Web interface. With simple configuration, you can seamlessly switch between tools such as VS Code, Cursor, and terminals in DSH.