版本管理
场景版本管理使用语义化版本(SemVer),确保兼容性和可追溯性。
版本号格式
主版本号.次版本号.修订号
MAJOR . MINOR . PATCH| 部分 | 说明 | 何时增加 |
|---|---|---|
| MAJOR | 主版本号 | 不兼容的 API 修改 |
| MINOR | 次版本号 | 向下兼容的功能新增 |
| PATCH | 修订号 | 向下兼容的问题修复 |
版本更新指南
PATCH 更新 (1.0.0 → 1.0.1)
- 修复 bug
- 优化提示词
- 更新文档
- 不改变任何 API
MINOR 更新 (1.0.0 → 1.1.0)
- 新增工具
- 新增面板
- 新增内置工具
- 向下兼容的配置变更
MAJOR 更新 (1.0.0 → 2.0.0)
- 移除工具
- 修改工具参数(不兼容)
- 修改配置结构
- 重大 UI 变更
更新检查
客户端会定期检查已安装场景的更新:
typescript
// 客户端调用后端 API
POST /api/v1/marketplace/check-updates
{
"scenarios": [
{ "id": "my-scenario", "version": "1.0.0" }
]
}
// 响应
[
{
"scenarioId": "my-scenario",
"currentVersion": "1.0.0",
"latestVersion": "1.1.0",
"changelog": "新增功能:批量处理",
"needsUpdate": true
}
]最低客户端版本
可以设置 minAppVersion 要求客户端最低版本:
json
{
"minAppVersion": "1.2.0"
}如果客户端版本低于 minAppVersion,场景将无法安装。
发布流程
- 更新
scenario.json中的version - 更新 changelog
- 构建 → 校验 → 打包 → 发布
bash
# 发布新版本
npx aweeclaw-scenario publish --changelog "v1.1.0: 新增批量处理功能"最佳实践
- 语义化版本:严格遵循 SemVer 规范
- changelog:每次发布记录变更内容
- 向后兼容:尽量保持向后兼容
- 废弃警告:废弃功能前先给出警告
- minAppVersion:使用新功能时更新最低版本要求

