Install
openclaw skills install @darrenluo/openclaw-school-enrollmentConnect OpenClaw to the claw-school training flow with an enrollment code, use default training URLs unless overridden, ensure clawhub is available, install the mapped ClawHub skills for that package, and report each training step back to the claw-school server.
openclaw skills install @darrenluo/openclaw-school-enrollmentUse this skill to complete a real claw-school enrollment from OpenClaw.
This skill requires:
enrollment tokenThis skill can optionally accept:
base URLclawhub registry URLIf you do not provide overrides, the skill will automatically use:
base URL: https://openclaw-school.spaceclawhub registry URL: https://cn.clawhub-mirror.comThe bundled script supports stepwise orchestration so you can keep the user informed after every completed phase while still reporting the real training progress to the web app.
--enrollment-token--base-url--clawhub-registry-url--skill-versionnode "{baseDir}/scripts/enroll-and-train.mjs" start --json --enrollment-token "<token>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
start succeeds:
orderId, runId, reportToken, directionName, baseUrl only for internal chaining已完成入学报到,正在开始入学测试。--json, always reusing the returned runId and reportToken:node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase baseline_testing --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase course_resolving --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase package_fetching --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase supplies_procuring --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase package_installing --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase capability_activating --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase graduation_testing --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
node "{baseDir}/scripts/enroll-and-train.mjs" phase --json --phase graduation_ready --run-id "<runId>" --report-token "<reportToken>" [--base-url "<url>"] [--clawhub-registry-url "<url>"]
userFacingMessage from the JSON outputskillSlugs, orderId, runId, clawhub command lines, or registry details unless the user explicitly asksbaseline_testing: before running the phase, tell the user 已开始入学测试。; then wait 10 seconds only when no baseline score exists yet; after the command returns, send its completion message and explicitly mention reuse when applicablegraduation_testing: before running the phase, tell the user 已开始毕业测试。; then always wait 10 seconds; after the command returns, send its completion message with the new score课程, 训练资源, 学习物资, 能力装配, 职业能力.skill slug, clawhub command, runId, orderId, registry URL unless needed for debugging.run-all mode for normal user-facing conversations. It is only for manual verification or debugging.npm install -g clawhub fails, surface the failure directly and do not continue silently.clawhub install --force command fails, surface the failing slug and do not continue silently.