healthcheck
Skill100 starsChanged 9 months agoMITView on GitHub
Host security hardening and risk-tolerance configuration for OpenClaw deployments. Use when a user asks for security audits, firewall/SSH/update hardening, risk posture, exposure review, OpenClaw cron scheduling for periodic checks, or version status checks on a machine running OpenClaw (laptop, workstation, Pi, VPS).
We split this skill into the rules it gives an agent
29 rules. 0 are common, 22 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 21 edited versions we read keep these.
22
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 16
Do not modify remote access settings without confirming how the user connects.
- Distinctive: line 17
Prefer reversible, staged changes with a rollback plan.
- Distinctive: line 18
Never claim OpenClaw changes the host firewall, SSH, or OS updates.
- Distinctive: line 19
If role/identity is unknown, provide recommendations only.
- Distinctive: line 27
Before starting, check the current model.
- Distinctive: line 49
If you must ask, use non-technical prompts:
- Distinctive: line 64
Only ask for the risk profile after system context is known.
- Distinctive: line 66
If the user grants read-only permission, run the OS-appropriate checks by default.
- Distinctive: line 90
If browser control is enabled, recommend that 2FA be enabled on all important accounts, with hardware keys preferred and SMS not sufficient.
- Distinctive: line 100
Ask the user to pick or confirm a risk posture and any required open services/ports (numbered choices below).
- Distinctive: line 101
Do not pigeonhole into fixed profiles.
- Distinctive: line 122
Always show the plan before any changes.
- Distinctive: line 128
Do it for me (guided, step-by-step approvals)
- Distinctive: line 140
Stop on unexpected output and ask for guidance
- Distinctive: line 171
After OpenClaw install or first hardening pass, run at least one baseline audit and version check:
- Very specific: line 178
When scheduling headless cron runs, include a note in the output that instructs the user to call healthcheck so issues can be fixed.
- Distinctive: line 182
After any audit or hardening pass, explicitly offer scheduling and require a direct response.
- Distinctive: line 186
If the user says yes, ask for:
- Distinctive: line 191
Use a stable cron job name so updates are deterministic.
- Very specific: line 196
Before creating, openclaw cron list and match on exact name.
- Very specific: line 197
If not found, openclaw cron add --name <name> ....
- Distinctive: line 206
Use only supported commands and flags:
- Distinctive: line 214
Do not invent CLI flags or imply OpenClaw enforces host firewall/SSH policies.
- Very specific: line 229
Only write to memory files when the user explicitly opts in and the session is a private/local workspace (per …
- Distinctive: line 233
Follow the durable-memory prompt format used by OpenClaw compaction:
- Very specific: line 235
Write lasting notes to memory/YYYY-MM-DD.md.
- Very specific: line 237
After each audit/hardening run, if opted-in, append a short, dated summary to memory/YYYY-MM-DD.md (what was checked, key findings, actions …
- Very specific: line 241
If there are durable preferences or decisions (risk posture, allowed ports, update policy), also update MEMORY.md (long-term memory is …
- Distinctive: line 244
If the session cannot write to the workspace, ask for permission or provide exact entries the user can paste into the memory files.
“Common” is measured: kept by at least 6 in 10 of the 21 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
OpenClaw Host Hardening
Overview
Assess and harden the host running OpenClaw, then align it to a user-defined risk tolerance without breaking access. Use OpenClaw security tooling as a first-class signal, but treat OS hardening as a separate, explicit set of steps.
Core rules
- Recommend running this skill with a state-of-the-art model (e.g., Opus 4.5, GPT 5.2+). The agent should self-check the current model and suggest switching if below that level; do not block execution.
- Require explicit approval before any state-changing action.
- Do not modify remote access settings without confirming how the user connects.
- Prefer reversible, staged changes with a rollback plan.
- Never claim OpenClaw changes the host firewall, SSH, or OS updates; it does not.
- If role/identity is unknown, provide recommendations only.
- Formatting: every set of user choices must be numbered so the user can reply with a single digit.
- System-level backups are recommended; try to verify status.
Workflow (follow in order)
0) Model self-check (non-blocking)
Before starting, check the current model. If it is below state-of-the-art (e.g., Opus 4.5, GPT 5.2+), recommend switching. Do not block execution.
1) Establish context (read-only)
Try to infer 1–5 from the environment before asking. Prefer simple, non-technical questions if you need confirmation.
Determine (in order):
- OS and version (Linux/macOS/Windows), container vs host.
- Privilege level (root/admin vs user).
- Access path (local console, SSH, RDP, tailnet).
- Network exposure (public IP, reverse proxy, tunnel).
- OpenClaw gateway status and bind address.
- Backup system and status (e.g., Time Machine, system images, snapshots).
- Deployment context (local mac app, headless gateway host, remote gateway, container/CI).
- Disk encryption status (FileVault/LUKS/BitLocker).
- OS automatic security updates status. Note: these are not blocking items, but are highly recommended, especially if OpenClaw can access sensitive data.
- Usage mode for a personal assistant with full access (local workstation vs headless/remote vs other).
First ask once for permission to run read-only checks. If granted, run them by default and only ask questions for items you cannot infer or verify. Do not ask for information already visible in runtime or command output. Keep the permission ask as a single sentence, and list follow-up info needed as an unordered list (not numbered) unless you are presenting selectable choices.
If you must ask, use non-technical prompts:
- “Are you using a Mac, Windows PC, or Linux?”
- “Are you logged in directly on the machine, or connecting from another computer?”
- “Is this machine reachable from the public internet, or only on your home/network?”
- “Do you have backups enabled (e.g., Time Machine), and are they current?”
- “Is disk encryption turned on (FileVault/BitLocker/LUKS)?”
- “Are automatic security updates enabled?”
- “How do you use this machine?”
Examples:
- Personal machine shared with the assistant
- Dedicated local machine for the assistant
- Dedicated remote machine/server accessed remotely (always on)
- Something else?
Only ask for the risk profile after system context is known.
If the user grants read-only permission, run the OS-appropriate checks by default. If not, offer them (numbered). Examples:
- OS:
uname -a,sw_vers,cat /etc/os-release. - Listening ports:
- Linux:
ss -ltnup(orss -ltnpif-uunsupported). - macOS:
lsof -nP -iTCP -sTCP:LISTEN.
- Linux:
- Firewall status:
- Linux:
ufw status,firewall-cmd --state,nft list ruleset(pick what is installed). - macOS:
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstateandpfctl -s info.
- Linux:
- Backups (macOS):
tmutil status(if Time Machine is used).
2) Run OpenClaw security audits (read-only)
As part of the default read-only checks, run openclaw security audit --deep. Only offer alternatives if the user requests them:
openclaw security audit(faster, non-probing)openclaw security audit --json(structured output)
Offer to apply OpenClaw safe defaults (numbered):
openclaw security audit --fix
Be explicit that --fix only tightens OpenClaw defaults and file permissions. It does not change host firewall, SSH, or OS update policies.
If browser control is enabled, recommend that 2FA be enabled on all important accounts, with hardware keys preferred and SMS not sufficient.
3) Check OpenClaw version/update status (read-only)
As part of the default read-only checks, run openclaw update status.
Report the current channel and whether an update is available.
4) Determine risk tolerance (after system context)
Ask the user to pick or confirm a risk posture and any required open services/ports (numbered choices below). Do not pigeonhole into fixed profiles; if the user prefers, capture requirements instead of choosing a profile. Offer suggested profiles as optional defaults (numbered). Note that most users pick Home/Workstation Balanced:
- Home/Workstation Balanced (most common): firewall on with reasonable defaults, remote access restricted to LAN or tailnet.
- VPS Hardened: deny-by-default inbound firewall, minimal open ports, key-only SSH, no root login, automatic security updates.
- Developer Convenience: more local services allowed, explicit exposure warnings, still audited.
- Custom: user-defined constraints (services, exposure, update cadence, access methods).
5) Produce a remediation plan
Provide a plan that includes:
- Target profile
- Current posture summary
- Gaps vs target
- Step-by-step remediation with exact commands
- Access-preservation strategy and rollback
- Risks and potential lockout scenarios
- Least-privilege notes (e.g., avoid admin usage, tighten ownership/permissions where safe)
- Credential hygiene notes (location of OpenClaw creds, prefer disk encryption)
Always show the plan before any changes.
6) Offer execution options
Offer one of these choices (numbered so users can reply with a single digit):
- Do it for me (guided, step-by-step approvals)
- Show plan only
- Fix only critical issues
- Export commands for later
7) Execute with confirmations
For each step:
- Show the exact command
- Explain impact and rollback
- Confirm access will remain available
- Stop on unexpected output and ask for guidance
8) Verify and report
Re-check:
- Firewall status
- Listening ports
- Remote access still works
- OpenClaw security audit (re-run)
Deliver a final posture report and note any deferred items.
Required confirmations (always)
Require explicit approval for:
- Firewall rule changes
- Opening/closing ports
- SSH/RDP configuration changes
- Installing/removing packages
- Enabling/disabling services
- User/group modifications
- Scheduling tasks or startup persistence
- Update policy changes
- Access to sensitive files or credentials
If unsure, ask.
Periodic checks
After OpenClaw install or first hardening pass, run at least one baseline audit and version check:
openclaw security auditopenclaw security audit --deepopenclaw update status
Ongoing monitoring is recommended. Use the OpenClaw cron tool/CLI to schedule periodic audits (Gateway scheduler). Do not create scheduled tasks without explicit approval. Store outputs in a user-approved location and avoid secrets in logs.
When scheduling headless cron runs, include a note in the output that instructs the user to call healthcheck so issues can be fixed.
Required prompt to schedule (always)
After any audit or hardening pass, explicitly offer scheduling and require a direct response. Use a short prompt like (numbered):
- “Do you want me to schedule periodic audits (e.g., daily/weekly) via
openclaw cron add?”
If the user says yes, ask for:
- cadence (daily/weekly), preferred time window, and output location
- whether to also schedule
openclaw update status
Use a stable cron job name so updates are deterministic. Prefer exact names:
healthcheck:security-audithealthcheck:update-status
Before creating, openclaw cron list and match on exact name. If found, openclaw cron edit <id> ....
If not found, openclaw cron add --name <name> ....
Also offer a periodic version check so the user can decide when to update (numbered):
openclaw update status(preferred for source checkouts and channels)npm view openclaw version(published npm version)
OpenClaw command accuracy
Use only supported commands and flags:
openclaw security audit [--deep] [--fix] [--json]openclaw status/openclaw status --deepopenclaw health --jsonopenclaw update statusopenclaw cron add|list|runs|run
Do not invent CLI flags or imply OpenClaw enforces host firewall/SSH policies.
Logging and audit trail
Record:
- Gateway identity and role
- Plan ID and timestamp
- Approved steps and exact commands
- Exit codes and files modified (best effort)
Redact secrets. Never log tokens or full credential contents.
Memory writes (conditional)
Only write to memory files when the user explicitly opts in and the session is a private/local workspace
(per docs/reference/templates/AGENTS.md). Otherwise provide a redacted, paste-ready summary the user can
decide to save elsewhere.
Follow the durable-memory prompt format used by OpenClaw compaction:
- Write lasting notes to
memory/YYYY-MM-DD.md.
After each audit/hardening run, if opted-in, append a short, dated summary to memory/YYYY-MM-DD.md
(what was checked, key findings, actions taken, any scheduled cron jobs, key decisions,
and all commands executed). Append-only: never overwrite existing entries.
Redact sensitive host details (usernames, hostnames, IPs, serials, service names, tokens).
If there are durable preferences or decisions (risk posture, allowed ports, update policy),
also update MEMORY.md (long-term memory is optional and only used in private sessions).
If the session cannot write to the workspace, ask for permission or provide exact entries the user can paste into the memory files.
Other versions35 projects use a version of this.
Word for word · 13
- casibase/casibase★ 5.7k100% same
- the-open-agent/openagent★ 5.7k100% same
- linuxhsj/openclaw-zero-token★ 5.2k100% same
- OpenBMB/EdgeClaw★ 1.2k100% same
- AtomicBot-ai/atomicbot★ 325100% same
- cohen-liel/hivemind★ 108100% same
- luolin-ai/openclawWeComzh★ 108100% same
- yunze7373/openclaw-termux★ 2100% same
- AnasNafees1802/BabyClaw★ 1100% same
- hkyutong/OneClaw★ 1100% same
3 more not listed
Edited · 6
- spinabot/brigade★ 11k88% same
- Bitterbot-AI/bitterbot-desktop★ 2.5k87% same
- understudy-ai/understudy★ 46117% same
- foxl-ai/skills★ 026% same
- OpenGitCode/OpenShell★ 088% same
- overkillkulture/nero-openclaw-skills★ 0100% same
Wrote their own version · 16
- moltbot/moltbot★ 393ksame name
- clawdbot/clawdbot★ 393ksame name
- steipete/warelay★ 392ksame name
- moltbot/clawdbot★ 392ksame name
- steipete/clawdis★ 392ksame name
- molt-bot/clawdbot★ 391ksame name
- openclaw/openclaw★ 391ksame name
- friuns2/openclaw-android-assistant★ 556same name
- OpenClawAndroid/openclaw-android-assistant★ 556same name
- andrew-yangy/gru-ai★ 153same name
6 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use discord-e2e, openclaw-repair-sweep and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
molt-botSkilldiscord-e2e
Test Discord with Convex-leased QA bots: check credentials without a Gateway, exercise owned messages, or prove OpenClaw replies, files, threads, reactions, streaming, and typing. Distinguish API and Gateway evidence from manual user interactions.
Also in 10 projects that use this
molt-botSkillopenclaw-repair-sweep
Run scoped OpenClaw issue/PR repair campaigns: coordinate workers, prove root causes, and land or close verified work under the requested authority.
Also in 10 projects that use this
AtomicBot-aiSkilltaskflow-inbox-triage
Also in 5 projects that use this
hkyutongSkillnode-connect
Diagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps. Use when QR/setup code/manual connect fails, local Wi-Fi works but VPS/tailnet does not, or errors mention pairing required, unauthorized, bootstrap token invalid or expired, gateway.bind, gateway.remote.url, Tailscale, or plugins.entries.device-pair.config.publicUrl.
Also in 17 projects that use this
steipeteSkillplugin-sdk-impact
Query how many public plugins use a Plugin SDK method, optionally by recent release date, and assess SDK deprecation or behavior changes using live ClawHub evidence.
Also in 6 projects that use this
steipeteSkillpr-simplify
Simplify your own change to its smallest complete fix. Use before opening a PR, before pushing large repairs to one, or when asked to shrink a PR or clean up slop.
Also in 6 projects that use this
- +2 more from molt-bot
In this repository86 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- merge-prSkill
- prepare-prSkill
- review-prSkill
- 1passwordSkill
- aave-bscSkill
- agentic-commerceSkill
- agent-identitySkill
- apple-notesSkill
- apple-remindersSkill
- bear-notesSkill
- binance-address-infoSkill
- binance-market-rankSkill
- binance-meme-rushSkill
- binance-spotSkill
- binance-token-auditSkill
- binance-token-infoSkill
- binance-trading-signalSkill
- birdSkill
- blogwatcherSkill
- blucliSkill
- bluebubblesSkill
- camsnapSkill
- canvasSkill
- clawhubSkill
- coding-agentSkill
- coingeckoSkill
- contract-deployerSkill
- debankSkill
- defi-dashboardSkill
- defillamaSkill
- discordSkill
- duneSkill
- eightctlSkill
- etherscanSkill
- four-memeSkill
- gas-trackerSkill
- geminiSkill
- gh-issuesSkill
- gifgrepSkill
- githubSkill
- gogSkill
- goplacesSkill
- himalayaSkill
- hyperliquidSkill
- imsgSkill
- macro-calendarSkill
- market-dataSkill
- mcporterSkill
- model-usageSkill
- nano-banana-proSkill
- nano-pdfSkill
- nft-managerSkill
- notionSkill
- obsidianSkill
- openai-image-genSkill
- openai-whisper-apiSkill
- openai-whisperSkill
- openhueSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

