@dsh-workbench/core 0.1.9 → 0.1.11

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.
Files changed (42) hide show
  1. package/bin/dsh-workbench +23 -0
  2. package/client.js +609 -84
  3. package/cordis.patch.yml +11 -3
  4. package/dist/client/client.body.js +609 -84
  5. package/dist/client/index.js +610 -85
  6. package/dist/host/index.js +406 -276
  7. package/dist/types/app/client.d.ts +140 -6
  8. package/dist/types/app/layouts/rightbar/BoardEmpty.d.ts +2 -1
  9. package/dist/types/app/layouts/rightbar/Rightbar.d.ts +1 -0
  10. package/dist/types/app/layouts/rightbar/board-plan.d.ts +2 -0
  11. package/dist/types/app/layouts/sidebar/ProjectSwitcher.d.ts +2 -2
  12. package/dist/types/app/layouts/sidebar/Sidebar.d.ts +1 -1
  13. package/dist/types/app/layouts/sidebar/WorkspaceRenameDialog.d.ts +8 -0
  14. package/dist/types/app/layouts/sidebar/WorkspaceRowAction.d.ts +7 -0
  15. package/dist/types/app/layouts/sidebar/WorkspaceRowLabel.d.ts +8 -0
  16. package/dist/types/app/layouts/sidebar/WorkspaceSearchField.d.ts +9 -0
  17. package/dist/types/app/layouts/sidebar/__tests__/workspace-name.test.d.ts +1 -0
  18. package/dist/types/app/layouts/sidebar/workspace-items.d.ts +11 -0
  19. package/dist/types/app/layouts/sidebar/workspace-name.d.ts +16 -0
  20. package/dist/types/app/units/__tests__/registry.test.d.ts +1 -0
  21. package/dist/types/app/units/fixture-unit-mock.d.ts +3 -1
  22. package/dist/types/modules/panels/__tests__/approval.test.d.ts +1 -0
  23. package/dist/types/modules/panels/model/approval.d.ts +2 -0
  24. package/dist/types/shared/api/diy.d.ts +3 -0
  25. package/dist/types/shared/api/diy.test.d.ts +1 -0
  26. package/dist/types/shared/api/host/__tests__/approval-legacy.test.d.ts +1 -0
  27. package/dist/types/shared/api/host/approval-legacy.d.ts +2 -0
  28. package/dist/types/shared/api/host/diy.d.ts +3 -0
  29. package/dist/types/shared/api/host/diy.test.d.ts +1 -0
  30. package/dist/types/shared/api/host/mount-units.d.ts +13 -6
  31. package/dist/types/shared/hooks/mock-mode.d.ts +1 -0
  32. package/package.json +13 -5
  33. package/preset/diy.patch.yml +156 -0
  34. package/scripts/seed-profile.sh +116 -0
  35. package/skills/workbench-module-diy/BUILD.md +179 -0
  36. package/skills/workbench-module-diy/DESIGN.md +81 -0
  37. package/skills/workbench-module-diy/LINKAGE.md +113 -0
  38. package/skills/workbench-module-diy/PANEL.md +124 -0
  39. package/skills/workbench-module-diy/REVIEW.md +31 -0
  40. package/skills/workbench-module-diy/SKILL.md +54 -0
  41. package/skills/workbench-module-diy/STEPS.md +93 -0
  42. package/skills/workbench-module-diy/TOOLS.md +112 -0
package/bin/dsh-workbench CHANGED
@@ -214,6 +214,29 @@ fi
214
214
  # 而且从那里跑出来同样是隔离的。指向 profile 里那份,别指 npx 缓存(会回收)。
215
215
  OPENCLI_ROOT="$DSH_HOME/workbench/opencli"
216
216
  mkdir -p "$OPENCLI_ROOT/bin" "$OPENCLI_ROOT/home"
217
+
218
+ # DIY 工坊的目录必须**每次启动都在**:`cordis.patch.yml` 的 hmr 行把它列成一个监听根
219
+ # (工坊里的模块是被 link 进 profile 的仓外目录,Node 解析到的是工坊里的真路径,
220
+ # 所以不把它列进去,模块重建 dist/host.js 就不热换 —— 而且**不报错**)。
221
+ # chokidar 对不存在的根收不到事件,所以这里保住它,不必等用户重跑 setup。
222
+ # 只建目录:骨架与依赖是 seed-profile.sh 第 6 步的事。
223
+ mkdir -p "$DSH_HOME/workbench/diy/packages"
224
+
225
+ # 工坊**自己带着** DIY 的指引:软链到随包出货的那一份(本包的 `skills/workbench-module-diy/`)。
226
+ # 为什么放在这里、而不是靠 agent preset 的 `customSkillDirs`:DIY 会话的 cwd 就是工坊
227
+ # (会话 cwd 即沙箱边界),而 dsh 的 skill-filesystem 是从 **cwd 下的 `.agents/skills/`**
228
+ # 发现技能的 —— 本仓自己那条 `module-design` 就是这么被看见的。所以指引住进工坊,
229
+ # 进工坊的会话就天然看得见它,**不用去改用户任何默认设置**(改默认 preset 会连带把
230
+ # 用户后面新建的普通会话也变成 DIY 模式)。preset 留着,是给想**显式选模式**的用户,
231
+ # 额外带 tool-cordis 与 plugin-manager 两处增量。
232
+ # 软链而不是拷贝:指引只有一份(随包出货,字数与链接都有判据钉着),拷一份就是第二份真相。
233
+ # 先 rm -f 再建:包换过位置/名字之后,旧软链会变成死链 —— 而那是**不报错**的失败。
234
+ DIY_SKILLS="$DSH_HOME/workbench/diy/.agents/skills"
235
+ if [ -d "$REPO_DIR/skills/workbench-module-diy" ]; then
236
+ mkdir -p "$DIY_SKILLS"
237
+ rm -f "$DIY_SKILLS/workbench-module-diy"
238
+ ln -s "$REPO_DIR/skills/workbench-module-diy" "$DIY_SKILLS/workbench-module-diy"
239
+ fi
217
240
  # 稳定路径不直接软链到随包脚本:同上面那条 —— pnpm publish 之后
218
241
  # `bin/opencli-isolated` 是 644,软链过去一执行就是 Permission denied
219
242
  # (症状:启动体检永远说"隔离运行时没装好",而它其实是没权限跑)。