toolguard-daemon-control
Manage long-running processes as macOS launchd services. Use when asked to start, stop, restart, check status of, or manage background services/daemons. Handles launchd plist creation, service lifecycle, and log access. Use this instead of background exec for any process that should persist beyond the current session.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/johnnylambada/toolguard-daemon-controltoolguard-daemon-control
Manage any executable as a persistent macOS launchd user agent.
Overview
Services are installed as ~/Library/LaunchAgents/ai.toolguard.<name>.plist and run as user-level launch agents. They auto-restart on failure and log to ~/Library/Logs/toolguard/.
Scripts
All scripts are in scripts/ relative to this skill's directory. Run them with bash.
install.sh — Create and start a service
bash scripts/install.sh <service-name> <command> [args...] [--workdir <dir>] [--env KEY=VALUE ...]
service-name: Short identifier (e.g.,toolguard-proxy). Used in plist filename and log paths.command: Absolute path to the executable.args: Arguments passed to the command.--workdir <dir>: Working directory for the process (default:$HOME).--env KEY=VALUE: Environment variables (repeatable).
Example:
bash scripts/install.sh toolguard-proxy /usr/local/go/bin/go run ./cmd/server --config toolguard.dev.yaml --workdir ~/Documents/toolguard
uninstall.sh — Stop and remove a service
bash scripts/uninstall.sh <service-name>
Unloads the service and removes the plist file. Logs are preserved.
status.sh — Check service status
bash scripts/status.sh [service-name]
Without arguments, lists all ai.toolguard.* services. With a name, shows detailed status for that service.
logs.sh — View service logs
bash scripts/logs.sh <service-name> [--follow] [--lines <n>]
Shows stdout and stderr logs. Default: last 50 lines.
list.sh — List all managed services
bash scripts/list.sh
Lists all installed ai.toolguard.* services with their running state.
Notes
- Services run as the current user (no sudo required).
- Services auto-restart on crash (
KeepAlive = true). - To run a Go project, use the compiled binary path or wrap in a shell script — launchd does not support
go rundirectly. Usego buildfirst, then point to the binary. - Log directory:
~/Library/Logs/toolguard/<service-name>/ - Plist location:
~/Library/LaunchAgents/ai.toolguard.<service-name>.plist
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-johnnylambada-toolguard-daemon-control": {
"enabled": true,
"auto_update": true
}
}
}