From multi-fleet
HARD-GATE — verify safety and blast radius before changing fleet configuration, LaunchAgents, or daemon settings
How this skill is triggered — by the user, by Claude, or both
Slash command
/multi-fleet:fleet-config-gateThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Fleet configuration changes propagate across nodes. A bad config change can sever connectivity for the entire fleet, and a severed fleet cannot receive the fix. This gate ensures every config change is scoped, communicated, and reversible before it takes effect.
Fleet configuration changes propagate across nodes. A bad config change can sever connectivity for the entire fleet, and a severed fleet cannot receive the fix. This gate ensures every config change is scoped, communicated, and reversible before it takes effect.
Do NOT apply fleet configuration changes until this gate passes. A config change that breaks connectivity cannot be remotely fixed — you must physically access each affected node.Invoke this skill when ANY of these signals are present:
| Signal | Examples |
|---|---|
| Fleet config file change | config.json, fleet.json, node definitions |
| LaunchAgent modification | ~/Library/LaunchAgents/com.fleet.* plist files |
| Daemon settings change | Port, auth, channel config, timeout values |
| NATS configuration | Server URLs, credentials, subject patterns |
| Network/connectivity change | Tailscale config, SSH keys, firewall rules |
| Watchdog configuration | Alert thresholds, check intervals, notification targets |
If even ONE signal is present, this gate fires.
Determine the blast radius before applying anything.
# Review the change scope
# Local-only: changes to this node's daemon, local LaunchAgent, local env
# Fleet-wide: changes to shared config, NATS subjects, auth credentials, protocol
# Check which nodes reference the config being changed
grep -r "CONFIG_KEY_OR_FILE" /path/to/fleet/config/
| Scope | Risk | Required Action |
|---|---|---|
| This node only | Low | Proceed after checks 2-4 |
| Subset of nodes | Medium | Notify affected nodes before applying |
| All nodes | High | Coordinate rollout — apply to one node first, verify, then propagate |
For fleet-wide changes: NEVER apply to all nodes simultaneously. Always canary on one node first, verify connectivity, then roll out to remaining nodes.
Changes that alter communication contracts require advance notification.
Must notify before changing:
Notification method:
# Send config change notification via current working channel
curl -sf -X POST http://127.0.0.1:8855/send -H "Content-Type: application/json" \
-d '{
"target": "TARGET_NODE",
"message": "CONFIG_CHANGE_PENDING: [description of change]. Apply matching change within [timeframe] or connectivity will break.",
"priority": "high"
}'
If notification cannot be delivered (target offline): GATE FAILS for breaking changes. Queue the change for coordinated application when all affected nodes are online.
Every config change must have a rollback path documented before application.
# ALWAYS back up current config before changing
cp config.json config.json.bak.$(date +%s)
# For LaunchAgents
cp ~/Library/LaunchAgents/com.fleet.daemon.plist ~/Library/LaunchAgents/com.fleet.daemon.plist.bak.$(date +%s)
| Reversibility | Examples | Gate Decision |
|---|---|---|
| Easy | Additive config (new field, new node) | PASS |
| Moderate | Changed values with backup | PASS — backup taken |
| Hard | Credential rotation (old creds invalidated) | PASS only with coordinated rollout |
| Impossible | Deleted config without backup | FAIL — take backup first |
Rule: If you cannot articulate the exact rollback steps, the change is not ready to apply.
The most dangerous failure mode: a config change that severs the channel needed to fix it.
Pre-change connectivity baseline:
# Record current channel health BEFORE making changes
bash scripts/fleet-test-fallback.sh ALL_NODES > /tmp/fleet-pre-config-baseline.txt
# After change, compare
bash scripts/fleet-test-fallback.sh ALL_NODES > /tmp/fleet-post-config-check.txt
diff /tmp/fleet-pre-config-baseline.txt /tmp/fleet-post-config-check.txt
High-risk connectivity changes (require extra caution):
For high-risk changes: Apply the change, then IMMEDIATELY run fleet-check on all affected nodes. If any channel drops, revert within 60 seconds using the backup.
fleet-check against canary from another nodefleet-check across all nodesFor connectivity emergencies (fleet partitioned, node unreachable):
config change identified → fleet-config-gate → [apply change] → fleet-post-verification
This gate fires BEFORE any fleet configuration modification. Pair with fleet-post-verification to confirm the change did not introduce regressions.
npx claudepluginhub supportersimulator/multi-fleet --plugin multi-fleetGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.