mac-app-firewall
Mac app firewall with Kilobat
Kilobat saves rules locally and enforces them with its signed network filter, which the user turns on in the app (Kilobat Pro). The CLI and MCP tools change the same rules the app uses. Every change here needs the user's yes: name the exact rule first. The kilobat skill lists the general rules.
Commands need CLI 0.5 (kilobat --version); if one is unknown, suggest brew upgrade kilobat.
1. Read the current policy
kilobat rules --json (MCP list_rules) returns the active profile, newApps (allow, ask or block), allowApple, saved app rules, temporaryRules, connectionRules (one app to one host), blockedHosts (blocked for every app), the size of an imported blocklist and filteringActive. When filteringActive is false or null, rules are saved but not enforced: say "saved", not "blocked". In the Unrestricted profile every app is allowed; rules need Travel or Work.
2. How apps without a rule are treated
kilobat settings new-apps allow|ask|block (MCP set_new_app_mode):
allow: apps without a rule connect. Block rules and blocked hosts still apply.ask: an app's first connections are held, and the Kilobat app asks the user to allow or block it, showing its signer, path and destinations. Unanswered connections give up after a minute and the app asks again. If the Kilobat app isn't running, new apps are allowed rather than held.block: only apps with an allow rule connect. Good for a phone hotspot or a strict work setup; warn that new apps fail silently until allowed.
kilobat settings apple-software on lets Apple's own software (macOS services, Safari, Mail…) through when asking or blocking, which keeps updates, iCloud and the system working. On a hotspot it also lets iCloud and software updates use data; mention that.