From os-control-mcp
Control and inspect the local Linux host through systemd, journald, logind, and D-Bus via the os-control MCP. Use this whenever the user wants to manage or diagnose the machine itself rather than files or GUIs: "restart/stop/start/enable the X service", "is X running / why did it crash", "show me the logs for X / what's in the journal", "what's eating CPU/RAM/disk", "list failed units", "reboot/suspend/power off the box", "notify me on the desktop when Y", "what's on the system D-Bus". Prefer it over raw `kill`/ad-hoc shell for service and power management — it uses the sanctioned interfaces (systemctl/loginctl/journalctl/busctl) and has guards that stop you from cutting off your own access. NOT for editing files, GUI apps (use screen-mcp), or remote hosts.
How this skill is triggered — by the user, by Claude, or both
Slash command
/os-control-mcp:control-osThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
The sanctioned "motor cortex" for the host: act through systemd / logind / journald / D-Bus, not raw PID hacks. Tools: `os_diag`, `os_services`, `os_service`, `os_journal`, `os_resources`, `os_processes`, `os_power`, `os_notify`, `os_dbus`, `os_reload`.
The sanctioned "motor cortex" for the host: act through systemd / logind / journald / D-Bus, not raw PID hacks. Tools: os_diag, os_services, os_service, os_journal, os_resources, os_processes, os_power, os_notify, os_dbus, os_reload.
os_diag (health, privilege, what's available) → os_services (list/status), os_journal (logs), os_resources / os_processes (pressure). Understand the state before changing it.os_service (start/stop/restart/enable/…), os_power (suspend/reboot/poweroff), os_dbus (call a method), os_notify (tell the human).os_services unit=… / os_journal unit=… to verify the new state — don't assume the action took.dbus, systemd-logind, sshd, NetworkManager/networkd, tailscaled, the user@… session, goosed, etc. — is REFUSED. This stops you cutting off your own bus / login / network / remote access. If you genuinely mean it, pass force=true. (start/enable/reload are never blocked.)os_power is irreversible/disruptive → refused unless confirm=true. State what you're about to do, then call with confirm=true.os_dbus op=call has side effects → needs force=true. list/tree/introspect are free.Read-only tools work unprivileged. System-scope mutations (os_service on system units, os_power) need root or polkit — when not root the server tries sudo -n; if that's not set up it tells you plainly. Options: run goosed/the server as root, add passwordless sudo for systemctl, or a polkit rule. scope="user" manages the user's own units with no root.
os_services unit=foo.service (state/last result) → os_journal unit=foo.service priority=err lines=80 → fix → os_service unit=foo.service action=restart → confirm.os_resources → os_processes by=cpu (or by=mem) → act.os_services state=failed to list everything broken at once.os_notify summary="build done" urgency=normal.Pairs with screen-mcp (GUI eyes+hands), NATS (messaging), and A2A (inter-agent) for a full-stack agent: sense the kernel/services, act on the system, drive the desktop, coordinate the fleet.
npx claudepluginhub 88plug/claude-code-plugins --plugin os-control-mcpRequests code review by dispatching a subagent with git diff context. Use after completing tasks, major features, or before merging to catch issues early.