Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
System package maintenance for Ubuntu (apt), npm, brew, and OpenClaw skills. Conservative workflow with 2-day quarantine for non-security updates, automatic...
System package maintenance for Ubuntu (apt), npm, brew, and OpenClaw skills. Conservative workflow with 2-day quarantine for non-security updates, automatic...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
Comprehensive system maintenance automation for Ubuntu hosts with support for apt, npm, brew, and OpenClaw skills.
sys-updater is a conservative maintenance pipeline for Linux hosts running OpenClaw. It separates security patching from feature upgrades, keeps auditable state files, and sends a human-readable daily report.
APT (Ubuntu) daily apt-get update automatic security updates via unattended-upgrade non-security upgrades only from explicit planned list NPM / PNPM / Brew detect outdated packages keep them in tracked state auto-review package risk (bugs/regressions/CVE signals) install only approved/planned updates OpenClaw skills (ClawHub) checks installed skills and reports update status Daily report (09:00 MSK) current health/status candidates/planned/blocked per manager explicit βactually installedβ lines for apt/npm/pnpm/brew
run_6am: βββ apt: update, security upgrades, simulate, track non-security βββ npm/brew: check outdated, add to tracking βββ skills: auto-update immediately (no quarantine)
Summary of all package managers Planned updates for next day Blocked packages with reasons
Web search for bugs/regressions in tracked packages Mark as planned or blocked based on findings
Apply planned npm/brew upgrades Send completion report
state/apt/last_run.json β Last run results state/apt/tracked.json β APT packages being tracked state/apt/npm_tracked.json β NPM packages state/apt/brew_tracked.json β Brew packages state/logs/apt_maint.log β Daily logs (10-day rotation)
# Daily maintenance (runs automatically) ./scripts/apt_maint.py run_6am # Generate report ./scripts/apt_maint.py report_9am # Check npm/brew only ./scripts/pkg_maint.py check # Review packages (after 2 days) ./scripts/pkg_maint.py review # Apply planned upgrades ./scripts/pkg_maint.py upgrade # Update skills only ./scripts/pkg_maint.py skills
Environment variables: SYS_UPDATER_BASE_DIR β Base directory (default: ~/clawd/sys-updater) SYS_UPDATER_STATE_DIR β State files location SYS_UPDATER_LOG_DIR β Log files location
Requires 4 cron jobs: run_6am β Daily 06:00 MSK (apt + check npm/brew + auto skills) report_9am β Daily 09:00 MSK (Telegram report) review_2d β T+2 days 09:00 MSK (web search bugs) upgrade_3d β T+3 days 06:00 MSK (apply planned)
Security updates: Applied automatically via unattended-upgrade Non-security: 2-day observation period with bug research User control: Can block any package with reason Safety: Dry-run simulation before any apt upgrade
Ubuntu with apt Node.js + npm (for npm packages) Homebrew (for brew packages) OpenClaw with clawhub CLI sudo access for specific apt commands (see below)
For unattended operation, grant the running user passwordless sudo for specific apt commands only. Do not add the user to full sudoers. Create file /etc/sudoers.d/sys-updater: # Allow sys-updater to run apt maintenance commands without password # Replace 'username' with your actual username username ALL=(root) NOPASSWD: /usr/bin/apt-get update username ALL=(root) NOPASSWD: /usr/bin/apt-get -s upgrade username ALL=(root) NOPASSWD: /usr/bin/unattended-upgrade -d Set secure permissions: sudo chmod 440 /etc/sudoers.d/sys-updater sudo visudo -c # Verify syntax is valid
CommandPurposeapt-get updateRefresh package listsapt-get -s upgradeSimulate upgrade (dry-run, no actual changes)unattended-upgrade -dApply security updates automatically
Only these 3 specific commands are allowed No apt-get upgrade without -s (simulation only for tracking) No apt-get dist-upgrade or autoremove No package installation/removal through sudo NPM and brew do not require sudo (user installs)
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.