补充skill描述
This commit is contained in:
parent
143cd76c6a
commit
f2df4df8b9
@ -73,7 +73,7 @@ description: 面向 PAM HOME/NODE 的智能部署 Skill。由 Skill 负责理解
|
|||||||
以下参数不一定写入 `config.txt`,但 Skill 需要掌握:
|
以下参数不一定写入 `config.txt`,但 Skill 需要掌握:
|
||||||
|
|
||||||
- `mode`: `MCP` 或 `API脚本`
|
- `mode`: `MCP` 或 `API脚本`
|
||||||
- `generateOnly`: 是否只生成文件不执行
|
- `showUsageOnly`: 是否只说明现有脚本用法而不执行
|
||||||
- `userSpecifiedIps`: 用户指定的目标 IP 子集
|
- `userSpecifiedIps`: 用户指定的目标 IP 子集
|
||||||
- `allOrNothing`: 是否要求全有或全无
|
- `allOrNothing`: 是否要求全有或全无
|
||||||
- `rollbackApproved`: 用户是否已确认回滚
|
- `rollbackApproved`: 用户是否已确认回滚
|
||||||
@ -213,57 +213,23 @@ description: 面向 PAM HOME/NODE 的智能部署 Skill。由 Skill 负责理解
|
|||||||
8. 脚本 action 输出以 `key=value` 为主,Agent 应优先读取这些结果行。
|
8. 脚本 action 输出以 `key=value` 为主,Agent 应优先读取这些结果行。
|
||||||
9. 遇到需要回滚的场景,脚本只返回 `PENDING_AGENT_CONFIRMATION(stopFirst=...)`,Agent 必须先确认。
|
9. 遇到需要回滚的场景,脚本只返回 `PENDING_AGENT_CONFIRMATION(stopFirst=...)`,Agent 必须先确认。
|
||||||
|
|
||||||
## 6. 接口约定
|
## 6. 脚本 action 能力
|
||||||
|
|
||||||
### 6.1 基础约定
|
|
||||||
|
|
||||||
- Node 侧路径统一使用 `node-proxy`
|
|
||||||
- Node 侧接口始终携带:
|
|
||||||
- `Authorization: Bearer {TOKEN}`
|
|
||||||
- `Target-Node: {NODE_URL}`
|
|
||||||
- `airport-code: {airportCode}` 仅在下载到 Node 等需要时携带
|
|
||||||
|
|
||||||
### 6.2 云下载接口
|
|
||||||
|
|
||||||
- 创建任务接口:
|
|
||||||
- `GET /api/mcp/version/upgrade/download-cloud`
|
|
||||||
- 固定传 `timeOut=0`
|
|
||||||
- 含义是“任务创建成功立即返回”,不要等待长超时
|
|
||||||
- 进度接口:
|
|
||||||
- `GET /api/mcp/version/upgrade/download-cloud/progress?...&versionNumber={versionNumber}`
|
|
||||||
- 完成判定优先看:
|
|
||||||
- `msg`
|
|
||||||
- `step`
|
|
||||||
- `rateOfProgress`
|
|
||||||
- 当 `msg=success`、`step=DONE`、`rateOfProgress=100` 时,判定下载完成
|
|
||||||
|
|
||||||
### 6.3 升级与启停接口
|
|
||||||
|
|
||||||
- `POST /api/mcp/version/upgrade`
|
|
||||||
- 参数直接拼到 URL query
|
|
||||||
- 不使用 body 表单
|
|
||||||
- `POST /api/mcp/version/upgrade/start-stop`
|
|
||||||
- 参数直接拼到 URL query
|
|
||||||
- 不使用 body 表单
|
|
||||||
- 参数名统一使用 `runStart`
|
|
||||||
|
|
||||||
## 7. 脚本 action 能力
|
|
||||||
|
|
||||||
本节仅定义允许调用的入口。除 `action` 入口外,其他脚本运行方式一律不允许用于真实部署。
|
本节仅定义允许调用的入口。除 `action` 入口外,其他脚本运行方式一律不允许用于真实部署。
|
||||||
|
|
||||||
### 7.1 Shell 入口
|
### 6.1 Shell 入口
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
bash ./deploy.sh --config ./config.txt --action <action-name> [--ip 192.168.1.10] [--hash-code xxx] [--stop-first]
|
bash ./deploy.sh --config ./config.txt --action <action-name> [--ip 192.168.1.10] [--hash-code xxx] [--stop-first]
|
||||||
```
|
```
|
||||||
|
|
||||||
### 7.2 PowerShell 入口
|
### 6.2 PowerShell 入口
|
||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action <ActionName> [-Ip 192.168.1.10] [-HashCode xxx] [-RollbackStopFirst]
|
powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action <ActionName> [-Ip 192.168.1.10] [-HashCode xxx] [-RollbackStopFirst]
|
||||||
```
|
```
|
||||||
|
|
||||||
### 7.3 可用 action
|
### 6.3 可用 action
|
||||||
|
|
||||||
| action | 用途 | 额外参数 |
|
| action | 用途 | 额外参数 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
@ -283,7 +249,7 @@ powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action <ActionName> [-Ip
|
|||||||
| `download-log` | 下载指定 IP 日志 | `--ip` / `-Ip` |
|
| `download-log` | 下载指定 IP 日志 | `--ip` / `-Ip` |
|
||||||
| `rollback-ip` | 执行指定 IP 回滚 | `--ip` / `-Ip`,可带 `--stop-first` / `-RollbackStopFirst` |
|
| `rollback-ip` | 执行指定 IP 回滚 | `--ip` / `-Ip`,可带 `--stop-first` / `-RollbackStopFirst` |
|
||||||
|
|
||||||
### 7.4 action 输出约定
|
### 6.4 action 输出约定
|
||||||
|
|
||||||
典型返回为:
|
典型返回为:
|
||||||
|
|
||||||
@ -300,9 +266,9 @@ Agent 读取时:
|
|||||||
- 将 `[INFO]`、`[WARN]`、`[FLOW]` 视为辅助日志
|
- 将 `[INFO]`、`[WARN]`、`[FLOW]` 视为辅助日志
|
||||||
- 若 action 失败,以退出码和错误日志为准
|
- 若 action 失败,以退出码和错误日志为准
|
||||||
|
|
||||||
## 8. 分支流程与禁止事项
|
## 7. 分支流程与禁止事项
|
||||||
|
|
||||||
### 8.1 仅说明现有脚本用法分支
|
### 7.1 仅说明现有脚本用法分支
|
||||||
|
|
||||||
当用户意图不是“真实部署”,而是“查看现有脚本如何使用”时:
|
当用户意图不是“真实部署”,而是“查看现有脚本如何使用”时:
|
||||||
|
|
||||||
@ -310,7 +276,7 @@ Agent 读取时:
|
|||||||
2. 不执行任何真实 `action`。
|
2. 不执行任何真实 `action`。
|
||||||
3. 不生成、不修改任何脚本文件。
|
3. 不生成、不修改任何脚本文件。
|
||||||
|
|
||||||
### 8.2 参数确认后不执行分支
|
### 7.2 参数确认后不执行分支
|
||||||
|
|
||||||
当用户只想确认参数、检查部署计划,但不执行真实部署时:
|
当用户只想确认参数、检查部署计划,但不执行真实部署时:
|
||||||
|
|
||||||
@ -320,7 +286,7 @@ Agent 读取时:
|
|||||||
4. 不执行任何真实 `action`。
|
4. 不执行任何真实 `action`。
|
||||||
5. 不生成、不修改任何脚本文件。
|
5. 不生成、不修改任何脚本文件。
|
||||||
|
|
||||||
### 8.3 仅查看 Node 与在线 IP 分支
|
### 7.3 仅查看 Node 与在线 IP 分支
|
||||||
|
|
||||||
当用户只需要确认目标 Node 和在线工作站,而不是正式部署时:
|
当用户只需要确认目标 Node 和在线工作站,而不是正式部署时:
|
||||||
|
|
||||||
@ -339,7 +305,7 @@ Agent 读取时:
|
|||||||
- `create-download-task`
|
- `create-download-task`
|
||||||
- `upgrade-ip`
|
- `upgrade-ip`
|
||||||
|
|
||||||
### 8.4 手动回滚分支
|
### 7.4 手动回滚分支
|
||||||
|
|
||||||
当部署结果出现 `PENDING_AGENT_CONFIRMATION(...)` 且用户明确同意回滚时:
|
当部署结果出现 `PENDING_AGENT_CONFIRMATION(...)` 且用户明确同意回滚时:
|
||||||
|
|
||||||
@ -350,7 +316,7 @@ Agent 读取时:
|
|||||||
- `download-log`
|
- `download-log`
|
||||||
4. 将回滚结果写入最终报告。
|
4. 将回滚结果写入最终报告。
|
||||||
|
|
||||||
### 8.5 明确禁止的做法
|
### 7.5 明确禁止的做法
|
||||||
|
|
||||||
以下做法在本 Skill 中一律禁止:
|
以下做法在本 Skill 中一律禁止:
|
||||||
|
|
||||||
@ -360,9 +326,9 @@ Agent 读取时:
|
|||||||
- 未确认参数就直接执行真实 action
|
- 未确认参数就直接执行真实 action
|
||||||
- 在出现回滚条件时自动执行回滚
|
- 在出现回滚条件时自动执行回滚
|
||||||
|
|
||||||
## 9. 失败处理与回滚
|
## 8. 失败处理与回滚
|
||||||
|
|
||||||
### 9.1 全局失败
|
### 8.1 全局失败
|
||||||
|
|
||||||
以下步骤失败时,终止整次部署并报告失败阶段:
|
以下步骤失败时,终止整次部署并报告失败阶段:
|
||||||
|
|
||||||
@ -375,7 +341,7 @@ Agent 读取时:
|
|||||||
- 创建云下载任务
|
- 创建云下载任务
|
||||||
- 云下载进度轮询失败或超时
|
- 云下载进度轮询失败或超时
|
||||||
|
|
||||||
### 9.2 单 IP 失败
|
### 8.2 单 IP 失败
|
||||||
|
|
||||||
单 IP 失败时:
|
单 IP 失败时:
|
||||||
|
|
||||||
@ -383,7 +349,7 @@ Agent 读取时:
|
|||||||
- 必须下载该 IP 日志
|
- 必须下载该 IP 日志
|
||||||
- 不得自动执行回滚
|
- 不得自动执行回滚
|
||||||
|
|
||||||
### 9.3 回滚规则
|
### 8.3 回滚规则
|
||||||
|
|
||||||
回滚只允许在 Agent 与用户确认后执行。
|
回滚只允许在 Agent 与用户确认后执行。
|
||||||
|
|
||||||
@ -397,7 +363,7 @@ Agent 读取时:
|
|||||||
- `ROLLBACK_REQUEST_FAILED`
|
- `ROLLBACK_REQUEST_FAILED`
|
||||||
- `ROLLBACK_VERIFY_FAILED`
|
- `ROLLBACK_VERIFY_FAILED`
|
||||||
|
|
||||||
推荐确认逻辑:
|
默认确认逻辑:
|
||||||
|
|
||||||
- 升级失败:建议回滚,`stopFirst=false`
|
- 升级失败:建议回滚,`stopFirst=false`
|
||||||
- 启动失败:建议回滚,`stopFirst=true`
|
- 启动失败:建议回滚,`stopFirst=true`
|
||||||
@ -413,7 +379,7 @@ bash ./deploy.sh --config ./config.txt --action rollback-ip --ip 192.168.1.10 --
|
|||||||
powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action rollback-ip -Ip 192.168.1.10 -RollbackStopFirst
|
powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action rollback-ip -Ip 192.168.1.10 -RollbackStopFirst
|
||||||
```
|
```
|
||||||
|
|
||||||
## 10. 输出要求
|
## 9. 输出要求
|
||||||
|
|
||||||
最终报告至少包含:
|
最终报告至少包含:
|
||||||
|
|
||||||
@ -448,7 +414,7 @@ powershell -File .\deploy.ps1 -ConfigPath .\config.txt -Action rollback-ip -Ip 1
|
|||||||
| 192.168.1.12 | FAILED | VERIFY | PENDING_AGENT_CONFIRMATION(stopFirst=true) | logs/deploy_192.168.1.12.log |
|
| 192.168.1.12 | FAILED | VERIFY | PENDING_AGENT_CONFIRMATION(stopFirst=true) | logs/deploy_192.168.1.12.log |
|
||||||
```
|
```
|
||||||
|
|
||||||
## 11. Agent 执行建议
|
## 10. Agent 执行建议
|
||||||
|
|
||||||
1. 只能调用 `action`,不要调用脚本主流程。
|
1. 只能调用 `action`,不要调用脚本主流程。
|
||||||
2. 不要自动生成、补写、覆盖或修改脚本文件。
|
2. 不要自动生成、补写、覆盖或修改脚本文件。
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user