Back to home@jay-chen-1102

dsh-vscode-layout

No description

Stars
1
Language
JavaScript
Created
Aug 16, 2026
Updated
Aug 16, 2026
GitHub repo

Introduction

dsh-vscode-layout

VSCode-like layout for the DeepSeek Harness (DSH) web GUI.

What it does

Re-arranges the web shell's columns into a VSCode-style layout:

  • Left tab rail (工作区 | 文件) above the left column:
    • 工作区 — the shell sidebar (sessions / workspaces list)
    • 文件 — the aionui file explorer (file tree)
    • Click to switch between them.
  • Center — the conversation while chatting.
  • When a file is open in the aionui preview (editor):
    • the editor takes the center column,
    • the conversation docks to the right (~420px).
  • Closing all file tabs returns the conversation to the center.

Existing capabilities are preserved: sidebar drag-resize (workspace tab), file-tree search, multi-tab preview, source/preview toggle, save, SCM changes panel — they just moved around.

Requirements

  • DSH web GUI (the web profile).
  • @linxin666/dsh-client-ui-aionui-panel (usually installed via the @linxin666/dsh-web-ui-all aggregate bundle). The plugin's browser half is a no-op while the aionui columns ([data-aionui-explorer-col], [data-aionui-preview-col]) are absent.

Install

dsh plugin --profile web add link:/absolute/path/to/dsh-vscode-layout

or publish the package and:

dsh plugin --profile web add dsh-vscode-layout

Then restart dsh web. The profile bundle is read at boot, so a restart is required (a page refresh alone is not enough).

How it works

The package is a standard DSH profile bundle:

  • cordis.patch.yml — inserts the dsh-vscode-layout row into the profile tree.
  • lib/index.js — host half (no-op).
  • lib/client.js — browser half, registered via window.__ModuleLoader__.load.

The browser half overrides the frame grid with an !important stylesheet (winning over the aionui panel's inline grid-template-columns writes), reassigns grid columns, injects the tab rail, and watches:

  • the frame's inline grid to mirror the shell sidebar/details widths,
  • the preview column's visibility to detect "a file is open".

Uninstall

dsh plugin --profile web remove dsh-vscode-layout

Then restart dsh web.

License

Apache-2.0