Skip to content

版本管理

场景版本管理使用语义化版本(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,场景将无法安装。

发布流程

  1. 更新 scenario.json 中的 version
  2. 更新 changelog
  3. 构建 → 校验 → 打包 → 发布
bash
# 发布新版本
npx aweeclaw-scenario publish --changelog "v1.1.0: 新增批量处理功能"

最佳实践

  1. 语义化版本:严格遵循 SemVer 规范
  2. changelog:每次发布记录变更内容
  3. 向后兼容:尽量保持向后兼容
  4. 废弃警告:废弃功能前先给出警告
  5. minAppVersion:使用新功能时更新最低版本要求

AweeClaw AI 应用构建平台