DEEPSEEK HARNESS · OFFLINE TUTORIAL
03 · Profile / Bundle / Boot
DSH 如何被组装出来
1. 产品形态也是组合
运行中的 DSH 可以理解为一棵 Cordis plugin tree。Web、Headless 等形态不是靠巨大的 feature-flag 分支维持,而是由不同 bundle/profile 组合得到。
2. Bundle
Bundle 是一组插件及其配置的组合单位。
base
│
┌──────┴──────┐
│ │
web headless
3. Profile
Profile 更像一个具体 deployment:选择 bundle stack,并叠加自身 patch。
bundle 1
↓
bundle 2
↓
profile patch
↓
home patch
↓
CLI --patch overlay
4. dump-config 是架构 X 光
pnpm dsh --profile web --dump-config
重点看:有哪些插件、嵌套关系、哪些配置来自 bundle、profile 最后改了什么。
5. 启动链
CLI args
↓
resolve profile
↓
resolve bundles
↓
apply patch stack
↓
construct Cordis config
↓
Loader mounts plugin tree
↓
services appear
↓
application surface starts
6. 实操
- 执行
git rev-parse HEAD固定 commit。 - dump 两个 profile。
- 对比插件树。
- 回答:一个只在 Web 形态启用的插件应该在哪层组合?