dsh-quark 0.0.0-stage → 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 +21 -0
- package/README.md +314 -3
- package/cordis.patch.yml +12 -0
- package/icon.svg +14 -0
- package/lib/client.js +1512 -0
- package/lib/index.js +1177 -0
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +55 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 dsh-quark contributors
|
|
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
CHANGED
|
@@ -1,3 +1,314 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
# dsh-quark
|
|
2
|
+
|
|
3
|
+
把夸克网盘接进 DeepSeek Harness,以便agent直接调用网盘文件。左侧栏有主面板,会话右侧栏有标签页,agent 也能调用官方网盘工具。
|
|
4
|
+
|
|
5
|
+
插件不自带网盘 SDK,包装的是夸克官方的 [quarkclouddrive](https://b.quark.cn/apps/quarkcloud_skill_info/routes/V-sc7gOBT) Skill 里的 CLI。授权、签名、限流都交给官方工具,插件只把 CLI 变成可点的界面和 agent 能调的工具。
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
## 装上之后
|
|
10
|
+
|
|
11
|
+
| 位置 | 内容 |
|
|
12
|
+
| --- | --- |
|
|
13
|
+
| 左侧栏 → 夸克网盘 | 主面板:账号容量、逐级浏览、搜索、底栏 9 个操作 |
|
|
14
|
+
| 会话右侧栏 → 夸克网盘 | 同一个面板的窄版,聊天时翻文件、把文件引用进对话 |
|
|
15
|
+
| agent 工具 `quark_*` | 15 个工具,查环境、列目录、搜文件、下载、整理 |
|
|
16
|
+
|
|
17
|
+
两个入口各有一个显示开关,在插件详情页里。关掉左侧栏会把入口真的摘掉,不是隐藏。
|
|
18
|
+
|
|
19
|
+
## 能做什么
|
|
20
|
+
|
|
21
|
+
| 能力 | 怎么用 | 限制 |
|
|
22
|
+
| --- | --- | --- |
|
|
23
|
+
| 查找 | 面板顶部搜索框,或 `quark_search` / `quark_list_files` | 搜的是文件名,不是正文 |
|
|
24
|
+
| 引用到会话 | 文件行右侧的「引用到会话」 | 只是把文件名和 `fid` 写进对话框,读文件仍需 agent 自己做 |
|
|
25
|
+
| 解析内容 | `quark_summary` / `quark_qa`,或先下载再让 agent 读本地文件 | 前者需要 SVIP+,后者不限会员 |
|
|
26
|
+
|
|
27
|
+
「解析」不是插件自己解析文件格式,而是把文件交给夸克 AI 助手,或者交给对话里的 agent。
|
|
28
|
+
|
|
29
|
+
## 使用要求
|
|
30
|
+
|
|
31
|
+
- DeepSeek Harness(Web 或 desktop)。右侧栏标签页需要带右侧栏的版本,老版本只有左侧主面板。
|
|
32
|
+
- Node.js 18 或更高。
|
|
33
|
+
- 夸克网盘官方 Skill(插件不复制也不修改它,只调用里面的 `scripts/quark-drive.cjs`)。
|
|
34
|
+
- 夸克账号。文件浏览、上传下载、移动、分享、重命名不限会员等级;AI 总结、智能搜索、相册整理走夸克自己的 AI 能力,需要 SVIP+。
|
|
35
|
+
|
|
36
|
+
## 安装官方 Skill
|
|
37
|
+
|
|
38
|
+
插件不替你装 Skill。它是夸克官方发行的包,含账号授权流程,装好之后插件会自动找到并复用,以后升级或重装插件都不用再装。
|
|
39
|
+
|
|
40
|
+
官方页面:<https://b.quark.cn/apps/quarkcloud_skill_info/routes/V-sc7gOBT>
|
|
41
|
+
页面上的「下载 Skill」按钮给当前版本,旁边有安装指南。
|
|
42
|
+
|
|
43
|
+
**方式一:让 agent 装**
|
|
44
|
+
|
|
45
|
+
在对话里粘贴官方给的那段提示词:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
请安装 夸克网盘Skill,并授权账号
|
|
49
|
+
技能地址:https://pdds.quark.cn/download/stfile/eekkigineefiegmgo/quarkclouddrive-1.0.25.zip
|
|
50
|
+
授权码:CAC-***
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
agent 会按官方说明装好,再引导你完成账号授权。
|
|
54
|
+
|
|
55
|
+
**方式二:手动装**
|
|
56
|
+
|
|
57
|
+
下载官方 zip(页面按钮,或下面这个直链):
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
https://pdds.quark.cn/download/stfile/eekkigineefiegmgo/quarkclouddrive-1.0.25.zip
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
这个直链指向 1.0.25。要最新版用页面上的按钮。
|
|
64
|
+
|
|
65
|
+
把 zip 解压到 `<DSH_HOME>/skills/quarkclouddrive/`,解压后结构是:
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
<DSH_HOME>/skills/quarkclouddrive/
|
|
69
|
+
├── SKILL.md
|
|
70
|
+
├── references/ 12 个 .md
|
|
71
|
+
└── scripts/
|
|
72
|
+
├── quark-drive.cjs
|
|
73
|
+
├── install.sh
|
|
74
|
+
├── uninstall.sh
|
|
75
|
+
└── hash-worker.cjs
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
解压完 CLI 已经可用。再跑一次安装脚本做环境自检和版本对齐:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
cd <DSH_HOME>/skills/quarkclouddrive
|
|
82
|
+
bash scripts/install.sh
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
成功时返回 `{"type":"install_result","success":true,...}`。
|
|
86
|
+
|
|
87
|
+
以下两点容易踩:
|
|
88
|
+
|
|
89
|
+
1. `install.sh` 要在 Git Bash 或 WSL 里跑,不要用 PowerShell。脚本依赖 `curl`、`unzip`、`node`,PowerShell 的 PATH 里一般没有 `unzip`。Git for Windows 的 `C:\Program Files\Git\bin\bash.exe` 里三样都齐全。
|
|
90
|
+
2. 先解压 zip,再跑 `install.sh`。只把 `install.sh` 拷到空目录里跑,会因为找不到同级的 `quark-drive.cjs` 报 `CLI 入口文件不存在`,还会在 `scripts/` 下多套一层 `scripts/`。脚本靠「同目录有没有 `quark-drive.cjs`」判断这是首次安装还是升级。
|
|
91
|
+
|
|
92
|
+
验证:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
node <DSH_HOME>/skills/quarkclouddrive/scripts/quark-drive.cjs -V
|
|
96
|
+
node <DSH_HOME>/skills/quarkclouddrive/scripts/quark-drive.cjs get-user-info
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
第一条打印版本号,例如 `1.0.25-876f30d`;第二条打印昵称和容量。第二条如果返回 `{"code":-103,"msg":"未登录..."}`,说明 CLI 正常、只是还没授权,执行 `login` 或让 agent 引导即可。
|
|
100
|
+
|
|
101
|
+
**已经装过会怎样**
|
|
102
|
+
|
|
103
|
+
- 只装插件、Skill 已在:插件只做只读探测(`fs.statSync` 看文件在不在),不覆盖、不改动、不重装。
|
|
104
|
+
- 重复跑官方 `install.sh`:脚本幂等,已是最新版时返回 `{"success":true,"updated":false,"from_version":"1.0.25","to_version":"1.0.25"}`。
|
|
105
|
+
|
|
106
|
+
**装在别的位置**
|
|
107
|
+
|
|
108
|
+
- `DSH_QUARK_SKILL_DIR` 指向 skill 目录本身(它下面应有 `scripts/quark-drive.cjs`)
|
|
109
|
+
- `DSH_QUARK_CLI` 直接指向 `quark-drive.cjs`
|
|
110
|
+
|
|
111
|
+
**确认当前状态**
|
|
112
|
+
|
|
113
|
+
让 agent 调 `quark_check_env`,或看面板顶部提示。它会说明 Skill 装没装、版本、CLI 路径、账号授权状态。
|
|
114
|
+
|
|
115
|
+
官方 `install.sh` 要求 Node 16 以上,本插件要求 18 以上。装 18+ 两边都满足。
|
|
116
|
+
|
|
117
|
+
## 安装插件
|
|
118
|
+
|
|
119
|
+
**方式一:直接装打包好的 tgz**
|
|
120
|
+
|
|
121
|
+
不用先 clone,让 agent 执行:
|
|
122
|
+
|
|
123
|
+
```js
|
|
124
|
+
plugin_manager({
|
|
125
|
+
action: 'install_bundle',
|
|
126
|
+
target: 'https://github.com/Bennie96/dsh-quark/releases/latest/download/dsh-quark.tgz',
|
|
127
|
+
})
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
`latest` 会跟随最新发布版本。想钉住某个版本,把 `latest` 换成标签名:
|
|
131
|
+
|
|
132
|
+
```
|
|
133
|
+
https://github.com/Bennie96/dsh-quark/releases/download/v0.1.0/dsh-quark.tgz
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
这种装法把依赖写成一条 URL,和 `dsh-ima` 等插件的安装形态一致。
|
|
137
|
+
|
|
138
|
+
**方式二:clone 仓库后装本地目录**
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
git clone https://github.com/Bennie96/dsh-quark.git ~/dsh-quark
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
```js
|
|
145
|
+
plugin_manager({ action: 'install_bundle', target: '<~/dsh-quark 的绝对路径>' })
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
这种装法把依赖写成 `link:`,指向你本地那个目录。适合改代码的场景:改完重挂一次插件就生效,不用重新打包。代价是这个目录不能删、不能挪,否则插件会加载失败。
|
|
149
|
+
|
|
150
|
+
`install_bundle` 接受本地目录、URL、npm 包名三种 `target`。装完它会更新当前 profile 的 `package.json` 依赖,并把 `dsh-quark` 加进 `dsh.profile.bundles`。
|
|
151
|
+
|
|
152
|
+
装完一般当场生效,返回里有 `"application":"applied"`。如果左侧栏没出现云朵图标,让 agent 重挂一次:
|
|
153
|
+
|
|
154
|
+
```js
|
|
155
|
+
plugin_manager({ action: 'set_plugin', target: 'include:dsh-quark', enabled: false })
|
|
156
|
+
plugin_manager({ action: 'set_plugin', target: 'include:dsh-quark', enabled: true })
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
`set_plugin` 的 `target` 是 entryId `include:dsh-quark`,不是包名 `dsh-quark`。传包名会报 `unknown-plugin`。
|
|
160
|
+
|
|
161
|
+
还是没出现,按顺序看:
|
|
162
|
+
|
|
163
|
+
1. 插件详情页(设置 → 插件 → dsh-quark)里两个显示开关是不是关掉了。
|
|
164
|
+
2. 面板顶部有没有提示「还没装夸克网盘官方 Skill」。那是 Skill 没装,不是插件没装。
|
|
165
|
+
3. 让 agent 调 `quark_check_env`,Skill 路径、版本、授权状态会一次说清。
|
|
166
|
+
|
|
167
|
+
**卸载**
|
|
168
|
+
|
|
169
|
+
```js
|
|
170
|
+
plugin_manager({ action: 'remove_bundle', target: 'dsh-quark' })
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
卸载插件不影响官方 Skill,也不撤销夸克账号授权。
|
|
174
|
+
|
|
175
|
+
## 使用方法
|
|
176
|
+
|
|
177
|
+
### 浏览和搜索
|
|
178
|
+
|
|
179
|
+
点左侧栏图标进主面板,网盘根目录的内容会列出来。
|
|
180
|
+
|
|
181
|
+
- 进文件夹:点文件夹名
|
|
182
|
+
- 回上一级:顶部有一排路径(`我的网盘 / 资料 / 2026`),点任意一级跳回去
|
|
183
|
+
- 搜索:顶部搜索框按文件名搜,结果显示在「搜索结果」页签,切回「文件」页签回到当前目录
|
|
184
|
+
|
|
185
|
+
### 引用到会话
|
|
186
|
+
|
|
187
|
+
每个文件行右边有「引用到会话」和「复制名称」。引用到会话的行为取决你在哪个入口点:
|
|
188
|
+
|
|
189
|
+
| 入口 | 行为 |
|
|
190
|
+
| --- | --- |
|
|
191
|
+
| 右侧栏 | 直接写进当前对话框,AI 总结还会顺手发送 |
|
|
192
|
+
| 主面板 | 先弹框让你选「放到当前会话」还是「开一个新会话」,选完自动跳过去 |
|
|
193
|
+
|
|
194
|
+
### AI 总结
|
|
195
|
+
|
|
196
|
+
点「AI 总结」,插件不直接调夸克助手,而是把你的选择写成一段请求交给对话里的 agent:
|
|
197
|
+
|
|
198
|
+
- 选了文件:逐行列名字、大小、类型和 `fid`
|
|
199
|
+
- 没选:以当前文件夹为范围,让 agent 先看目录里有什么再总结
|
|
200
|
+
|
|
201
|
+
夸克助手接口经常返回 `-1501`(上游临时异常)或 `-1507`(5 分钟轮询超时,实测单篇 PDF 也可能超时)。在面板里等这种请求只能干等,交给 agent 则可以自己决定调 `quark_summary` 还是换方式读文件,也能跟你讨论。
|
|
202
|
+
|
|
203
|
+
点这个按钮本身不消耗会员权益,它只是往对话框里写字。真正调用 `quark_summary` / `quark_qa` 才需要 SVIP+。
|
|
204
|
+
|
|
205
|
+
### 解析文件内容
|
|
206
|
+
|
|
207
|
+
两条路都能用:
|
|
208
|
+
|
|
209
|
+
| 路线 | 怎么做 | 适合 | 代价 |
|
|
210
|
+
| --- | --- | --- | --- |
|
|
211
|
+
| 走夸克 AI 助手 | `quark_summary` 总结,`quark_qa` 提问,`fid_list` 单次不超过 100 | 不想下载到本机;批量看一批文件 | 需要 SVIP+;单篇 PDF 也可能跑满 5 分钟;遇到 `-1501` / `-1507` 要重试或缩小范围 |
|
|
212
|
+
| 下载后本地读 | `quark_download` 或用面板下载,再让 agent 读本机文件 | 要稳定、反复追问细节、跨文件比对 | 占本地空间;不受会员等级限制 |
|
|
213
|
+
|
|
214
|
+
夸克官方文档里提到过一个 `read-file` 命令,用来直接读文件内容,但当前随 Skill 发布的 CLI(v1.0.25)还没有这个子命令,执行会报 `unknown command 'read-file'`。所以插件没有包装它。
|
|
215
|
+
|
|
216
|
+
### 移动
|
|
217
|
+
|
|
218
|
+
点「移动」打开目录选择器,从根目录开始浏览,可以逐级进子目录、点路径回退,底部按钮写着你选中的目标(`移到「资料」`)。目标正好是文件当前所在目录时不会发请求,而是提示换一个。
|
|
219
|
+
|
|
220
|
+
### 其他底栏操作
|
|
221
|
+
|
|
222
|
+
- 上传:填本机绝对路径,一行一个
|
|
223
|
+
- 下载:默认落到系统「下载」文件夹(Windows 读注册表 Known Folder,macOS `~/Downloads`,Linux `$XDG_DOWNLOAD_DIR`)
|
|
224
|
+
- 分享:默认建私密链接带提取码,有效期永久
|
|
225
|
+
- 批量重命名:一行一个「原文件名 → 新文件名」,走官方 `rename`,30 天内可用原 batch ID 撤销
|
|
226
|
+
- 相册整理:一句话描述,例如「把去年在青岛拍的照片按地点整理」。默认复制,超过 500 个文件会二次确认复制还是移动。需要 SVIP+
|
|
227
|
+
- 整批归类:四步 `init → check → apply → undo`,任务目录默认在 `~/Documents/夸克整理记录`,撤回窗口 30 天
|
|
228
|
+
|
|
229
|
+
### 让 agent 用
|
|
230
|
+
|
|
231
|
+
装好后直接说人话:
|
|
232
|
+
|
|
233
|
+
> 看看我夸克网盘根目录有什么
|
|
234
|
+
> 把网盘里的「项目书.zip」下载下来
|
|
235
|
+
> 总结一下网盘里的 JCIS 那篇 PDF
|
|
236
|
+
> 把搜索结果里这几个文件批量重命名成 2026-01 开头的
|
|
237
|
+
|
|
238
|
+
agent 会自己选工具,15 个工具见下表。
|
|
239
|
+
|
|
240
|
+
## agent 工具
|
|
241
|
+
|
|
242
|
+
| 工具 | 用途 |
|
|
243
|
+
| --- | --- |
|
|
244
|
+
| `quark_check_env` | 自检:Skill 装没装、版本、CLI 路径、账号授权状态 |
|
|
245
|
+
| `quark_get_user_info` | 昵称、会员类型、容量、到期时间 |
|
|
246
|
+
| `quark_list_files` | 列目录直接子项,`parent_fid="0"` 为根 |
|
|
247
|
+
| `quark_search` | 关键词搜索,找文件夹传 `search_type="dir"` |
|
|
248
|
+
| `quark_create_folder` | 新建文件夹 |
|
|
249
|
+
| `quark_upload` | 上传本机文件或文件夹 |
|
|
250
|
+
| `quark_download` | 下载到本机,默认系统下载文件夹 |
|
|
251
|
+
| `quark_move` | 移动文件或文件夹 |
|
|
252
|
+
| `quark_share` | 创建分享链接,`url_type=2` 为带提取码的私密链接 |
|
|
253
|
+
| `quark_rename` | 批量重命名,1~5000 条一批,`revert` 撤销 |
|
|
254
|
+
| `quark_organize_album` | 相册整理,按人脸、地点、场景归类媒体,需要 SVIP+ |
|
|
255
|
+
| `quark_organize_files` | 整批归类四步:init / check / apply / undo |
|
|
256
|
+
| `quark_summary` / `quark_qa` | 夸克 AI 助手总结和问答,`fid_list` 不超过 100,需要 SVIP+ |
|
|
257
|
+
| `quark_login` | 登录授权 |
|
|
258
|
+
|
|
259
|
+
## 常见问题
|
|
260
|
+
|
|
261
|
+
**点引用提示「已填入」,但输入框里没内容**
|
|
262
|
+
DSH 输入框是 Lexical 受控编辑器,不是 textarea,改 DOM 会被覆盖。插件走宿主公开通道 `inputActions.insertText` → `setDraft` → `conversation` 服务 → 剪贴板,四级降级。都失败时退成剪贴板并提示你粘贴。
|
|
263
|
+
|
|
264
|
+
**右侧栏按钮提示「打不开,可能当前不在会话里」**
|
|
265
|
+
右侧栏要有一个屏上会话才能开。先在中间开一个对话,再点。
|
|
266
|
+
|
|
267
|
+
**面板提示找不到 Skill**
|
|
268
|
+
按上面「安装官方 Skill」装一次,装完不用重装插件,刷新页面即可。也可以用 `DSH_QUARK_SKILL_DIR` 指向已有安装。
|
|
269
|
+
|
|
270
|
+
**AI 总结一直卡住或报「上游助手服务异常」**
|
|
271
|
+
`-1501` 是夸克服务端临时问题,过几分钟重试;`-1507` 是 5 分钟没答完,缩小范围重试。非会员还会碰到会员提示,那是权益限制,不是故障。
|
|
272
|
+
|
|
273
|
+
**`{"code":-104,"msg":"无法识别当前 Agent 环境"}`**
|
|
274
|
+
官方 CLI 要求进程环境里有 `DSH_HOME` 或 `DSH_SESSION_ID`。插件在 `runCli` 里会补齐,看到这个错说明你是在插件外面手动跑的 CLI。
|
|
275
|
+
|
|
276
|
+
**搜索搜不到正文内容**
|
|
277
|
+
`quark_search` 搜文件名。按内容找可以用 `quark_qa` 对一批候选文件提问(需要 SVIP+),或下载后让 agent 读。
|
|
278
|
+
|
|
279
|
+
**能直接读网盘里 PDF / Word 的正文吗**
|
|
280
|
+
能,但走间接路线:`quark_summary` / `quark_qa` 让夸克 AI 助手解析(需要 SVIP+),或下载后由 agent 读本地文件。插件本身不做格式解析,官方 CLI 的 `read-file` 在 v1.0.25 里还不存在。
|
|
281
|
+
|
|
282
|
+
**左侧栏开关关掉后图标没消失**
|
|
283
|
+
刷新一次页面。槽位释放是即时的,但侧栏要重新渲染。
|
|
284
|
+
|
|
285
|
+
## 实现说明
|
|
286
|
+
|
|
287
|
+
插件分成后台和界面两块。
|
|
288
|
+
|
|
289
|
+
**后台(`lib/index.js`,跑在 Host 进程)**
|
|
290
|
+
|
|
291
|
+
- 包装 `quark-drive.cjs`。子进程用临时文件接 stdout 和 stderr,不用管道:既绕开 DSH 沙箱对 piped stdio 的限制,也吃得下大输出。
|
|
292
|
+
- 解析 CLI 的 NDJSON 协议,`type` 有 `result`、`progress`、`list`、`artifact`。
|
|
293
|
+
- 注册 15 个 `quark_*` 工具,以及 `/api/quark/*` 同源 HTTP 路由给面板用,绕开 CORS。
|
|
294
|
+
- 不注册 `agent/pre-step`。不在每轮对话里塞账号快照或文件清单,你提到网盘时才去查。
|
|
295
|
+
|
|
296
|
+
**界面(`lib/client.js`,跑在浏览器里)**
|
|
297
|
+
|
|
298
|
+
- `sidebar.panellist` 和 `main`:左侧栏入口和主面板,受开关控制,可装卸。
|
|
299
|
+
- `sidebarRightTabs.register` 配 `sidebar.right.pane.tab` 和 `.title`:右侧栏标签页。只注册正文不构成 tab,必须同时注册类型。
|
|
300
|
+
- `plugins.bundle.config`:插件详情页的两个开关。
|
|
301
|
+
- `conversation.input.left`:一个渲染 `null` 的桥组件,只为了拿到当前会话的 `inputActions`。
|
|
302
|
+
|
|
303
|
+
样式只用 `--dsw-alias-*` 主题 token,控件自己画,不动 `document.body`,资源都挂在 `ctx.effect` 上随插件卸载释放。
|
|
304
|
+
|
|
305
|
+
## 隐私
|
|
306
|
+
|
|
307
|
+
- 插件不收集、不上传任何数据,没有埋点。
|
|
308
|
+
- 授权凭据由官方 Skill 管理,存在 `<skill-dir>/deepseek/config.json`。插件只通过 CLI 间接使用,不读取也不复制。
|
|
309
|
+
- 面板里的账号信息(昵称、容量)每次从 CLI 现取,不落盘。
|
|
310
|
+
- 下载文件落到本机;上传只上传你明确指定的路径。
|
|
311
|
+
|
|
312
|
+
## 许可
|
|
313
|
+
|
|
314
|
+
MIT
|
package/cordis.patch.yml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# dsh-quark bundle patch
|
|
2
|
+
#
|
|
3
|
+
# Host 半(lib/index.js):
|
|
4
|
+
# · inject ['tools'] → 注册 quark_* agent 工具
|
|
5
|
+
# · inject ['webServer'] → 注册 /api/quark/* 路由(浏览器半同源调用)
|
|
6
|
+
# 浏览器半(lib/client.js):
|
|
7
|
+
# · sidebar.panellist → 「夸克网盘」入口
|
|
8
|
+
# · main → key 为 dsh-quark 的主区面板
|
|
9
|
+
#
|
|
10
|
+
- insert:
|
|
11
|
+
- id: dsh-quark
|
|
12
|
+
name: dsh-quark
|
package/icon.svg
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64" role="img" aria-label="Quark Drive">
|
|
2
|
+
<defs>
|
|
3
|
+
<linearGradient id="qk" x1="0" y1="0" x2="1" y2="1">
|
|
4
|
+
<stop offset="0" stop-color="#3d8bfd"/>
|
|
5
|
+
<stop offset="1" stop-color="#1f5fd0"/>
|
|
6
|
+
</linearGradient>
|
|
7
|
+
</defs>
|
|
8
|
+
<rect x="2" y="2" width="60" height="60" rx="14" fill="url(#qk)"/>
|
|
9
|
+
<path d="M18.5 40.5A9.2 9.2 0 0 1 19 22.2a11.8 11.8 0 0 1 22.6-2.6 8.5 8.5 0 0 1 1.6 16.6"
|
|
10
|
+
fill="none" stroke="#ffffff" stroke-width="3.6" stroke-linecap="round" stroke-linejoin="round"/>
|
|
11
|
+
<path d="M32 30.5v15.2" fill="none" stroke="#ffffff" stroke-width="3.6" stroke-linecap="round"/>
|
|
12
|
+
<path d="M26.4 40.4 32 46l5.6-5.6" fill="none" stroke="#ffffff" stroke-width="3.6"
|
|
13
|
+
stroke-linecap="round" stroke-linejoin="round"/>
|
|
14
|
+
</svg>
|