Back to home@Islulua

dsh-code-navigator

Persistent C/C++, Python, and TypeScript code navigation for DeepSeek Harness.

Stars
0
Language
TypeScript
Created
Sep 2, 2026
Updated
Sep 4, 2026
GitHub repo

Introduction

dsh-code-navigator

简体中文 · Plugin documentation

Persistent, VS Code-style source navigation for DeepSeek Harness. The plugin works with BetterSidebar when it is installed and provides its own Explorer, tabs, breadcrumb, editor, and Quick Open workbench when it is not.

Status: stable 0.1.0 release for DSH 0.1.2-alpha.3+.

Prerequisites

The plugin itself works without an external language server. C/C++ definition navigation additionally requires clangd, which is not included because it is a native LLVM executable:

# Check first
clangd --version

# macOS with Homebrew
brew install llvm

# Debian / Ubuntu
sudo apt-get install clangd

On Windows, install an official LLVM release and ensure clangd.exe is in PATH. If Homebrew installs LLVM outside PATH, configure clangdCommand: /opt/homebrew/opt/llvm/bin/clangd in the plugin settings. See clangd's official installation guide for current platform packages and downloads.

Python and JavaScript/TypeScript navigation require no global installation: Pyright, TypeScript Language Server, and TypeScript are included in the npm package.

Features

NavigationWorkspace UILanguage services
Cmd/Ctrl-click definitionsExplorer tree and editable tabsPersistent clangd for C/C++
Back and forward historyClickable path breadcrumbBundled Pyright for Python
Modifier-hover underlineTab close/context menuBundled TypeScript Language Server
Cmd/Ctrl+P file searchLSP status and index warm-upAutomatic dependency detection

Screenshots

Standalone workbench — Explorer, tabs, breadcrumb, editor, and LSP status

Standalone workbench

Clickable breadcrumb directory picker

Breadcrumb directory picker

Back and forward navigation controls

Navigation history controls

Graceful degradation

Language servers are detected during activation and the result is cached. Missing tools disable only their language feature:

  • clangd is optional. Without it, C/C++ files still open with syntax highlighting, but C/C++ indexing and definition lookup stay disabled.
  • Pyright, TypeScript Language Server, and TypeScript ship with the plugin. A damaged or incomplete installation disables that server and leaves the workbench usable.
  • BetterSidebar is optional. Without it, the standalone workbench is mounted automatically.
flowchart LR
  Workspace[DSH workspace] --> Navigator[Code Navigator host]
  Navigator --> Detect{Server available?}
  Detect -->|yes| Persistent[Persistent LSP process]
  Detect -->|no| Viewer[File browser + editor]
  Persistent --> Sidebar[BetterSidebar adapter]
  Persistent --> Workbench[Standalone workbench]
  Viewer --> Sidebar
  Viewer --> Workbench

Install a development archive

pnpm install
pnpm --filter dsh-code-navigator check:release
pnpm --filter dsh-code-navigator pack
dsh plugin --profile web add file:./packages/code-navigator/dsh-code-navigator-0.1.0.tgz
dsh web

See the plugin README for configuration, dependency ownership, API integration, and release constraints.

Repository layout

  • packages/code-navigator/ — independently publishable plugin.
  • packages/better-sidebar/ — upstream-based compatibility fixture; it is not a runtime dependency of the navigator.

The sidebar source tracks omdsh-dev/DSH-better-sidebar through the upstream Git remote.

Development

pnpm install
pnpm --filter dsh-code-navigator check:release
pnpm peers check

Licensed under MIT. See the package's third-party notices for bundled runtime components.