| name | syscheck |
| description | Use when the user says "syscheck" or asks for a parallel system health check. Fans out THREE subagents at once via the Agent tool — one checks CPU, one network, one memory — using only safe read-only commands, then synthesizes their results into one report. Demonstrates parallel subagent fan-out in Claude Code. |
Syscheck (demo) — parallel subagent fan-out (Claude Code)
Demonstrates fanning out work to several subagents at once. Instead of one
agent checking CPU, network, and memory one after another, the main agent launches
three subagents in parallel — each owns one subsystem — and then combines
their findings into a single system-health report.
In Claude Code, subagents launched via the Agent tool run as background
agents that notify the main agent on completion (this async task harness is a
Claude Code feature). Launch all three in one message so they run concurrently,
then synthesize once all three have reported.
Safety: every subagent uses read-only commands only — it observes the
system and never modifies it. No writes to files, sysctl, services, or config.
What to do
-
Launch three subagents in a single message (so they run concurrently) with
the Agent tool, subagent_type: "general-purpose". Hand each one of the three
task prompts below. Do not run the checks yourself.
① CPU — label cpu:
Check CPU status using only safe, read-only commands (no writes, no config or
sysctl changes). Run: lscpu (model, core count), nproc, uptime (load
average), and top -bn1 | head -n 15 for current utilization. Report a short
summary: CPU model, physical/logical cores, load average (1/5/15 min), and
approximate CPU utilization. Return only the summary.
② Network — label network:
Check network status using only safe, read-only commands (no writes, no config
changes). Find the primary interface with ip route get 1.1.1.1. Run
ip -s link show <iface> (counters), ip addr show <iface> (address), and
ping -c 5 -W 2 1.1.1.1 for latency/loss (fall back to 8.8.8.8). Report:
interface, IP, gateway, RTT min/avg/max (ms), packet loss %. Return only the
summary.
③ Memory — label memory:
Check memory status using only safe, read-only commands (no writes). Run:
free -h (RAM + swap) and vmstat -s -S M for detail. Report: total RAM,
used, available, used %, and swap used/total. Return only the summary.
-
When all three subagents have reported, synthesize their summaries into one
short system-health report — a section or row per subsystem — and flag anything
notable (high load, packet loss, low available memory).
The teaching point: fan-out. Three independent subagents work in parallel,
each in its own context, and the main agent only collects and combines the
distilled results.