Back to Registry
View Author Profile
Official Verified
self-upgrade
OpenClaw 自我迭代升级技能。使用场景:配置自动修复、技能更新、依赖安装、版本检查、问题预防性修复。支持安全模式(需用户确认)和自动模式(低风险操作自动执行)。
skill-install — Terminal
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/fffdz/tianyi-self-upgradeOr
Self-Upgrade 技能
OpenClaw 系统的自我维护和升级能力。
核心原则
安全分级
| 风险等级 | 操作类型 | 执行策略 |
|---|---|---|
| 低风险 | 日志清理、状态检查、配置格式化 | 自动执行 |
| 中风险 | 配置字段更新、技能包安装 | 需用户确认 |
| 高风险 | 服务重启、文件删除、版本升级 | 必须用户明确授权 |
升级策略
- 向后兼容优先: 保留旧配置字段(标记 deprecated)而非直接删除
- 可回滚: 重大变更前自动备份
- 渐进式: 分步执行,每步验证后再继续
核心流程
1. 版本检查
# 检查当前版本
openclaw --version
# 检查配置版本
$config = Get-Content ~\.openclaw\openclaw.json | ConvertFrom-Json
$config.meta.lastTouchedVersion
2. 配置迁移
检测并迁移废弃字段:
# 示例:authToken → auth.token
if ($config.gateway.authToken) {
$config.gateway.auth = @{ token = $config.gateway.authToken }
$config.gateway.PSObject.Properties.Remove('authToken')
}
3. 依赖检查
# 检查必要技能
$requiredSkills = @('healthcheck', 'skill-creator', 'auto-diagnostic')
foreach ($skill in $requiredSkills) {
if (-not (Test-Path "skills\$skill\SKILL.md")) {
Write-Host "[MISSING] Skill: $skill"
}
}
# 检查 npm 包版本
npm list -g openclaw
4. 自动修复
运行内置诊断:
openclaw doctor --fix
5. 备份与回滚
# 备份配置
$backupPath = "~\.openclaw\backups\openclaw-$(Get-Date -Format 'yyyyMMdd-HHmmss').json"
Copy-Item ~\.openclaw\openclaw.json $backupPath
# 回滚命令
Copy-Item $backupPath ~\.openclaw\openclaw.json
脚本工具
scripts/self-upgrade.ps1
param(
[switch]$Auto, # 自动模式(低风险操作)
[switch]$DryRun, # 仅预览,不执行
[string]$BackupDir = "~\.openclaw\backups"
)
$ErrorActionPreference = "Stop"
$ConfigPath = "~\.openclaw\openclaw.json"
# 1. 创建备份
if (-not $DryRun) {
if (-not (Test-Path $BackupDir)) {
New-Item -ItemType Directory -Path $BackupDir | Out-Null
}
$backupPath = Join-Path $BackupDir "openclaw-$(Get-Date -Format 'yyyyMMdd-HHmmss').json"
Copy-Item $ConfigPath $backupPath
Write-Host "[OK] Backup created: $backupPath" -ForegroundColor Green
}
# 2. 检查配置
try {
$config = Get-Content $ConfigPath -Raw | ConvertFrom-Json
Write-Host "[OK] Config is valid JSON" -ForegroundColor Green
} catch {
Write-Host "[ERROR] Config is invalid: $($_.Exception.Message)" -ForegroundColor Red
exit 1
}
# 3. 迁移废弃字段
$migrated = $false
if ($config.gateway.authToken) {
Write-Host "[MIGRATE] gateway.authToken → gateway.auth.token" -ForegroundColor Yellow
if (-not $DryRun) {
$config.gateway.auth = @{ token = $config.gateway.authToken }
$config.gateway.PSObject.Properties.Remove('authToken')
$migrated = $true
}
}
# 4. 保存变更
if ($migrated -and -not $DryRun) {
$config | ConvertTo-Json -Depth 10 | Set-Content $ConfigPath
Write-Host "[OK] Config updated" -ForegroundColor Green
# 验证
openclaw doctor --fix
}
Metadata
AI Skill Finder
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skill Add to Configuration
Paste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-fffdz-tianyi-self-upgrade": {
"enabled": true,
"auto_update": true
}
}
}Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.