@anionex/dsh-pinned-sessions 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Anionex
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,44 @@
1
+ # DSH Pinned Sessions
2
+
3
+ Pin important DeepSeek Harness sessions at the top of the Workspace sidebar.
4
+
5
+ ## Features
6
+
7
+ - Adds **Pin session** / **Unpin session** to the native Session actions menu.
8
+ - Keeps pinned Sessions in a compact list above the native Workspace tree.
9
+ - Opens a pinned Session through the official DSH Session service.
10
+ - Preserves the original Session in its Workspace and keeps search, grouping, drag ordering, fork, rename, and archive behavior unchanged.
11
+ - Stores pins in versioned browser-profile storage and removes stale or archived entries after DSH data is ready.
12
+ - Supports both the DSH `web` profile and DSH Desktop's embedded Web client.
13
+
14
+ ## Install
15
+
16
+ From a checkout:
17
+
18
+ ```bash
19
+ dsh plugin --profile web add .
20
+ dsh plugin --profile desktop add .
21
+ ```
22
+
23
+ Restart each long-running profile after installation. Open a Session's `...` menu and choose **Pin session**. The pinned list appears directly below the Workspace header.
24
+
25
+ Pins persist independently in each browser/Desktop profile. They are UI preferences and are not written into Session logs or Workspace files.
26
+
27
+ ## Compatibility
28
+
29
+ DSH currently exposes additive root overlays but no row-level Session menu or Workspace-list header slot. This plugin mounts through the official `shell.overlay` lifecycle, then uses DSH's stable `[data-slot="sidebar.workspaces"]` and ARIA roles for placement. It captures a row's real Session ID from the native `sessions.open(node.id)` callback without navigating; if that verified capture is unavailable, the plugin fails closed and does not add a menu action.
30
+
31
+ No title or list-position matching is used. All observers, listeners, portal hosts, and styles are removed on plugin disposal/HMR.
32
+
33
+ ## Development
34
+
35
+ ```bash
36
+ pnpm install
37
+ pnpm run check
38
+ ```
39
+
40
+ The repository commits `lib/` so a Git checkout can be installed directly.
41
+
42
+ ## License
43
+
44
+ MIT
package/README.zh.md ADDED
@@ -0,0 +1,44 @@
1
+ # DSH 置顶会话
2
+
3
+ 把重要的 DeepSeek Harness 会话固定在左侧工作区列表顶部。
4
+
5
+ ## 功能
6
+
7
+ - 在原生会话“...”菜单中增加“置顶会话 / 取消置顶”。
8
+ - 在原生工作区树上方显示紧凑的置顶会话列表。
9
+ - 点击置顶项时通过 DSH 官方 Session 服务打开会话。
10
+ - 原会话仍保留在原工作区中,搜索、分组、拖拽排序、分叉、重命名和归档全部保持原样。
11
+ - 使用带版本号的浏览器 profile 存储;DSH 数据就绪后自动移除已归档或已消失的条目。
12
+ - 同时支持 DSH `web` profile 和 DSH Desktop 内嵌的 Web 客户端。
13
+
14
+ ## 安装
15
+
16
+ 在插件仓库中执行:
17
+
18
+ ```bash
19
+ dsh plugin --profile web add .
20
+ dsh plugin --profile desktop add .
21
+ ```
22
+
23
+ 安装后重启对应的长期运行 profile。打开任意会话的“...”菜单并选择“置顶会话”,置顶区会出现在“工作区”标题正下方。
24
+
25
+ Web 与 Desktop 各自在自己的浏览器 profile 中持久化置顶状态;该状态不会写入会话日志或工作区文件。
26
+
27
+ ## 兼容实现
28
+
29
+ 当前 DSH 提供可叠加的根级 overlay slot,但没有逐会话菜单或工作区列表头部 slot。本插件通过官方 `shell.overlay` 生命周期挂载,再使用 DSH 稳定的 `[data-slot="sidebar.workspaces"]` 和 ARIA role 完成精确放置。插件通过原生 `sessions.open(node.id)` 回调无导航地捕获真实 Session ID;如果无法验证该捕获路径,就直接不添加菜单项。
30
+
31
+ 实现不会按标题或列表序号猜测会话。插件卸载或热重载时会完整清理 observer、事件监听、portal 宿主和样式。
32
+
33
+ ## 开发
34
+
35
+ ```bash
36
+ pnpm install
37
+ pnpm run check
38
+ ```
39
+
40
+ 仓库提交 `lib/` 构建产物,因此 Git checkout 可以直接安装。
41
+
42
+ ## 许可证
43
+
44
+ MIT
@@ -0,0 +1,4 @@
1
+ # Mount the host marker so DSH discovers this bundle's Web client entry.
2
+ - insert:
3
+ - id: pinned-sessions
4
+ name: '@anionex/dsh-pinned-sessions'