feat(cli): create profiles from shipped templates

This commit is contained in:
Turtle
2026-09-07 19:58:41 +08:00
parent c7e29f4b68
commit dd25e1e6b3
22 changed files with 314 additions and 31 deletions
+2 -2
View File
@@ -2,5 +2,5 @@
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write docs/user/develop/basic/publish.md
publish.md: 89a28e2e44a5171a3f5c48c003f5af5ec2e9e750
publish.zh.md: 590fee6f035af3009e25bf3669ba4321951f7d07
publish.md: 58abad728d5f684a72d855b77821a26a725de53f
publish.zh.md: dbb49c0cd0e5ca26e42d17d94acb5f1601a27d15
+1 -1
View File
@@ -70,7 +70,7 @@ A profile directory holds two files:
- `package.json` — the profile's out-of-tree plugin dependencies (managed by pnpm) plus the `dsh.profile` manifest with its ordered `bundles` list.
- `cordis.patch.yml` — the user's own patch layer, applied after every bundle layer.
You never write a profile manifest by hand: `dsh plugin` creates and maintains it. The next section shows the result.
You never write a profile manifest by hand: `dsh --profile <name> --from-default-profile <template>` can create one from a shipped application template, while `dsh plugin` creates a base-backed profile and maintains its installed bundle list. The [CLI behavior reference](../../../../apps/cli/reference/README.md#profile-boot) owns the creation rules; the next section shows the plugin path.
## Install into a profile
+1 -1
View File
@@ -70,7 +70,7 @@ profile 目录包含两个文件:
- `package.json` — profile 的树外插件依赖(由 pnpm 管理),加上 `dsh.profile` manifest 及其有序的 `bundles` 列表。
- `cordis.patch.yml` — 用户自己的 patch 层,在每个组合包层之后应用。
profile manifest 从不需要手写:`dsh plugin` 负责创建和维护它。下一节展示其结果
profile manifest 从不需要手写:`dsh --profile <name> --from-default-profile <template>` 可以从随附应用模板创建 profile,`dsh plugin` 则创建一个以 base 为基础的 profile,并维护其中已安装的 bundle 列表。创建规则以 [CLI(命令行界面)行为参考](../../../../apps/cli/reference/README.zh.md#profile-boot)为准;下一节展示插件路径
## 安装进 profile