@michengai/dsh-codex-ui 0.2.55 → 0.2.56
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/README.md +88 -54
- package/README.zh-CN.md +83 -49
- package/assets/branding/dsh-banner.png +0 -0
- package/assets/screenshots/conversation-light.png +0 -0
- package/assets/screenshots/conversation.png +0 -0
- package/assets/screenshots/session-menu.png +0 -0
- package/assets/screenshots/settings-about.png +0 -0
- package/dist/client.js +1 -11
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -1,38 +1,50 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="assets/
|
|
2
|
+
<img src="assets/branding/dsh-banner.png" alt="DSH Codex UI" width="100%">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
<
|
|
5
|
+
<div align="center">
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
<strong>A DeepSeek Harness Web plugin that rebuilds the sidebar, workspace tree, search, and turn navigation in a Codex-style layout.</strong>
|
|
9
|
-
</p>
|
|
7
|
+
# DSH Codex UI
|
|
10
8
|
|
|
11
|
-
|
|
12
|
-
<a href="https://github.com/MichengAI/dsh-codex-ui/issues">Report an issue</a>
|
|
13
|
-
· <a href="https://www.npmjs.com/package/@michengai/dsh-codex-ui">View on npm</a>
|
|
14
|
-
· <a href="README.zh-CN.md">简体中文</a>
|
|
15
|
-
</p>
|
|
9
|
+
**Rebuild the DeepSeek Harness Web sidebar, workspace tree, search, and turn navigation in a Codex-style layout**
|
|
16
10
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
11
|
+
[简体中文](README.zh-CN.md) · [Apache-2.0](LICENSE)
|
|
12
|
+
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
[](https://www.npmjs.com/package/@michengai/dsh-codex-ui)
|
|
15
|
+
[](https://github.com/MichengAI/dsh-codex-ui)
|
|
16
|
+
[](https://nodejs.org/)
|
|
23
17
|
|
|
24
|
-
>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
> DSH Codex UI is a community-maintained DeepSeek Harness (DSH) plugin, not an official DeepSeek AI product. It uses public DSH slots only and does not modify host source code or conversation data.
|
|
25
21
|
|
|
26
22
|
## Features
|
|
27
23
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
24
|
+
- Replace the default sidebar through the official `sidebar` slot and keep `sidebar.workspaces`, `sidebar.settings`, and `sidebar.footer.action`.
|
|
25
|
+
- Provide a Codex-style header with brand wordmark, sidebar collapse, and global search.
|
|
26
|
+
- List workspaces and conversations with expand/collapse, drag reorder, project pinning, unread dots, and running-state indicators.
|
|
27
|
+
- Add project and conversation menus for rename, pin, unread, archive, fork, open folder, copy, and delete.
|
|
28
|
+
- Restyle the conversation column and composer card, and add a compact turn navigator on the current session.
|
|
29
|
+
- Show companion-plugin status in **Settings → About**, and install the missing pieces from npm.
|
|
30
|
+
|
|
31
|
+
## Screenshots
|
|
32
|
+
|
|
33
|
+
Light theme: Codex-style sidebar, workspace tree, and conversation column.
|
|
34
|
+
|
|
35
|
+

|
|
36
|
+
|
|
37
|
+
Dark theme: the same layout with Codex dark tokens.
|
|
38
|
+
|
|
39
|
+

|
|
40
|
+
|
|
41
|
+
Conversation menu: rename, pin, unread, archive, fork, copy, and delete.
|
|
34
42
|
|
|
35
|
-

|
|
44
|
+
|
|
45
|
+
**Settings → About** lists the companion plugins and their install state.
|
|
46
|
+
|
|
47
|
+

|
|
36
48
|
|
|
37
49
|
## Prerequisites
|
|
38
50
|
|
|
@@ -40,33 +52,76 @@
|
|
|
40
52
|
- Examples use the `web` profile; replace it with the target profile.
|
|
41
53
|
- Source installation and development require Node.js 22+ and pnpm. Installing from npm does not require running `pnpm install` in an arbitrary directory.
|
|
42
54
|
|
|
55
|
+
## Plugin combo
|
|
56
|
+
|
|
57
|
+
`@michengai/dsh-codex-suite` is the one-click combo. It installs these six plugins into the same profile:
|
|
58
|
+
|
|
59
|
+
| Plugin | npm package | Role |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| Codex UI | `@michengai/dsh-codex-ui` | Codex-style sidebar, workspace tree, search, and turn navigation |
|
|
62
|
+
| Expert management | `@michengai/dsh-agency-agents` | Settings page opened from **Experts** |
|
|
63
|
+
| Skill management | `@michengai/dsh-skills-manager` | Settings page opened from **Skills** |
|
|
64
|
+
| Archive management | `@michengai/dsh-archive-manager` | Permanent deletion and archived-session management |
|
|
65
|
+
| IM Assistant | `@michengai/dsh-im-connect` | IM settings and the **Channels** tab |
|
|
66
|
+
| Scheduled tasks | `@michengai/dsh-automation` | Scheduled-task settings and the **Schedule** tab |
|
|
67
|
+
|
|
68
|
+
`dshmarket` stays optional. When it is installed, **Plugins** opens the market first.
|
|
69
|
+
|
|
70
|
+
Do not install the suite and the individual plugins in the same profile. The two patch sets conflict.
|
|
71
|
+
|
|
43
72
|
## Installation
|
|
44
73
|
|
|
45
|
-
|
|
74
|
+
`dsh plugin add` forwards to `pnpm add` in the profile directory. Without a version and official registry, a local mirror or minimum-release-age policy can leave you on an older build.
|
|
46
75
|
|
|
47
|
-
|
|
76
|
+
### Ask another agent to install the suite
|
|
77
|
+
|
|
78
|
+
Copy one of the sentences below into DSH, Codex, or WorkBuddy and let that agent install the combo into your local `web` profile.
|
|
79
|
+
|
|
80
|
+
From npm:
|
|
81
|
+
|
|
82
|
+
```text
|
|
83
|
+
Install the latest DSH plugin suite @michengai/dsh-codex-suite into my local web profile using the official npm registry: dsh plugin --profile web add @michengai/dsh-codex-suite@latest --registry=https://registry.npmjs.org/. Then run dsh --profile web --dump-config, confirm codex-ui, agency-agents, skills-manager, archive-manager, im-connect, and dsh-automation are mounted, and remind me to restart DSH Web and hard-refresh the browser.
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
UI only:
|
|
87
|
+
|
|
88
|
+
```text
|
|
89
|
+
Install the latest DSH plugin @michengai/dsh-codex-ui into my local web profile using the official npm registry: dsh plugin --profile web add @michengai/dsh-codex-ui@latest --registry=https://registry.npmjs.org/. Then run dsh --profile web --dump-config, confirm codex-ui is mounted, and remind me to restart DSH Web and hard-refresh the browser.
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
| Product | How to use it |
|
|
93
|
+
| --- | --- |
|
|
94
|
+
| DSH | Send one of the sentences above to the current session. |
|
|
95
|
+
| Codex | Send one of the sentences above to Codex and let it install locally. |
|
|
96
|
+
| WorkBuddy | Send one of the sentences above to WorkBuddy. |
|
|
97
|
+
|
|
98
|
+
If `dsh` is not on PATH, replace the leading `dsh` with `npx --yes @deepseek-ai/dsh`.
|
|
99
|
+
|
|
100
|
+
### Install the complete suite
|
|
101
|
+
|
|
102
|
+
This is the one-click combo. Run it from any PowerShell directory:
|
|
48
103
|
|
|
49
104
|
```powershell
|
|
50
105
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
|
51
106
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
|
52
|
-
dsh plugin --profile web add @michengai/dsh-codex-
|
|
107
|
+
dsh plugin --profile web add @michengai/dsh-codex-suite@latest --registry=https://registry.npmjs.org/
|
|
53
108
|
dsh --profile web --dump-config
|
|
54
109
|
```
|
|
55
110
|
|
|
56
|
-
|
|
111
|
+
To pin a release, replace `@latest` with a version such as `@0.1.0`.
|
|
57
112
|
|
|
58
|
-
|
|
113
|
+
Restart DSH Web and hard-refresh the browser. If the profile already has any of the six plugins installed individually, uninstall those plugins first.
|
|
59
114
|
|
|
60
|
-
|
|
115
|
+
### Install Codex UI only
|
|
61
116
|
|
|
62
117
|
```powershell
|
|
63
118
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
|
64
119
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
|
65
|
-
dsh plugin --profile web add @michengai/dsh-codex-
|
|
120
|
+
dsh plugin --profile web add @michengai/dsh-codex-ui@latest --registry=https://registry.npmjs.org/
|
|
66
121
|
dsh --profile web --dump-config
|
|
67
122
|
```
|
|
68
123
|
|
|
69
|
-
|
|
124
|
+
The plugin takes over the default sidebar through `cordis.patch.yml`. Uninstalling restores the default sidebar.
|
|
70
125
|
|
|
71
126
|
### Install from source
|
|
72
127
|
|
|
@@ -99,15 +154,7 @@ Open DSH Web. The left navigation is rendered by this plugin.
|
|
|
99
154
|
| Manage a conversation | Open the conversation menu to rename, pin, mark unread, archive, fork, copy, or delete. |
|
|
100
155
|
| Jump between turns | Use the turn marks on the left of the current conversation. |
|
|
101
156
|
| Inspect connectors | Open **Settings → Connectors**. Addresses, commands, and credentials are never shown. |
|
|
102
|
-
| Check companion plugins | Open **Settings → About** to
|
|
103
|
-
|
|
104
|
-

|
|
105
|
-
|
|
106
|
-

|
|
107
|
-
|
|
108
|
-

|
|
109
|
-
|
|
110
|
-

|
|
157
|
+
| Check companion plugins | Open **Settings → About** to install or update the combo plugins. |
|
|
111
158
|
|
|
112
159
|
Deleting a workspace registration does not delete its folder or conversation records. Pinned and unread state is stored only in the current browser.
|
|
113
160
|
|
|
@@ -123,21 +170,8 @@ Deleting a workspace registration does not delete its folder or conversation rec
|
|
|
123
170
|
- The plugin uses only public DSH slots and services.
|
|
124
171
|
- It does not modify host source code or the conversation data model.
|
|
125
172
|
- Permanent deletion of archived conversations is provided by `@michengai/dsh-archive-manager`.
|
|
126
|
-
- Expert and skill management are optional peer plugins.
|
|
127
173
|
- The Connectors directory never exposes addresses, commands, or credentials.
|
|
128
174
|
|
|
129
|
-
## Companion plugins
|
|
130
|
-
|
|
131
|
-
| Plugin | npm package | Role |
|
|
132
|
-
| --- | --- | --- |
|
|
133
|
-
| Expert management | `@michengai/dsh-agency-agents` | Settings page opened from **Experts** |
|
|
134
|
-
| Skill management | `@michengai/dsh-skills-manager` | Settings page opened from **Skills** |
|
|
135
|
-
| Archive management | `@michengai/dsh-archive-manager` | Permanent deletion and archived-session management |
|
|
136
|
-
| IM Assistant | `@michengai/dsh-im-connect` | Settings page opened from **IM Assistant** |
|
|
137
|
-
| Scheduled tasks | `@michengai/dsh-automation` | Settings page opened from **Scheduled tasks** |
|
|
138
|
-
| Plugin Market | `dshmarket` | When installed, the **Plugins** entry opens the market first |
|
|
139
|
-
| Suite | `@michengai/dsh-codex-suite` | Installs Codex UI and companion management plugins |
|
|
140
|
-
|
|
141
175
|
## Secondary development
|
|
142
176
|
|
|
143
177
|
- [src\index.ts](src/index.ts): host entry and the non-sensitive Connectors directory endpoint.
|
package/README.zh-CN.md
CHANGED
|
@@ -1,27 +1,23 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="assets/
|
|
2
|
+
<img src="assets/branding/dsh-banner.png" alt="DSH Codex UI" width="100%">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
<
|
|
5
|
+
<div align="center">
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
<strong>为 DeepSeek Harness Web 提供 Codex 风格侧栏、工作区会话树、全局搜索和轮次导航的独立插件。</strong>
|
|
9
|
-
</p>
|
|
7
|
+
# DSH Codex UI
|
|
10
8
|
|
|
11
|
-
|
|
12
|
-
<a href="https://github.com/MichengAI/dsh-codex-ui/issues">反馈问题</a>
|
|
13
|
-
· <a href="https://www.npmjs.com/package/@michengai/dsh-codex-ui">查看 npm</a>
|
|
14
|
-
· <a href="README.md">English</a>
|
|
15
|
-
</p>
|
|
9
|
+
**为 DeepSeek Harness Web 重构 Codex 风格侧栏、工作区会话树、全局搜索和轮次导航**
|
|
16
10
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
11
|
+
[English](README.md) · [Apache-2.0](LICENSE)
|
|
12
|
+
|
|
13
|
+
[](LICENSE)
|
|
14
|
+
[](https://www.npmjs.com/package/@michengai/dsh-codex-ui)
|
|
15
|
+
[](https://github.com/MichengAI/dsh-codex-ui)
|
|
16
|
+
[](https://nodejs.org/)
|
|
23
17
|
|
|
24
|
-
>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
> DSH Codex UI 是社区维护的 DeepSeek Harness(DSH)插件,并非 DeepSeek AI 官方产品。它只使用 DSH 公开插槽,不修改宿主源码或会话数据。
|
|
25
21
|
|
|
26
22
|
## 功能概览
|
|
27
23
|
|
|
@@ -30,9 +26,25 @@
|
|
|
30
26
|
- 工作区与会话支持展开折叠、拖拽排序、项目置顶、未读圆点和运行状态。
|
|
31
27
|
- 项目和会话菜单支持重命名、置顶、未读、归档、派生、打开目录、复制和删除。
|
|
32
28
|
- 调整会话列与输入卡片视觉,并为当前会话提供紧凑轮次导航。
|
|
33
|
-
-
|
|
29
|
+
- 在「设置 → 关于」展示配套插件状态,并可从 npm 安装缺失项。
|
|
30
|
+
|
|
31
|
+
## 界面预览
|
|
32
|
+
|
|
33
|
+
浅色主题:Codex 风格侧栏、工作区会话树和会话列。
|
|
34
|
+
|
|
35
|
+

|
|
36
|
+
|
|
37
|
+
深色主题:同一布局,使用 Codex 暗色令牌。
|
|
38
|
+
|
|
39
|
+

|
|
40
|
+
|
|
41
|
+
会话菜单:重命名、置顶、未读、归档、派生、复制和删除。
|
|
34
42
|
|
|
35
|
-

|
|
44
|
+
|
|
45
|
+
「设置 → 关于」列出配套插件及其安装状态。
|
|
46
|
+
|
|
47
|
+

|
|
36
48
|
|
|
37
49
|
## 前置条件
|
|
38
50
|
|
|
@@ -40,33 +52,76 @@
|
|
|
40
52
|
- 以下示例使用 `web` profile;请替换为实际目标 profile。
|
|
41
53
|
- 从源码安装或二次开发需要 Node.js 22+ 与 pnpm;仅从 npm 安装无需在任意目录执行 `pnpm install`。
|
|
42
54
|
|
|
55
|
+
## 插件组合
|
|
56
|
+
|
|
57
|
+
`@michengai/dsh-codex-suite` 是一键套件,会把下面 6 个插件装进同一个 profile:
|
|
58
|
+
|
|
59
|
+
| 插件 | npm 包 | 作用 |
|
|
60
|
+
| --- | --- | --- |
|
|
61
|
+
| Codex UI | `@michengai/dsh-codex-ui` | Codex 风格侧栏、工作区会话树、搜索和轮次导航 |
|
|
62
|
+
| 专家管理 | `@michengai/dsh-agency-agents` | 从「专家」进入对应设置页 |
|
|
63
|
+
| 技能管理 | `@michengai/dsh-skills-manager` | 从「技能」进入对应设置页 |
|
|
64
|
+
| 归档管理 | `@michengai/dsh-archive-manager` | 提供永久删除和已归档会话管理 |
|
|
65
|
+
| IM 助理 | `@michengai/dsh-im-connect` | IM 设置页和「频道」页签 |
|
|
66
|
+
| 定时任务 | `@michengai/dsh-automation` | 定时任务设置页和「定时」页签 |
|
|
67
|
+
|
|
68
|
+
`dshmarket` 仍是可选项。已安装时,「插件」入口会优先进入市场。
|
|
69
|
+
|
|
70
|
+
套件安装和单独安装互斥。同一 profile 不要同时安装两者,两套 patch 会冲突。
|
|
71
|
+
|
|
43
72
|
## 安装
|
|
44
73
|
|
|
45
|
-
|
|
74
|
+
`dsh plugin add` 会转发到 profile 目录里的 `pnpm add`。不写版本、不指定官方源时,本机镜像和最短发布间隔可能让你停在旧版。
|
|
46
75
|
|
|
47
|
-
|
|
76
|
+
### 交给其他 Agent 一句话安装套件
|
|
77
|
+
|
|
78
|
+
把下面其中一句复制到 DSH、Codex 或 WorkBuddy,让它代你安装到本机 `web` profile。
|
|
79
|
+
|
|
80
|
+
从 npm 安装完整套件:
|
|
81
|
+
|
|
82
|
+
```text
|
|
83
|
+
请把 DSH 套件 @michengai/dsh-codex-suite 最新版装进本机 web profile,使用官方 npm 源执行:dsh plugin --profile web add @michengai/dsh-codex-suite@latest --registry=https://registry.npmjs.org/。装完执行 dsh --profile web --dump-config,确认已挂载 codex-ui、agency-agents、skills-manager、archive-manager、im-connect 和 dsh-automation,并提醒我重启 DSH Web 后硬刷新浏览器。
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
只安装 Codex UI:
|
|
87
|
+
|
|
88
|
+
```text
|
|
89
|
+
请把 DSH 插件 @michengai/dsh-codex-ui 最新版装进本机 web profile,使用官方 npm 源执行:dsh plugin --profile web add @michengai/dsh-codex-ui@latest --registry=https://registry.npmjs.org/。装完执行 dsh --profile web --dump-config,确认已挂载 codex-ui,并提醒我重启 DSH Web 后硬刷新浏览器。
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
| 产品 | 怎么用 |
|
|
93
|
+
| --- | --- |
|
|
94
|
+
| DSH | 把上面其中一句发给当前会话。 |
|
|
95
|
+
| Codex | 把上面其中一句发给 Codex,让它在本机执行安装。 |
|
|
96
|
+
| WorkBuddy | 把上面其中一句发给 WorkBuddy。 |
|
|
97
|
+
|
|
98
|
+
未把 `dsh` 装进 PATH 时,把开头的 `dsh` 换成 `npx --yes @deepseek-ai/dsh`。
|
|
99
|
+
|
|
100
|
+
### 安装完整套件
|
|
101
|
+
|
|
102
|
+
这是一键组合安装。在任意 PowerShell 目录执行:
|
|
48
103
|
|
|
49
104
|
```powershell
|
|
50
105
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
|
51
106
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
|
52
|
-
dsh plugin --profile web add @michengai/dsh-codex-
|
|
107
|
+
dsh plugin --profile web add @michengai/dsh-codex-suite@latest --registry=https://registry.npmjs.org/
|
|
53
108
|
dsh --profile web --dump-config
|
|
54
109
|
```
|
|
55
110
|
|
|
56
|
-
|
|
111
|
+
需要钉死某一版时,把 `@latest` 换成具体版本,例如 `@0.1.0`。
|
|
57
112
|
|
|
58
|
-
|
|
113
|
+
安装后重启 DSH Web 并硬刷新浏览器。若该 profile 已单独安装上述任一插件,先卸载这些独立插件,再装套件。
|
|
59
114
|
|
|
60
|
-
|
|
115
|
+
### 只安装 Codex UI
|
|
61
116
|
|
|
62
117
|
```powershell
|
|
63
118
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
|
64
119
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
|
65
|
-
dsh plugin --profile web add @michengai/dsh-codex-
|
|
120
|
+
dsh plugin --profile web add @michengai/dsh-codex-ui@latest --registry=https://registry.npmjs.org/
|
|
66
121
|
dsh --profile web --dump-config
|
|
67
122
|
```
|
|
68
123
|
|
|
69
|
-
|
|
124
|
+
插件会通过 `cordis.patch.yml` 接管默认侧栏;卸载后默认侧栏会恢复。
|
|
70
125
|
|
|
71
126
|
### 从源码安装
|
|
72
127
|
|
|
@@ -99,15 +154,7 @@ dsh --profile web --dump-config
|
|
|
99
154
|
| 管理会话 | 打开会话菜单,进行重命名、置顶、未读、归档、派生、复制或删除。 |
|
|
100
155
|
| 跳转轮次 | 使用当前会话左侧的轮次刻度跳转到对应提问。 |
|
|
101
156
|
| 查看连接器 | 打开「设置 → 连接器」。不会展示地址、命令或凭证。 |
|
|
102
|
-
| 查看配套插件 | 打开「设置 →
|
|
103
|
-
|
|
104
|
-

|
|
105
|
-
|
|
106
|
-

|
|
107
|
-
|
|
108
|
-

|
|
109
|
-
|
|
110
|
-

|
|
157
|
+
| 查看配套插件 | 打开「设置 → 关于」,安装或更新套件中的配套插件。 |
|
|
111
158
|
|
|
112
159
|
删除项目注册不会删除项目目录或会话记录。置顶和未读状态只保存在当前浏览器。
|
|
113
160
|
|
|
@@ -123,21 +170,8 @@ dsh --profile web --dump-config
|
|
|
123
170
|
- 本插件只使用 DSH 公开插槽和服务。
|
|
124
171
|
- 不修改宿主源码或会话数据模型。
|
|
125
172
|
- 归档会话的永久删除由 `@michengai/dsh-archive-manager` 提供。
|
|
126
|
-
- 专家和技能管理分别由对应可选 peer 插件提供。
|
|
127
173
|
- 连接器目录不会展示地址、命令或凭证。
|
|
128
174
|
|
|
129
|
-
## 配套插件
|
|
130
|
-
|
|
131
|
-
| 插件 | npm 包 | 作用 |
|
|
132
|
-
| --- | --- | --- |
|
|
133
|
-
| 专家管理 | `@michengai/dsh-agency-agents` | 从「专家」进入对应设置页 |
|
|
134
|
-
| 技能管理 | `@michengai/dsh-skills-manager` | 从「技能」进入对应设置页 |
|
|
135
|
-
| 归档管理 | `@michengai/dsh-archive-manager` | 提供永久删除和已归档会话管理 |
|
|
136
|
-
| IM 助理 | `@michengai/dsh-im-connect` | 从「IM助理」进入对应设置页 |
|
|
137
|
-
| 定时任务 | `@michengai/dsh-automation` | 从「定时任务」进入对应设置页 |
|
|
138
|
-
| 插件市场 | `dshmarket` | 已安装时,「插件」入口优先进入市场 |
|
|
139
|
-
| 套件 | `@michengai/dsh-codex-suite` | 一次安装 Codex UI 及配套管理插件 |
|
|
140
|
-
|
|
141
175
|
## 二次开发
|
|
142
176
|
|
|
143
177
|
- [src\index.ts](src/index.ts):Host 入口,以及不含敏感信息的连接器目录接口。
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/client.js
CHANGED
|
@@ -447,7 +447,6 @@ window.__ModuleLoader__.load({
|
|
|
447
447
|
pinned && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
448
448
|
className: "dcu-wb-pin",
|
|
449
449
|
"aria-label": t("sessions.pinned"),
|
|
450
|
-
title: t("sessions.pinned"),
|
|
451
450
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PinMark, {})
|
|
452
451
|
}),
|
|
453
452
|
unread ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
@@ -463,7 +462,6 @@ window.__ModuleLoader__.load({
|
|
|
463
462
|
type: "button",
|
|
464
463
|
className: "dcu-wb-more dcu-wb-quick-pin",
|
|
465
464
|
"aria-label": t(pinned ? "sessions.unpin" : "sessions.pin"),
|
|
466
|
-
title: t(pinned ? "sessions.unpin" : "sessions.pin"),
|
|
467
465
|
onClick: (event) => {
|
|
468
466
|
event.stopPropagation();
|
|
469
467
|
onPin();
|
|
@@ -473,7 +471,6 @@ window.__ModuleLoader__.load({
|
|
|
473
471
|
type: "button",
|
|
474
472
|
className: "dcu-wb-more",
|
|
475
473
|
"aria-label": t("sessions.archive"),
|
|
476
|
-
title: t("sessions.archive"),
|
|
477
474
|
onClick: (event) => {
|
|
478
475
|
event.stopPropagation();
|
|
479
476
|
onArchive();
|
|
@@ -986,10 +983,7 @@ header [data-dcu-title-folder] svg,header [data-dcu-title-more] svg{display:bloc
|
|
|
986
983
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
987
984
|
className: "dcu-wb-folder",
|
|
988
985
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_deepseek_ai_dsh_client_ui_primitives.IconFolderClose16, { size: 16 })
|
|
989
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
990
|
-
title: hoverTip.path,
|
|
991
|
-
children: hoverTip.path
|
|
992
|
-
})]
|
|
986
|
+
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: hoverTip.path })]
|
|
993
987
|
}),
|
|
994
988
|
hoverTip.kind === "session" && hoverTip.project !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
995
989
|
className: "dcu-wb-tip-row",
|
|
@@ -1517,7 +1511,6 @@ header [data-dcu-title-folder] svg,header [data-dcu-title-more] svg{display:bloc
|
|
|
1517
1511
|
}),
|
|
1518
1512
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
1519
1513
|
className: "dcu-wb-project-title",
|
|
1520
|
-
title: workspace.path,
|
|
1521
1514
|
children: workspace.title
|
|
1522
1515
|
}),
|
|
1523
1516
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
@@ -1669,7 +1662,6 @@ header [data-dcu-title-folder] svg,header [data-dcu-title-more] svg{display:bloc
|
|
|
1669
1662
|
pinnedSessionIds.includes(id) && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
1670
1663
|
className: "dcu-wb-pin",
|
|
1671
1664
|
"aria-label": t("sessions.pinned"),
|
|
1672
|
-
title: t("sessions.pinned"),
|
|
1673
1665
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
|
|
1674
1666
|
viewBox: "0 0 16 16",
|
|
1675
1667
|
"aria-hidden": "true",
|
|
@@ -1689,7 +1681,6 @@ header [data-dcu-title-folder] svg,header [data-dcu-title-more] svg{display:bloc
|
|
|
1689
1681
|
type: "button",
|
|
1690
1682
|
className: "dcu-wb-more dcu-wb-quick-pin",
|
|
1691
1683
|
"aria-label": t(pinnedSessionIds.includes(id) ? "sessions.unpin" : "sessions.pin"),
|
|
1692
|
-
title: t(pinnedSessionIds.includes(id) ? "sessions.unpin" : "sessions.pin"),
|
|
1693
1684
|
onClick: (event) => {
|
|
1694
1685
|
event.stopPropagation();
|
|
1695
1686
|
setPinnedSessionIds((ids) => toggleSessionId(ids, id));
|
|
@@ -1703,7 +1694,6 @@ header [data-dcu-title-folder] svg,header [data-dcu-title-more] svg{display:bloc
|
|
|
1703
1694
|
type: "button",
|
|
1704
1695
|
className: "dcu-wb-more",
|
|
1705
1696
|
"aria-label": t("sessions.archive"),
|
|
1706
|
-
title: t("sessions.archive"),
|
|
1707
1697
|
onClick: (event) => {
|
|
1708
1698
|
event.stopPropagation();
|
|
1709
1699
|
run("archive", () => archiveSession(id));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@michengai/dsh-codex-ui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.56",
|
|
4
4
|
"description": "以 Codex 风格重构 DSH Web 侧栏的独立客户端插件",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -51,10 +51,6 @@
|
|
|
51
51
|
"platform": "web"
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
|
-
"scripts": {
|
|
55
|
-
"build": "tsc --noEmit && tsdown",
|
|
56
|
-
"test": "tsx tests/permission-i18n.assert.ts && tsx tests/hover-tip.assert.ts && tsx tests/companion-slots.assert.ts && tsx tests/channel-api.assert.ts && tsx tests/schedule-sessions.assert.ts && tsx tests/session-tree.assert.ts && tsx tests/pinned-sessions.assert.ts && tsx tests/session-manager.assert.ts && tsx tests/workspace-browser.assert.ts && tsx tests/sidebar-search.assert.ts && tsx tests/settings-navigation.assert.ts && tsx tests/settings-nav-icons.assert.ts && tsx tests/locales.assert.ts && vitest run tests/client-runtime.integration.spec.ts && tsx tests/settings-integration.assert.ts && tsx tests/about-dependencies.assert.ts && tsx tests/dependency-manager.assert.ts && tsx tests/conversation-bubbles.assert.ts && tsx tests/conversation-header.assert.ts && tsx tests/conversation-visuals.assert.ts && tsdown && tsx tests/client-bundle.assert.ts && tsx tests/codex-suite.assert.ts"
|
|
57
|
-
},
|
|
58
54
|
"peerDependencies": {
|
|
59
55
|
"@deepseek-ai/cordis": ">=4.0.1 <5.0.0",
|
|
60
56
|
"@deepseek-ai/dsh-client-locale": ">=0.1.0-rc.0 <0.2.0",
|
|
@@ -100,5 +96,9 @@
|
|
|
100
96
|
"tsx": "^4.22.4",
|
|
101
97
|
"typescript": "^6.0.3",
|
|
102
98
|
"vitest": "^4.1.8"
|
|
99
|
+
},
|
|
100
|
+
"scripts": {
|
|
101
|
+
"build": "tsc --noEmit && tsdown",
|
|
102
|
+
"test": "tsx tests/permission-i18n.assert.ts && tsx tests/hover-tip.assert.ts && tsx tests/companion-slots.assert.ts && tsx tests/channel-api.assert.ts && tsx tests/schedule-sessions.assert.ts && tsx tests/session-tree.assert.ts && tsx tests/pinned-sessions.assert.ts && tsx tests/session-manager.assert.ts && tsx tests/workspace-browser.assert.ts && tsx tests/sidebar-search.assert.ts && tsx tests/settings-navigation.assert.ts && tsx tests/settings-nav-icons.assert.ts && tsx tests/locales.assert.ts && vitest run tests/client-runtime.integration.spec.ts && tsx tests/settings-integration.assert.ts && tsx tests/about-dependencies.assert.ts && tsx tests/dependency-manager.assert.ts && tsx tests/conversation-bubbles.assert.ts && tsx tests/conversation-header.assert.ts && tsx tests/conversation-visuals.assert.ts && tsdown && tsx tests/client-bundle.assert.ts && tsx tests/codex-suite.assert.ts"
|
|
103
103
|
}
|
|
104
|
-
}
|
|
104
|
+
}
|