feat(bundle): ship dsh-base, dsh-web-app, and dsh-headless profile bundles

Profile bundles are npm packages declaring dsh.patch in their manifest:
dsh-base carries the former base.cordis.yml rows as one insert over the empty
profile root; dsh-web-app carries the web overlay plus a runtime glue plugin
owning what used to be launcher code (frontend dist resolution via
frontend-static, the web-surface prompt section, bash runtime variables, the
readiness-gated URL line); dsh-headless carries the one-shot runner driving a
task turn through the in-process API carrier under the launcher-provided
ctx.headlessIo seam.
This commit is contained in:
Turtle
2026-08-06 04:40:11 +08:00
parent 2ee2ee2f96
commit 2365b2c54f
39 changed files with 2282 additions and 327 deletions

View File

@@ -0,0 +1,13 @@
# bundle/ — profile 插件组合包
[English](README.md) | 中文
Profile 组合包:在 manifest元数据清单中声明 `"dsh": { "patch": "./cordis.patch.yml" }` 的 npm 包,因此可作为 patch 层安装进 `dsh --profile` 组合([profile 契约](../ui/app-boot/README.md#profiles))。组合包的实体是它的 patch 列表;有些组合包还附带由其 patch 挂载的运行时粘合插件。
| 包 | 职责 | ctx key |
|---|---|---|
| [`base/`](base/README.md) | 每个 profile 最先应用的共享 dsh 核心 | —(仅 patch |
| [`web-app/`](web-app/README.md) | 浏览器表层web patch 层 + 运行时粘合插件 | 挂载多条配置行 |
| [`headless/`](headless/README.md) | 叠加在 base + web-app 之上的一次性任务模式 | 挂载 `headless-runner` |
内置组合包从 dsh 安装目录解析树外out-of-tree组合包通过 `dsh plugin --profile <name> add <package>` 安装进 profile。