Octopusgarage heat guard
Skill OctopusGarage/octopusgarage-skills/skills/octopusgarage-heat-guard
Operate and diagnose macOS system health — auto-clean leaked agent shells + zombies, snapshot CPU/memory/disk pressure, and surface anomalies for notify-and-confirm termination. Use when the machine is hot/slow, to check what's hogging CPU/memory/disk, or as a periodic guardian tick.From its SKILL.md
npx -y skills add OctopusGarage/octopusgarage-skills --skill octopusgarage-heat-guardAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.5 KB, 542 tokens by cl100k_base, as published. Nobody here has run it
octopusgarage-heat-guard
A macOS system-health guardian. Each invocation is one tick: run the
deterministic script (which already auto-cleaned safe junk), then YOU (the AI)
review the remaining candidates, and notify-and-confirm before terminating
anything ambiguous. How this skill is scheduled is the operator's concern.
Setup
cd "$SKILL_DIR/scripts" && uv sync --quiet
Tick workflow
- Run the scan (auto-clean happens inside; it only kills zombies + leaked shells):
Useuv run python -m heat_guard.cli scan--dry-runto observe without killing. - Read the JSON. If
candidatesis empty andsystem_flagsis empty → report "healthy" and stop. This is the cheap common path. - For each candidate, judge expected vs anomalous using its
command,cpu_time_s,etime_s,pcpu,rss_mb,tripped, and the decision state in~/.heat-guard/state.json:- Known-good (a build/encode you recognize, an agent session the user already acknowledged, THIS session or sibling loop/bot sessions) → skip.
- Previously marked keep/snooze and still valid → skip.
- Genuinely anomalous and unacknowledged → notify.
If you need a candidate's working directory or owner to judge it (e.g. which project an agent session belongs to), fetch it on demand:
lsof -a -p <pid> -d cwdandps -o user= -p <pid>.
- Notify + confirm (never auto-kill): send the user a concise message —
what, why it's suspicious, your recommendation — and ask them to confirm
termination. Prefer the live Telegram channel (
reply); if unavailable, use the fallback inheat_guard/telegram.py. Record the candidate aspendingin~/.heat-guard/state.json. - On the user's reply: confirm → terminate (SIGTERM, then SIGKILL if it survives) and report; keep/snooze → record it so you stop nagging.
Hard rules
- The script NEVER kills anything but zombies + leaked shells. You NEVER kill a candidate without explicit user confirmation.
- Never touch this session or its ancestors (the script already protects them).
- See
references/triage-guidance.mdfor how to judge anomalies and message copy.
What ships with it: 18 files
23.1 KB alongside SKILL.md, 15 of them executable
agents/
- openai.yaml970 B
references/
- triage-guidance.md2.3 KB
scripts/
- heat_guard/actions.pyruns478 B
- heat_guard/classify.pyruns2.7 KB
- heat_guard/cli.pyruns1.5 KB
- heat_guard/collect.pyruns1.9 KB
- heat_guard/config.pyruns1.1 KB
- heat_guard/__init__.pyruns95 B
- heat_guard/model.pyruns1.8 KB
- heat_guard/procscan.pyruns1.4 KB
- heat_guard/telegram.pyruns1.3 KB
- pyproject.toml402 B
- tests/test_classify.pyruns2.2 KB
- tests/test_cli.pyruns1.4 KB
- tests/test_collect.pyruns1.2 KB
- tests/test_model.pyruns935 B
- tests/test_procscan.pyruns691 B
- tests/test_telegram.pyruns753 B