@h-ai/cli 0.1.0-alpha.54 → 0.1.0-alpha.56
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 +4 -0
- package/dist/{chunk-FVDXJYMO.js → chunk-O3ANVICQ.js} +31 -2
- package/dist/chunk-O3ANVICQ.js.map +1 -0
- package/dist/cli-config-templates-OWBEGBZQ.js +5 -0
- package/dist/{cli-config-templates-WGN2I23J.js.map → cli-config-templates-OWBEGBZQ.js.map} +1 -1
- package/dist/index.js +3 -3
- package/dist/{src-6ZBWDBUB.js → src-TBIET7YU.js} +908 -127
- package/dist/src-TBIET7YU.js.map +1 -0
- package/package.json +7 -7
- package/templates/base/.gitignore.hbs +3 -0
- package/templates/base/package.json.hbs +1 -1
- package/templates/skills/AGENTS.md +8 -22
- package/templates/skills/CLAUDE.md +3 -16
- package/templates/skills/bridges/admin/AGENTS.md +3 -16
- package/templates/skills/bridges/admin/CLAUDE.md +3 -11
- package/templates/skills/bridges/admin/copilot-instructions.md +2 -39
- package/templates/skills/bridges/api/AGENTS.md +5 -18
- package/templates/skills/bridges/api/CLAUDE.md +3 -11
- package/templates/skills/bridges/api/copilot-instructions.md +3 -38
- package/templates/skills/bridges/fullstack/AGENTS.md.hbs +24 -59
- package/templates/skills/bridges/fullstack/CLAUDE.md.hbs +1 -15
- package/templates/skills/bridges/fullstack/copilot-instructions.md.hbs +5 -45
- package/templates/skills/bridges/h5/AGENTS.md +4 -17
- package/templates/skills/bridges/h5/CLAUDE.md +3 -11
- package/templates/skills/bridges/h5/copilot-instructions.md +2 -37
- package/templates/skills/bridges/mobile-app/AGENTS.md +5 -18
- package/templates/skills/bridges/mobile-app/CLAUDE.md +3 -11
- package/templates/skills/bridges/mobile-app/copilot-instructions.md +2 -38
- package/templates/skills/bridges/website/AGENTS.md +4 -17
- package/templates/skills/bridges/website/CLAUDE.md +3 -11
- package/templates/skills/bridges/website/copilot-instructions.md +2 -37
- package/templates/skills/copilot-instructions.md +2 -36
- package/templates/skills/hai-ai/SKILL.md +35 -389
- package/templates/skills/hai-ai/guide.md +383 -0
- package/templates/skills/hai-ai/reference.md +1 -1
- package/templates/skills/hai-api-client/SKILL.md +6 -6
- package/templates/skills/hai-api-contract/SKILL.md +10 -25
- package/templates/skills/hai-app-create/SKILL.md +29 -388
- package/templates/skills/hai-app-create/reference.md +350 -0
- package/templates/skills/hai-app-review/SKILL.md +9 -23
- package/templates/skills/hai-app-tests/SKILL.md +29 -494
- package/templates/skills/hai-app-tests/reference.md +442 -0
- package/templates/skills/hai-audit/SKILL.md +6 -6
- package/templates/skills/hai-build/SKILL.md +19 -338
- package/templates/skills/hai-build/reference.md +326 -0
- package/templates/skills/hai-cache/SKILL.md +27 -32
- package/templates/skills/hai-capacitor/SKILL.md +19 -366
- package/templates/skills/hai-capacitor/reference.md +352 -0
- package/templates/skills/hai-ci/SKILL.md +6 -21
- package/templates/skills/hai-core/SKILL.md +25 -566
- package/templates/skills/hai-core/reference.md +533 -0
- package/templates/skills/hai-crypto/SKILL.md +6 -20
- package/templates/skills/hai-datapipe/SKILL.md +9 -23
- package/templates/skills/hai-deploy/SKILL.md +63 -25
- package/templates/skills/hai-framework-sync/SKILL.md +8 -20
- package/templates/skills/hai-iam/SKILL.md +27 -371
- package/templates/skills/hai-iam/reference.md +343 -0
- package/templates/skills/hai-kit/SKILL.md +6 -6
- package/templates/skills/hai-payment/SKILL.md +6 -26
- package/templates/skills/hai-pr-review/SKILL.md +6 -22
- package/templates/skills/hai-reach/SKILL.md +19 -317
- package/templates/skills/hai-reach/reference.md +303 -0
- package/templates/skills/hai-reldb/SKILL.md +19 -472
- package/templates/skills/hai-reldb/reference.md +452 -0
- package/templates/skills/hai-scheduler/SKILL.md +6 -6
- package/templates/skills/hai-serv/SKILL.md +27 -759
- package/templates/skills/hai-serv/reference.md +736 -0
- package/templates/skills/hai-storage/SKILL.md +7 -25
- package/templates/skills/hai-ui/SKILL.md +29 -625
- package/templates/skills/hai-ui/reference.md +598 -0
- package/templates/skills/hai-vecdb/SKILL.md +18 -303
- package/templates/skills/hai-vecdb/reference.md +291 -0
- package/dist/chunk-FVDXJYMO.js.map +0 -1
- package/dist/cli-config-templates-WGN2I23J.js +0 -5
- package/dist/src-6ZBWDBUB.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hai-datapipe
|
|
3
|
-
description: 使用 @h-ai/datapipe
|
|
3
|
+
description: "使用 @h-ai/datapipe 清洗文本、分块并组合 RAG 入库管线。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# hai-datapipe
|
|
@@ -9,22 +9,18 @@ description: 使用 @h-ai/datapipe 进行文本清洗(HTML/URL/空白移除)
|
|
|
9
9
|
|
|
10
10
|
| 项目 | 契约 |
|
|
11
11
|
| --- | --- |
|
|
12
|
-
| 能力 | 使用 @h-ai/datapipe
|
|
13
|
-
| 适用场景 |
|
|
14
|
-
| 输入 |
|
|
15
|
-
| 输出 |
|
|
16
|
-
| 限制 |
|
|
12
|
+
| 能力 | 使用 @h-ai/datapipe 清洗文本、分块并组合 RAG 入库管线 |
|
|
13
|
+
| 适用场景 | 文档进入检索/知识库前的文本预处理 |
|
|
14
|
+
| 输入 | 文本、清洗/分块选项、管线步骤 |
|
|
15
|
+
| 输出 | 清洗/分块的 HaiResult;管线工厂按签名使用 |
|
|
16
|
+
| 限制 | 纯函数,无 init/close;区分字符数和模型 token 数,分块结果不等于已生成 embedding。 |
|
|
17
17
|
|
|
18
18
|
> `@h-ai/datapipe` 提供文本清洗(clean)、多模式分块(chunk)和可组合管线(pipeline),纯函数模块,无需初始化。
|
|
19
19
|
|
|
20
|
-
---
|
|
21
|
-
|
|
22
20
|
## 运行环境
|
|
23
21
|
|
|
24
22
|
> **服务端模块(Node.js only)。** 通常在 AI 知识库入库或文档预处理场景中使用,由 `@h-ai/ai` 内部调用或在服务端显式调用。
|
|
25
23
|
|
|
26
|
-
---
|
|
27
|
-
|
|
28
24
|
## 适用场景
|
|
29
25
|
|
|
30
26
|
- 文本清洗:移除 HTML 标签、URL、Email,标准化空白
|
|
@@ -32,8 +28,6 @@ description: 使用 @h-ai/datapipe 进行文本清洗(HTML/URL/空白移除)
|
|
|
32
28
|
- RAG 入库前的文档预处理管线
|
|
33
29
|
- 管线模式组合多步清洗 + 分块 + 自定义转换
|
|
34
30
|
|
|
35
|
-
---
|
|
36
|
-
|
|
37
31
|
## 使用步骤
|
|
38
32
|
|
|
39
33
|
### 直接调用(无需 init)
|
|
@@ -63,13 +57,11 @@ if (result.success) {
|
|
|
63
57
|
}
|
|
64
58
|
```
|
|
65
59
|
|
|
66
|
-
---
|
|
67
|
-
|
|
68
60
|
## 核心 API
|
|
69
61
|
|
|
70
62
|
### 清洗 — `datapipe.clean`
|
|
71
63
|
|
|
72
|
-
```
|
|
64
|
+
```text
|
|
73
65
|
datapipe.clean(text: string, options?: CleanOptionsInput): HaiResult<string>
|
|
74
66
|
```
|
|
75
67
|
|
|
@@ -86,7 +78,7 @@ datapipe.clean(text: string, options?: CleanOptionsInput): HaiResult<string>
|
|
|
86
78
|
|
|
87
79
|
### 分块 — `datapipe.chunk`
|
|
88
80
|
|
|
89
|
-
```
|
|
81
|
+
```text
|
|
90
82
|
datapipe.chunk(text: string, options: ChunkOptionsInput): HaiResult<DataChunk[]>
|
|
91
83
|
```
|
|
92
84
|
|
|
@@ -127,7 +119,7 @@ interface DataChunk {
|
|
|
127
119
|
|
|
128
120
|
```typescript
|
|
129
121
|
datapipe.pipeline()
|
|
130
|
-
.clean(options
|
|
122
|
+
.clean(options) // 添加清洗步骤
|
|
131
123
|
.transform(fn) // 添加文本转换步骤(同步/异步)
|
|
132
124
|
.chunk(options) // 添加分块步骤
|
|
133
125
|
.chunkTransform(fn) // 添加分块后处理步骤
|
|
@@ -143,8 +135,6 @@ interface PipelineResult {
|
|
|
143
135
|
}
|
|
144
136
|
```
|
|
145
137
|
|
|
146
|
-
---
|
|
147
|
-
|
|
148
138
|
## 错误码 — `HaiDatapipeError`
|
|
149
139
|
|
|
150
140
|
| 错误码 | code | 说明 |
|
|
@@ -156,8 +146,6 @@ interface PipelineResult {
|
|
|
156
146
|
| `HaiDatapipeError.CONFIG_ERROR` | `hai:datapipe:005` | 配置错误 |
|
|
157
147
|
| `HaiDatapipeError.MISSING_SEPARATOR` | `hai:datapipe:006` | 自定义分隔符缺失 |
|
|
158
148
|
|
|
159
|
-
---
|
|
160
|
-
|
|
161
149
|
## 常见模式
|
|
162
150
|
|
|
163
151
|
### RAG 文档入库前处理
|
|
@@ -221,8 +209,6 @@ if (!result.success) {
|
|
|
221
209
|
}
|
|
222
210
|
```
|
|
223
211
|
|
|
224
|
-
---
|
|
225
|
-
|
|
226
212
|
## 相关 Skills
|
|
227
213
|
|
|
228
214
|
- `hai-vecdb`:向量数据库存储(分块后入库)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hai-deploy
|
|
3
|
-
description: 使用 @h-ai/deploy
|
|
3
|
+
description: "使用 @h-ai/deploy 部署应用:Vercel 云平台或 docker-ssh 容器化部署到任意 Linux 主机,并按需开通/生成基础设施。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# hai-deploy
|
|
@@ -11,32 +11,30 @@ description: 使用 @h-ai/deploy 进行自动化部署:Vercel 部署 + 基础
|
|
|
11
11
|
|
|
12
12
|
| 项目 | 契约 |
|
|
13
13
|
| --- | --- |
|
|
14
|
-
| 能力 | 使用 @h-ai/deploy
|
|
15
|
-
| 适用场景 |
|
|
16
|
-
| 输入 |
|
|
17
|
-
| 输出 |
|
|
18
|
-
| 限制 |
|
|
14
|
+
| 能力 | 使用 @h-ai/deploy 部署应用:Vercel 云平台或 docker-ssh 容器化部署到任意 Linux 主机 |
|
|
15
|
+
| 适用场景 | 部署目标配置、云资源开通、SSH 主机容器部署或部署故障排查 |
|
|
16
|
+
| 输入 | 项目构建产物、部署目标(vercel / docker-ssh)、环境配置与凭据引用 |
|
|
17
|
+
| 输出 | 部署/资源操作结果和可验证的目标状态(含访问 URL 与健康检查) |
|
|
18
|
+
| 限制 | 核对实际 provider 与应用运行时;开通收费资源、发布或删除必须在用户授权范围内,凭据不写入仓库。 |
|
|
19
19
|
|
|
20
|
-
> `@h-ai/deploy`
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
> `@h-ai/deploy` 提供两种部署方式:
|
|
21
|
+
> 1. **vercel** — 将 SvelteKit(adapter-vercel)应用部署到 Vercel,并自动开通 Neon/Upstash/R2/Resend/阿里云等云基础设施;
|
|
22
|
+
> 2. **docker-ssh** — 将 SvelteKit(adapter-node)应用容器化后经 SSH 部署到任意具备 docker/podman + compose 的 Linux 主机,按所选功能自动生成 compose sidecar。
|
|
23
23
|
|
|
24
24
|
## 运行环境
|
|
25
25
|
|
|
26
26
|
> ⚠️ **Node.js CLI / 服务端模块。** 通过 `hai deploy` CLI 命令或在 Node.js 脚本中使用。
|
|
27
|
-
|
|
28
|
-
---
|
|
27
|
+
> docker-ssh 方式要求本地安装 docker 或 podman(`auto` 优先 podman)。
|
|
29
28
|
|
|
30
29
|
## 适用场景
|
|
31
30
|
|
|
32
31
|
- 一键部署 SvelteKit 应用到 Vercel
|
|
33
|
-
-
|
|
32
|
+
- 容器化后经 SSH 部署到自有服务器 / 云主机 / 内网虚拟机(docker-ssh)
|
|
33
|
+
- 自动开通 PostgreSQL、Redis、S3 等云服务,或按功能生成自建 sidecar
|
|
34
34
|
- 管理部署凭证(~/.hai/credentials.yml)
|
|
35
35
|
- 扫描应用依赖,自动检测所需服务
|
|
36
36
|
- CLI 部署流程(`hai deploy`)
|
|
37
37
|
|
|
38
|
-
---
|
|
39
|
-
|
|
40
38
|
## 使用步骤
|
|
41
39
|
|
|
42
40
|
### 1. 配置
|
|
@@ -75,6 +73,49 @@ services:
|
|
|
75
73
|
这些凭证名由 `deploy.credentials` 管理,属于显式特殊映射;若同时设置
|
|
76
74
|
`HAI_DEPLOY_PROVIDER_TOKEN` 等约定变量,约定变量仍拥有最高优先级。
|
|
77
75
|
|
|
76
|
+
#### docker-ssh 配置
|
|
77
|
+
|
|
78
|
+
将上面的 `provider` 替换为 docker-ssh(远程主机需 SSH + docker/podman + compose):
|
|
79
|
+
|
|
80
|
+
```yaml
|
|
81
|
+
# config/_deploy.yml
|
|
82
|
+
provider:
|
|
83
|
+
type: docker-ssh
|
|
84
|
+
ssh:
|
|
85
|
+
host: ${HAI_DEPLOY_SSH_HOST}
|
|
86
|
+
port: 22
|
|
87
|
+
username: deploy
|
|
88
|
+
identityFile: ${HAI_DEPLOY_SSH_KEY} # 私钥文件路径,省略则用 ssh-agent
|
|
89
|
+
remote:
|
|
90
|
+
baseDir: /opt/hai/apps
|
|
91
|
+
runtime: auto # auto 优先 podman,其次 docker
|
|
92
|
+
expose:
|
|
93
|
+
type: port
|
|
94
|
+
containerPort: 3000
|
|
95
|
+
hostPort: 18080 # 访问地址 http://<host>:18080
|
|
96
|
+
|
|
97
|
+
container:
|
|
98
|
+
runtime: auto # 本地构建运行时,可选
|
|
99
|
+
|
|
100
|
+
services:
|
|
101
|
+
# 启用的服务会被加入远程 compose sidecar(postgres/redis/minio)
|
|
102
|
+
# 若配置了云 Provisioner(如 neon),则优先用云资源,不再自建 sidecar
|
|
103
|
+
db:
|
|
104
|
+
provisioner: neon
|
|
105
|
+
apiKey: ${HAI_DEPLOY_NEON_API_KEY}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
docker-ssh 要点:
|
|
109
|
+
|
|
110
|
+
- 应用镜像使用工程自带的 `Dockerfile`(`@sveltejs/adapter-node`),缺少 adapter-node 会返回 `ADAPTER_MISSING`
|
|
111
|
+
- compose 按 `deploy.scan()` 识别的服务**及其后端类型**生成匹配 sidecar 并注入 `HAI_*` 覆盖变量:
|
|
112
|
+
- `db`:`postgresql`→postgres、`mysql`→mysql、`sqlite`→数据卷(无 sidecar)→ `HAI_DB`
|
|
113
|
+
- `cache`:`redis`→redis → `HAI_CACHE`;`storage`:`s3`→minio → `HAI_STORAGE`
|
|
114
|
+
- `vecdb`:`qdrant`/`pgvector`/`chroma`→对应 sidecar、`lancedb`→数据卷 → `HAI_VECDB`
|
|
115
|
+
- 若同一服务已配置云 Provisioner(如 neon 提供 `HAI_DB`),优先用云资源,不再自建 sidecar
|
|
116
|
+
- sidecar 密码等敏感值只写入远程 `.env.runtime`(权限 600),不入 `compose.yml`
|
|
117
|
+
- `identityFile` 是私钥**路径**(非私钥内容);禁止把私钥内容写进 `_deploy.yml`
|
|
118
|
+
|
|
78
119
|
### 2. 初始化与关闭
|
|
79
120
|
|
|
80
121
|
```typescript
|
|
@@ -128,8 +169,6 @@ if (result.success) {
|
|
|
128
169
|
}
|
|
129
170
|
```
|
|
130
171
|
|
|
131
|
-
---
|
|
132
|
-
|
|
133
172
|
## 核心 API
|
|
134
173
|
|
|
135
174
|
| 方法 | 签名 | 说明 |
|
|
@@ -146,16 +185,12 @@ if (result.success) {
|
|
|
146
185
|
| `deploy.config` | `DeployConfig \| null` | 当前配置 |
|
|
147
186
|
| `deploy.isInitialized` | `boolean` | 初始化状态 |
|
|
148
187
|
|
|
149
|
-
---
|
|
150
|
-
|
|
151
188
|
## 凭证管理
|
|
152
189
|
|
|
153
190
|
所有凭证操作都通过 `deploy.credentials.*` 访问,模块入口不再单独导出自由函数。
|
|
154
191
|
|
|
155
192
|
> `deploy.credentials.*()` 与 `deploy.scan()` 都不依赖 `deploy.init()`,可用于 CLI 在读取 `_deploy.yml` 之前准备环境。
|
|
156
193
|
|
|
157
|
-
---
|
|
158
|
-
|
|
159
194
|
## 错误码 — `HaiDeployError`
|
|
160
195
|
|
|
161
196
|
| 错误码 | code | 说明 |
|
|
@@ -174,8 +209,12 @@ if (result.success) {
|
|
|
174
209
|
| `HaiDeployError.UNSUPPORTED_TYPE` | `hai:deploy:012` | 不支持的类型 |
|
|
175
210
|
| `HaiDeployError.CONFIG_ERROR` | `hai:deploy:013` | 配置错误 |
|
|
176
211
|
| `HaiDeployError.CREDENTIAL_ERROR` | `hai:deploy:014` | 凭证读写失败 |
|
|
177
|
-
|
|
178
|
-
|
|
212
|
+
| `HaiDeployError.CONTAINER_RUNTIME_NOT_FOUND` | `hai:deploy:015` | 未找到容器运行时 |
|
|
213
|
+
| `HaiDeployError.CONTAINER_BUILD_FAILED` | `hai:deploy:016` | 镜像构建失败 |
|
|
214
|
+
| `HaiDeployError.REMOTE_CONNECT_FAILED` | `hai:deploy:017` | 远程连接失败 |
|
|
215
|
+
| `HaiDeployError.REMOTE_COMMAND_FAILED` | `hai:deploy:018` | 远程命令失败 |
|
|
216
|
+
| `HaiDeployError.IMAGE_TRANSFER_FAILED` | `hai:deploy:019` | 镜像传输失败 |
|
|
217
|
+
| `HaiDeployError.HEALTH_CHECK_FAILED` | `hai:deploy:020` | 健康检查未通过 |
|
|
179
218
|
|
|
180
219
|
## CLI 命令
|
|
181
220
|
|
|
@@ -196,7 +235,8 @@ hai deploy --skip-build
|
|
|
196
235
|
hai deploy --project-name my-custom-name
|
|
197
236
|
```
|
|
198
237
|
|
|
199
|
-
|
|
238
|
+
> 部署方式由 `config/_deploy.yml` 的 `provider.type` 决定(vercel / docker-ssh),
|
|
239
|
+
> CLI 命令相同。docker-ssh 成功后输出的访问地址为 `http://<host>:<hostPort>`。
|
|
200
240
|
|
|
201
241
|
## 常见模式
|
|
202
242
|
|
|
@@ -229,8 +269,6 @@ await deploy.init({
|
|
|
229
269
|
const result = await deploy.deployApp('./apps/my-app')
|
|
230
270
|
```
|
|
231
271
|
|
|
232
|
-
---
|
|
233
|
-
|
|
234
272
|
## 相关 Skills
|
|
235
273
|
|
|
236
274
|
- **hai-core** — 配置加载、日志、HaiResult 类型
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: hai-framework-sync
|
|
3
|
-
description:
|
|
3
|
+
description: "同步 hai-framework 通用 skills、AI 入口与应用依赖,排查 npm/本地联调漂移。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# hai-framework-sync — hai-framework 与应用仓库同步规范
|
|
@@ -9,16 +9,14 @@ description: 管理 hai-framework 与应用仓库之间的依赖、技能模板
|
|
|
9
9
|
|
|
10
10
|
| 项目 | 契约 |
|
|
11
11
|
| --- | --- |
|
|
12
|
-
| 能力 |
|
|
13
|
-
| 适用场景 |
|
|
14
|
-
| 输入 |
|
|
15
|
-
| 输出 |
|
|
16
|
-
| 限制 |
|
|
12
|
+
| 能力 | 同步 hai-framework 通用 skills、AI 入口与应用依赖,排查 npm/本地联调漂移 |
|
|
13
|
+
| 适用场景 | 有明确源/目标仓库的模板或版本同步 |
|
|
14
|
+
| 输入 | 框架源目录、应用目录、版本、现有本地覆盖 |
|
|
15
|
+
| 输出 | 同步后的完整 skill 目录、入口及版本验证结果 |
|
|
16
|
+
| 限制 | 仅操作授权仓库;保留应用私有规则。先查 scripts,不假定 framework:* 联调命令存在;未发布行为不能当 npm 已支持。 |
|
|
17
17
|
|
|
18
18
|
> hai-framework 是能力与 skill 模板源头;应用仓库消费这些能力,并可以有少量项目本地覆盖。同步的目标是减少漂移,而不是把两个仓库混成一个仓库。
|
|
19
19
|
|
|
20
|
-
---
|
|
21
|
-
|
|
22
20
|
## 适用场景
|
|
23
21
|
|
|
24
22
|
- 修改 `.agents/skills/**`,且内容应成为所有 hai-framework 应用通用规范
|
|
@@ -28,8 +26,6 @@ description: 管理 hai-framework 与应用仓库之间的依赖、技能模板
|
|
|
28
26
|
- 排查应用仓库与 hai-framework npm 版本不一致
|
|
29
27
|
- 规划双仓 PR 或同步发布
|
|
30
28
|
|
|
31
|
-
---
|
|
32
|
-
|
|
33
29
|
## 同步原则
|
|
34
30
|
|
|
35
31
|
1. **通用规范先改 hai-framework**:可复用的 skill、模板、AI 工作流从 `packages/cli/templates/skills/` 起源。
|
|
@@ -38,8 +34,6 @@ description: 管理 hai-framework 与应用仓库之间的依赖、技能模板
|
|
|
38
34
|
4. **双仓改动要成套**:framework 模板、应用本地 `.agents/skills`、AGENTS/Copilot 路由同时更新。
|
|
39
35
|
5. **不复制敏感聊天记录**:只同步脱敏后的团队规则和流程。
|
|
40
36
|
|
|
41
|
-
---
|
|
42
|
-
|
|
43
37
|
## 标准同步流程
|
|
44
38
|
|
|
45
39
|
### 1. 判断来源
|
|
@@ -57,7 +51,7 @@ description: 管理 hai-framework 与应用仓库之间的依赖、技能模板
|
|
|
57
51
|
|
|
58
52
|
### 3. 同步到应用仓库
|
|
59
53
|
|
|
60
|
-
|
|
54
|
+
把源头完整 skill 目录(含 reference.md 等被引用资源)复制到应用仓库 `.agents/skills/<skill>/`,并同步入口引用:
|
|
61
55
|
|
|
62
56
|
- `AGENTS.md`
|
|
63
57
|
- `.github/copilot-instructions.md`
|
|
@@ -70,7 +64,7 @@ description: 管理 hai-framework 与应用仓库之间的依赖、技能模板
|
|
|
70
64
|
|
|
71
65
|
- 仅模板 / skill 变更:检查 diff、入口引用与模板泛化程度。
|
|
72
66
|
- 同步到应用仓库:按 `hai-ci` 定义的质量门禁运行。
|
|
73
|
-
- 涉及 framework runtime
|
|
67
|
+
- 涉及 framework runtime 时,先确认应用 package.json 已定义下列脚本;没有时按 README 的本地联调方式操作:
|
|
74
68
|
|
|
75
69
|
```bash
|
|
76
70
|
pnpm framework:status
|
|
@@ -78,8 +72,6 @@ pnpm framework:use:local <package>
|
|
|
78
72
|
pnpm framework:watch <package>
|
|
79
73
|
```
|
|
80
74
|
|
|
81
|
-
---
|
|
82
|
-
|
|
83
75
|
## 漂移检查清单
|
|
84
76
|
|
|
85
77
|
- [ ] framework 模板和应用 `.agents/skills` 对同名 skill 内容一致,除非 PR 明确说明本地覆盖
|
|
@@ -89,8 +81,6 @@ pnpm framework:watch <package>
|
|
|
89
81
|
- [ ] 本地联调结束后可恢复 npm 模式
|
|
90
82
|
- [ ] README 或 PR 描述说明双仓改动顺序
|
|
91
83
|
|
|
92
|
-
---
|
|
93
|
-
|
|
94
84
|
## 禁止事项
|
|
95
85
|
|
|
96
86
|
- ❌ 只改应用 `.agents/skills`,忘记更新 hai-framework 模板中的通用规范
|
|
@@ -99,8 +89,6 @@ pnpm framework:watch <package>
|
|
|
99
89
|
- ❌ 把聊天记录原文、token、私有 URL 写入模板
|
|
100
90
|
- ❌ 双仓 PR 没有关联 issue 或同步说明
|
|
101
91
|
|
|
102
|
-
---
|
|
103
|
-
|
|
104
92
|
## 相关 Skills
|
|
105
93
|
|
|
106
94
|
- `hai-ci` — CI 对 npm/local framework 模式的验证策略
|