GB-Power-Market-JJ boot_installer
Install, update, repair, or health-check the openclaw environment. Use when the user says install openclaw, run the bootstrapper, update packages, fix a broken install, or check system health.
install
source · Clone the upstream repo
git clone https://github.com/GeorgeDoors888/GB-Power-Market-JJ
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/GeorgeDoors888/GB-Power-Market-JJ "$T" && mkdir -p ~/.claude/skills && cp -r "$T/openclaw-skills/skills/alaminedits/boot-installer" ~/.claude/skills/georgedoors888-gb-power-market-jj-boot-installer && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/GeorgeDoors888/GB-Power-Market-JJ "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/openclaw-skills/skills/alaminedits/boot-installer" ~/.openclaw/skills/georgedoors888-gb-power-market-jj-boot-installer && rm -rf "$T"
manifest:
openclaw-skills/skills/alaminedits/boot-installer/SKILL.mdsource content
boot_installer
Runs
{baseDir}/boot.sh to manage the full openclaw environment lifecycle.
Requires Linux and root/sudo access. The script handles privilege escalation automatically.
Slash commands
| Command | What it does |
|---|---|
| Fresh install of all components |
| Upgrade all packages to latest versions |
| Deep clean and rebuild broken state |
| Health-check — verify all components |
When to run which mode
- User says "install openclaw", "set it up", "run the installer" → install (no flag)
- User says "update", "upgrade packages" → update
- User says "repair", "fix", "something is broken", "rebuild" → repair
- User says "check", "status", "is everything installed", "health check" → check
How to invoke
Always run as the calling user (sudo is handled internally by the script):
bash {baseDir}/boot.sh # install bash {baseDir}/boot.sh --update # update bash {baseDir}/boot.sh --repair # repair bash {baseDir}/boot.sh --check # check — exits with number of failed checks (max 125)
Use the
exec tool. Stream output so the user sees the spinner progress live.
What gets installed (install mode)
- Node.js v24+ via NodeSource
- UV Python package manager (
)~/.local/bin/uv - Python 3.10 venv at
with~/venvscrapling[fetchers] - Chromium browser via Playwright (
)~/.cache/ms-playwright - NPM globals:
,9router
,openclaw@latest
,clawhub
,paperclipai
,@presto-ai/google-workspace-mcpmcporter - System symlinks in
/usr/local/bin
autostart via systemd user service (falls back to9router
hook).bashrc
systemd user serviceopenclaw-gateway-watchdog- Mcporter Google Workspace connector
Key paths
| Path | Purpose |
|---|---|
| Python virtual environment |
| UV binary |
| NPM global binaries |
| Chromium browser |
| Workspace skills |
| 9router systemd unit |
| Gateway watchdog |
After install
If
.bashrc was modified, remind the user to reload their shell:
source ~/.bashrc
Logs and errors
The script writes a full log to
/tmp/boot-YYYYMMDD-HHMMSS.log. If a step fails, the last 15 lines of output are printed inline and the log path is shown. Surface that path to the user on failure.
Check mode exit codes
--check exits with the count of failed checks (0 = all pass, 1–125 = N issues, capped at 125). Parse the exit code and tell the user how many checks failed and to run bash {baseDir}/boot.sh to repair.
Troubleshooting
- APT lock held — script waits up to 120 s and kills blocking processes automatically. No user action needed.
- Node.js wrong version — script upgrades it automatically if the installed major is below 24.
- Broken Python venv — run
first, then run without flags to reinstall packages.--repair - 9router not starting — logs at
. Falls back to~/.local/share/9router.log
login hook if systemd unavailable..bashrc - Gateway watchdog not starting — run
.journalctl --user -u openclaw-gateway-watchdog -n 50 - Permission errors on files — run without flags (install mode);
runs at the end of every install/update._fix_ownership