一键导入
com-solaxcloud-starter-set-discharge-to-limit-replay
Replay baseline skill for setting the discharge-to-limit percentage in the SolaX Cloud app.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Replay baseline skill for setting the discharge-to-limit percentage in the SolaX Cloud app.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Set the AirTouch 5 fan level to auto, low, medium, or high from the Home screen.
Set one or more AirTouch 5 Home-screen controls in a single run.
Set the AirTouch 5 operating mode to cool, heat, fan, dry, or auto from the Home screen.
Set the AirTouch 5 system power state to on or off from the Home screen.
Search for products in the Amazon Shopping Android app.
Open Android Settings, snapshot visible UI text, and capture a screenshot file path.
| name | com.solaxcloud.starter.set-discharge-to-limit-replay |
| clawperator-skill-type | replay |
| description | Replay baseline skill for setting the discharge-to-limit percentage in the SolaX Cloud app. |
Replay baseline skill for setting the discharge-to-limit percentage in the SolaX Cloud Android app.
Compatibility:
com.solaxcloud.starter.set-discharge-to-limit-replay is the canonical replay baseline idcom.solaxcloud.starter.set-discharge-to-limit has been retired-replay idArguments:
--percent <percent>--limit <percent>0 to 100Run through the wrapper:
clawperator skills run com.solaxcloud.starter.set-discharge-to-limit-replay --device <device_serial> --percent 40
The lone -- separator is not required for the canonical --percent form.
The legacy -- --limit <percent> invocation is also still accepted by the
script for compatibility with callers that have not refreshed their wrapper
instructions yet.
Direct local invocation:
CLAWPERATOR_BIN="<node_binary> <clawperator_root>/apps/node/dist/cli/index.js" \
<node_binary> <skills_repo_root>/skills/com.solaxcloud.starter.set-discharge-to-limit-replay/scripts/run.js \
<device_serial> --percent 40
Current behavior:
Intelligence tabPeak Export automation cardDevice Discharging (By percentage) action cardDischarge to ... rowConfirmSavePeak Export screen is visible again after the toolbar SaveSave action by label only after that post-toolbar check proves the UI advanced past the first SaveThe save operation will cancel the currently executing scenario prompt when it appears after the bottom-sheet SaveDischarge to ... rowclawperator exec --json output to stdout before a final structured result frame[Clawperator-Skill-Result] frame at end-of-stdout with contractVersion: "1.0.0"source from the emitted frame; runSkill injects source: { "kind": "script" }goal: { "kind": "set_discharge_limit", "percent": <percent> }inputs: { "percent": <percent> }SkillResult as the source of truth
for top-level success, rather than a separate registry matcher render stepapp_openeddischarge_to_row_focusedtarget_text_enteredsave_completedterminal_state_verifiedclawperator exec --json envelopes in skillResultterminalVerification.status: "verified" only when the final row text proves Discharge to <percent>%terminalVerification.method as post-save reread or fresh-session rereadskillResultKnown caveats:
Peak Export as the automation card on the
Intelligence tab that leads to the discharge setting screenDevice Discharging (By percentage) card first, and only then a
Discharge to 40%-style row one level deeperPeak Export and Device Discharging (By percentage), not generic
text-node clicksSave tap is matched by label only after a
post-toolbar snapshot poll proves the UI has returned to the Peak Export
screen, so the replay no longer races the same Save surface twiceSave
warning that saving will cancel the currently executing scenario; the replay
confirms that prompt when it appears before terminal verificationDischarge to dialog input is persisted reliably only when the script
uses real key events (DEL, DEL, text entry, then Enter) before
Confirm; plain text-set behavior was not sufficient for this app flowstderr and records it in
skillResult.diagnostics.warningstarget_text_entered, not save_completedSuccess path:
CLAWPERATOR_SKILLS_REGISTRY=<skills_repo_root>/skills/skills-registry.json \
CLAWPERATOR_OPERATOR_PACKAGE=com.clawperator.operator.dev \
<node_binary> <clawperator_root>/apps/node/dist/cli/index.js skills run com.solaxcloud.starter.set-discharge-to-limit-replay --device <device_serial> --percent 40
Forced-failure repro:
CLAWPERATOR_SKILLS_REGISTRY=<skills_repo_root>/skills/skills-registry.json \
CLAWPERATOR_OPERATOR_PACKAGE=com.clawperator.operator.dev \
CLAWPERATOR_SOLAX_REPLAY_FORCE_FAILURE=1 \
<node_binary> <clawperator_root>/apps/node/dist/cli/index.js skills run com.solaxcloud.starter.set-discharge-to-limit-replay --device <device_serial> --percent 40
Expected forced-failure shape:
ok: falsecode: "SKILL_EXECUTION_FAILED"exitCodeclawperator exec --json failure output on stdoutskillResult is present with:
status: "failed"source.kind: "script" injected by runtime, not emitted by the scriptsave_completed.status: "failed"terminalVerification.status: "not_run"Expected terminal-verification failure shape:
skills run surfaces ok: false with code: "SKILL_EXECUTION_FAILED"stderr includes Terminal verification failed: expected discharge-to-limit ...skillResult is present with:
status: "failed"terminal_state_verified.status: "failed"terminalVerification.status: "failed"terminalVerification.expected.text set to Discharge to <percent>%terminalVerification.observed.text set to the final row text actually readExpected fallback-verification success shape:
No UI node found...,
Timeout waiting for node matching..., or a daemon proxy/result-envelope
timeoutskillResult.status is successterminalVerification.status is verifiedterminalVerification.method is fresh-session rereaddiagnostics.warnings notes that the primary verification path failed and
the fresh-session reread proved the final valueThis skill was scaffolded with recording context at recording-context.json.
Read that file to inspect the recorded interaction timeline and raw events.
The recording context is reference evidence, not an executable skill recipe.
An external agent or human author must write the reusable skill logic.
Usage:
node skills/com.solaxcloud.starter.set-discharge-to-limit-replay/scripts/run.js <device_id> [--percent <percent>|--limit <percent>|<percent>]