@dsh-workbench/core 1.1.12 → 1.1.14-beta.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/README.md +6 -3
- package/bin/seed-workshop-windows.mjs +10 -13
- package/client.js +186 -136
- package/dist/client/client.body.js +186 -136
- package/dist/client/index.js +186 -136
- package/dist/host/index.js +120 -49
- package/dist/types/app/client.d.ts +4 -1
- package/dist/types/app/layouts/env-gate/gate-text.d.ts +5 -0
- package/dist/types/kernel/contract/index.d.ts +2 -1
- package/dist/types/kernel/host/mount-units.d.ts +2 -1
- package/dist/types/shared/api/host/git-exec.d.ts +2 -2
- package/dist/types/shared/hooks/runtime-queries.d.ts +2 -1
- package/dist/types/shared/hooks/use-platform.d.ts +13 -0
- package/dist/types/shared/hooks/use-runtime-capabilities.d.ts +3 -1
- package/package.json +4 -4
- package/scripts/create-workbench.mjs +7 -4
- package/scripts/seed-workshop.sh +45 -7
- package/skills/workbench-module-diy/BUILD.md +33 -24
- package/skills/workbench-module-diy/DATASOURCE.md +3 -2
- package/skills/workbench-module-diy/FAMILY.md +1 -1
- package/skills/workbench-module-diy/FLOW.md +33 -7
- package/skills/workbench-module-diy/KIT.md +3 -1
- package/skills/workbench-module-diy/PANEL.md +7 -6
- package/skills/workbench-module-diy/REVIEW.md +9 -8
- package/skills/workbench-module-diy/SKILL.md +3 -2
- package/skills/workbench-module-diy/STEPS.md +1 -1
- package/skills/workbench-module-diy/TOOLS.md +56 -1
- package/skills/workbench-module-diy/WIRING.md +2 -0
- package/skills/workbench-module-diy/WRITES.md +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
工作台本体:一个 **DeepSeek Harness 插件**,给 dsh 换一层外壳 —— 左栏项目与会话、
|
|
4
4
|
中间常驻对话、右侧一列实时数据面板。dsh 本体一行不改,装与不装都只影响你自己的这份实例。
|
|
5
|
-
|
|
5
|
+
同仓的其他包(`shared` / `module-tools` / `module-hello` / `adapter-*` / `adapters-default`)是给**作者与实现者**的库、样本与适配器,
|
|
6
6
|
终端用户只会直接装这一个。
|
|
7
7
|
|
|
8
8
|
> 只想把它用起来?先看根目录的 [README](../../README.md):三种装法、界面长什么样、
|
|
@@ -89,14 +89,16 @@ dsh-workbench migrate --force # 已经迁过一次、想再补并一次
|
|
|
89
89
|
|
|
90
90
|
| 路径 | 是什么 |
|
|
91
91
|
|---|---|
|
|
92
|
-
| `dist/host/**` | 宿主侧入口(`exports["."]
|
|
92
|
+
| `dist/host/**` | 宿主侧入口(`exports["."]`);构建产物,不进 git |
|
|
93
|
+
| `dist/types/**` | 类型声明(`exports` 的 `types` 指向这里);构建产物,不进 git |
|
|
93
94
|
| `client.js` | 浏览器侧 bundle,dsh 客户端按 `dsh.client` 加载 |
|
|
94
95
|
| `cordis.patch.yml` | 把自己插进 profile 组合图的补丁(装载) |
|
|
95
96
|
| `preset/diy.patch.yml` | 「工作台 DIY 模式」的 preset;由 `scripts/gen-diy-preset.mjs` 从 dsh 出厂那份 `standard.patch.yml` 派生(生成后提交,selfcheck 盯过期) |
|
|
96
97
|
| `profile/` | 出厂 profile 模板:可写根那一行(启动器 `--patch` 用,seed 也抄进 profile) |
|
|
97
98
|
| `skills/` | 模块 DIY 指引,装好后挂给 agent;漏了不报错,只是 agent 不知道要怎么做模块 |
|
|
98
99
|
| `bin/` | `dsh-workbench` 启动器、隔离 opencli 的入口 |
|
|
99
|
-
| `scripts/` | 随包出货的脚本:`seed-profile.sh` / `seed-workshop.sh` / `create-workbench.mjs` / `clone-profile.mjs` / `share-data-root.mjs` |
|
|
100
|
+
| `scripts/` | 随包出货的脚本:`seed-profile.sh` / `seed-workshop.sh` / `create-workbench.mjs` / `clone-profile.mjs` / `share-data-root.mjs` / `patch-blocks.mjs` |
|
|
101
|
+
| `icon.svg` | 插件图标(dsh 插件页用) |
|
|
100
102
|
|
|
101
103
|
## 数据落在哪
|
|
102
104
|
|
|
@@ -166,6 +168,7 @@ dsh-workbench migrate --force # 已经迁过一次、想再补并一次
|
|
|
166
168
|
| 自检说「连接浏览器 · 还没连上」/ 面板取不到数据 | 扩展没装或没启用:从 [Chrome 应用商店](https://chromewebstore.google.com/detail/opencli/ildkmabpimmkaediidaifkhjpohdnifk)装 OpenCLI,在扩展页确认启用,保持浏览器开着,回「准备工作台」那一屏点「重试」。多个浏览器账号会要求先选默认的那个:按页面上给的那条命令做 |
|
|
167
169
|
| 体检说「连接浏览器 · 还没连上」,可面板照样能用 | 本机全局 opencli 与隔离运行时版本不一致,daemon 被顶成对方那版;下一条浏览器命令会自动把它重启回来,复检后改回「已连接」 |
|
|
168
170
|
| Desktop 里体检一直「没连上」 | 浏览器没开。「准备工作台」那一屏有「打开浏览器」,点了才开上次承载扩展的那个(没记住就用 Chrome),开完自动复检;点了会切到 Chrome 前台(冷启动抢焦点,静默做不到)。仍连不上多半是扩展没装或被禁用 |
|
|
171
|
+
| 准备页停住、说「命令行没有返回」 | 命令发出去了、结果没回来(宿主那边的子进程没起来,常见于 Windows 沙箱的残留锁文件)。完全退出工作台(托盘图标也要退),清掉系统临时目录里 `dsh-` 开头的残留,再打开;反复出现就升级 dsh 客户端。重装 Node / npm / pnpm 没用 —— 工具本身是好的 |
|
|
169
172
|
| 模型列表里只有出厂的几个、没有自己配的供应商 | 新 profile 不带设置。设置 → 工作台设置 → 配置同步 → 勾 `llm-` 那几行 → 同步 |
|
|
170
173
|
| 配置同步里某行说 `@x 还没装` | 那一行点名的包不在这个 profile 的 `node_modules` 里:`dsh plugin --profile workbench add @x`(或在模块市场装),装完 dsh 会自行重组,它报 `restartReason` 时才重启 |
|
|
171
174
|
| 启动被拒,说 dsh 太旧 | `npm i -g @deepseek-ai/dsh@latest`,装完重启工作台 |
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
2
|
+
import { execa } from 'execa';
|
|
3
3
|
import {
|
|
4
4
|
existsSync,
|
|
5
5
|
lstatSync,
|
|
@@ -250,20 +250,17 @@ function manifestCoreSpec() {
|
|
|
250
250
|
|
|
251
251
|
function install() {
|
|
252
252
|
say('装工坊依赖(第一次会下载 react / typescript / vitest)...');
|
|
253
|
-
return
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
child.on('error', (error) => {
|
|
253
|
+
return execa(pnpm, ['install'], {
|
|
254
|
+
cwd: diy,
|
|
255
|
+
stdio: 'inherit',
|
|
256
|
+
env: process.env,
|
|
257
|
+
reject: false,
|
|
258
|
+
})
|
|
259
|
+
.then((result) => result.exitCode ?? 1)
|
|
260
|
+
.catch((error) => {
|
|
262
261
|
say(`pnpm 没跑起来:${String(error)}`);
|
|
263
|
-
|
|
262
|
+
return 1;
|
|
264
263
|
});
|
|
265
|
-
child.on('close', (code) => resolve(code ?? 1));
|
|
266
|
-
});
|
|
267
264
|
}
|
|
268
265
|
|
|
269
266
|
const version = shellVersion();
|