Introduction¶
In the dsh Web GUI, a session typically belongs to the current workspace. If you want to bring an existing context to another workspace for further processing, manually copying logs, titles, Agent presets, and model selections is prone to omission. The hucj09/dsh-move-session introduced below is a dsh Web GUI plugin designed to copy the current idle session to another workspace while preserving the complete context.
What is it¶
hucj09/dsh-move-session is a cross-workspace session migration plugin for the dsh Web GUI, owned by hucj09 and licensed under MIT.
It does not modify dsh source code, uses zero-dependency pure JavaScript, and the source code is the build artifact. The plugin adds a session migration entry point to the dsh Web GUI: the session header action row provides a Move Session button, and the sidebar session row’s “…” menu can inject a “Migrate Session” item.
Core Features¶
The following lists only the verified plugin capabilities:
- Adds a
Move Sessionbutton to the session header action row in the dsh Web GUI. - The sidebar session row’s “…” menu can inject a “Migrate Session” item.
- Copies the current session intact to another workspace, preserving conversation logs, titles, Agent presets, and model selection.
- Supports two modes: “Keep Original Session” or “Archive Original Session”.
- Only supports idle session migration; running sessions will be disabled by the client and rejected by the host.
- Triggers automatic cross-environment sidebar refresh via a host event after migration.
- The copy inherits the source session’s model and Agent presets, and preserves the
parentSessionlineage information. - Uses a new session ID for copying; it does not overwrite or delete existing session records.
- Automatically appends
[MS<n>]when a session with the same name exists in the target workspace. - Zero-dependency pure JavaScript, source code is the build artifact, does not modify dsh source code.
Installation and Activation¶
The installation command is as follows:
dsh plugin --profile web add @hucj/dsh-move-session
After executing the installation, restart dsh web and force-refresh the page in the browser using Ctrl+F5. After opening any session, if the Move Session or “Migrate Session” entry appears in the session header action row, the plugin is enabled.
Typical Usage¶
- Open an idle session.
- Click the
Move Sessionbutton in the session header action row, or select “Migrate Session” from the sidebar session row’s “…” menu. - Select the target workspace. The list excludes the current workspace and displays the path and session count.
- Select “Keep Original Session” or “Archive Original Session”.
- After confirmation, the sidebar updates instantly, and the migrated session can be opened.
Applicable Scenarios and Considerations¶
This plugin is suitable for reusing the same session context across multiple dsh workspaces, for example, using a well-organized session as the starting point for another workspace.
It is recommended to pay attention to the following boundaries before use:
- The plugin runs in the dsh Web GUI; you should check the source code and MIT license before installing; during operation, it should be treated as using host capabilities with the current dsh process permissions.
- Only idle sessions can be migrated; running sessions will be disabled by the client and rejected by the host.
- Migration requires balanced source logs; abnormally interrupted and uncorrected logs may be rejected.
- Session IDs will change. The copy uses a new session ID, and lineage is preserved through
parentSession. - The copy will reside in memory as a live idle agent and will not be unloaded when this plugin is uninstalled.
- Migration only copies session logs; attachments/files themselves are not affected.
- “Archive Original Session” belongs to a registry-level global archive collection; this plugin does not provide an unarchive entry point.
- The host must have assembled
@deepseek-ai/dsh-client-runtimeand other standard web runtimes.
Links¶
- Plugin directory page: https://www.skillhub.cn/plugins/hucj09/dsh-move-session
- GitHub repository: https://github.com/hucj09/dsh-move-session