Introduction¶
DSH extends client capabilities through plugins. Native Workspaces are suitable for directly entering a single working directory, but as Workspaces and sessions increase, directory selection, session lists, and archived content become hard to find.
dsh-projects is a DSH plugin maintained by WenhongPan, aiming to organize scattered Workspaces and sessions into clear, searchable project workflows. It continues to use DSH’s own Workspace and Session data, and the base mode does not build a second set of project databases.
The current version is 0.3.0-alpha.2, an Alpha release, under the MIT license.
What is it¶
dsh-projects provides capabilities for project entry, project sidebar, global search, archive viewing, and directory selection. It is suitable for users using DSH Desktop or DSH Web UI who wish to organize Workspaces and sessions by project.
It is compatible with DSH 0.1.0-rc.6 and 0.1.1-rc.2. The Windows official directory window for DSH Desktop 2.0.3 has passed actual UI acceptance testing.
Core Features¶
Projects and Sidebar¶
- Select projects, create projects, organize the sidebar.
- The sidebar can be displayed by project or single list, offering recent, pinned, favorites, and drag-and-drop sorting.
- Pending summary supports three modes: close, compact numbers, or expanded list.
Global Search¶
Global search results are grouped by project, allowing searches for projects and titles; with DSH indexing enabled, chat body content can also be searched.
Multi-folder Projects¶
Multiple existing Workspaces can be combined into one project, and the main folder for new sessions can be explicitly specified.
Archives and Project Management¶
Project management includes:
- Rename
- Open in File Manager
- Archive chats
- Remove project registration
The Archive Center is used to centrally view archived chats; the ability to restore depends on whether DSH exposes an unarchive interface.
Directory Window¶
DSH Desktop 2.0.3 and later prioritizes the use of the Desktop official Windows directory window.
Remote Web UI uses the Host-side in-app directory browser and does not open the remote machine’s system window.
Installation and Enabling¶
Desktop and Web are two independent profiles and require separate installation. Source code installation requires node >=20.
DSH Desktop¶
dsh plugin --profile desktop add https://github.com/WenhongPan/dsh-projects/releases/download/v0.3.0-alpha.2/dsh-projects-0.3.0-alpha.2.tgz
DSH Web UI¶
dsh plugin --profile web add https://github.com/WenhongPan/dsh-projects/releases/download/v0.3.0-alpha.2/dsh-projects-0.3.0-alpha.2.tgz
After installation or upgrade, fully exit and restart the corresponding DSH profile.
Source Installation¶
git clone https://github.com/WenhongPan/dsh-projects.git
cd dsh-projects
npm install
npm run verify
dsh plugin --profile desktop add link:/absolute/path/to/dsh-projects
Typical Usage¶
Chat without selecting a project¶
Regular chats automatically receive an independent task directory:
~/Documents/DSH-Default/YYYY-MM-DD/new-chat[-N]
Enable Chat Body Search¶
Chat body search requires enabling DSH session indexing in the cordis.patch.yml of the target profile. The configuration item is as follows:
- id: session-query-sqlite
config:
path: dshHomePath('session-search.sqlite')
openAt: first-search
Chat body indexes contain data derived from chat content and should employ equivalent privacy protection as the original session data.
Remote Web UI¶
Under Remote Web UI, directory selection uses the Host-side in-app directory browser and does not open the remote machine’s system window.
Notes¶
- This is an Alpha version; treat it as such during use.
- Partial verification for macOS Apple Silicon and macOS/Linux local Web UI is pending manual confirmation.
- Display preferences are saved in the browser
localStorage; clearing site data will break local configurations but will not affect DSH Workspace, chats, or project files. - The base mode does not build a second set of project databases and will not delete project folders or session records upon uninstallation.
- Archive restoration capability depends on whether DSH exposes an unarchive interface.
- The plugin runs with the permissions of the current DSH process; you should check the source code and MIT license before installing.
Conclusion¶
The value of dsh-projects lies in organizing existing Workspaces and Sessions into a project view: the sidebar can be organized by project, search can be grouped by project, and there is a unified entry point for archives and directory selection.
GitHub:
https://github.com/WenhongPan/dsh-projects