SuperAPI AI Directory

openharmony-download

Deployment & operations

View repository

Updated 10-16 03:11

About this skill

OpenHarmony Download Skill

OpenHarmony source code download Skill - conversational information collection + environment check + foreground real-time download.

Workflow

  1. Select mirror source(AskUserQuestion single choice)
  2. Environment check(item-by-item conversational check, guide to resolve on failure)
  3. Select branch(AskUserQuestion single choice)
  4. Select directory(AskUserQuestion single choice)
  5. Execute download(Bash tool, foreground real-time output)

Conversation flow

Step 1: Select mirror source

AskUserQuestion({
  questions: [{
    header: "镜像源",
    question: "请选择 OpenHarmony 镜像源",
    options: [
      { label: "GitCode", description: "推荐国内用户,速度最快" },
      { label: "Gitee", description: "国内用户" },
      { label: "GitHub", description: "国际用户" }
    ],
    multiSelect: false
  }]
})

Step 2: Environment check

After selecting the mirror source, use the Bash tool to check the environment item by item:

Bash({ command: "bash scripts/check_env.sh git", description: "Check git installation" })
Bash({ command: "bash scripts/check_env.sh git-lfs", description: "Check git-lfs installation" })
Bash({ command: "bash scripts/check_env.sh python3", description: "Check python3 installation" })
Bash({ command: "bash scripts/check_env.sh curl", description: "Check curl installation" })
Bash({ command: "bash scripts/check_env.sh repo", description: "Check repo installation" })
Bash({ command: "bash scripts/check_env.sh git-config", description: "Check git configuration" })
Bash({ command: "bash scripts/check_env.sh disk-space", description: "Check available disk space" })

When a check fails: show the error + provide the installation command + wait for the user to fix it + re-check

Common installation commands:

  • git: sudo apt-get install git (Ubuntu/Debian)
  • git-lfs: sudo apt-get install git-lfs && git lfs install
  • repo: see the installation instructions output by the script
  • Git configuration: git config --global user.name "Your Name" && git config --global user.email "your-email@example.com"

Step 3: Select branch

AskUserQuestion({
  questions: [{
    header: "分支",
    question: "请选择 OpenHarmony 分支",
    options: [
      { label: "master", description: "主分支(最新开发代码)" },
      { label: "OpenHarmony-5.1.0-Release", description: "5.1.0 版本" },
      { label: "OpenHarmony-5.0.3-Release", description: "5.0.3 版本" },
      { label: "OpenHarmony-5.0.2-Release", description: "5.0.2 版本" },
      { label: "OpenHarmony-5.0.1-Release", description: "5.0.1 版本" },
      { label: "OpenHarmony-4.1-Release", description: "4.1 版本" },
      { label: "自定义分支", description: "输入自定义分支名" }
    ],
    multiSelect: false
  }]
})

Step 4: Select directory

AskUserQuestion({
  questions: [{
    header: "目录",
    question: "请选择下载目录",
    options: [
      { label: "默认位置", description: "~/OpenHarmony/[branch]/" },
      { label: "自定义路径", description: "指定其他位置" }
    ],
    multiSelect: false
  }]
})

Step 5: Confirm and execute download

Show the configuration summary, use AskUserQuestion to confirm whether to start:

// 显示配置摘要
Claude: 好的,准备下载 OpenHarmony 源码:

配置摘要:
- 镜像源: ${MIRROR}
- 分支: ${BRANCH}
- 目录: ${DOWNLOAD_DIR}
- 并行任务: CPU核心数/4(自动计算)

下载将在前台运行,进度实时显示。
这将需要 30 分钟到数小时。

AskUserQuestion({
  questions: [{
    header: "确认",
    question: "是否开始下载?",
    options: [
      { label: "开始下载", description: "立即开始下载 OpenHarmony 源码" },
      { label: "返回重新配置", description: "返回步骤1,重新选择配置" }
    ],
    multiSelect: false
  }]
})

If "Start download" is selected:

Use the Bash tool to execute the download script, passing in the mirror source, branch, and directory parameters selected by the user:

Bash({
  command: `bash scripts/download_openharmony.sh -m ${MIRROR} -b ${BRANCH} ${CUSTOM_DIR ? `-d ${CUSTOM_DIR}` : ''}`,
  description: `Download OpenHarmony ${BRANCH} from ${MIRROR}`
})

The download will run in the foreground, with progress displayed in real time.

If "Return to reconfigure" is selected: Return to step 1, and reselect the mirror source, branch, and directory.

Script description

download_openharmony.sh

必需参数:
  -m MIRROR    镜像源(gitcode|gitee|github)
  -b BRANCH    分支名

可选参数:
  -d DIR       下载目录(绝对路径)
  -j JOBS      并行任务数(默认: CPU核心数/4)

check_env.sh

用法: check_env.sh <check_type>

检查类型: git | git-lfs | python3 | curl | repo | git-config | disk-space | all

verify_download.sh

Automatically verify download integrity (automatically called by the download script):

  • Directory structure check
  • foundation subsystem check
  • ACE Engine component check
  • Key file check
  • repo status check
  • Repository integrity verification

Verification result handling

Verification passed

✓ 验证通过!OpenHarmony 源码完整。

后续步骤:
1. 配置编译环境
2. 全量编译代码: ./build.sh --ccache --product-name rk3568

Verification failed

✗ 验证发现问题

建议:
1. 同步缺失仓库: repo sync -c
2. 拉取 LFS 文件: repo forall -c 'git lfs pull'
3. 检查网络连接