snowclaw network
SPCS denies all outbound traffic by default. snowclaw network manages the allowlist of external hosts that your service is permitted to reach, and applies them as Snowflake network rules and external access integrations.
State lives in .snowclaw/network-rules.json (committed to git). Two modes:
- Allowlist (default, safe) — only detected/approved hosts are permitted.
- Allow-all (opt-in, behind a red-warning confirm) —
0.0.0.0:443/0.0.0.0:80permit everything, preserving your saved allowlist so you can switch back.
list
snowclaw network list
Shows the saved allowlist and the current egress mode. Reads from .snowclaw/network-rules.json.
add
snowclaw network add api.example.com
snowclaw network add api.example.com:443
Adds a host (optionally with a port) to the saved allowlist and prompts to apply changes to Snowflake immediately.
In allow-all mode, the rule is persisted but the CLI prints a yellow note that it won't take effect until you run restrict.
remove
snowclaw network remove api.example.com
Removes a host from the saved allowlist and prompts to apply.
detect
snowclaw network detect
Auto-detects required rules from your openclaw.json — scans provider base URLs, channel hosts (slack.com, api.telegram.org, etc.), and tool hostnames. Always includes *.snowflakecomputing.com:443 for Cortex.
Shows a diff against your current saved list and optionally saves + applies the detected rules.
snowclaw deploy runs detect + diff automatically in allowlist mode.
apply
snowclaw network apply
Pushes the currently saved allowlist (or the allow-all rule, depending on mode) to Snowflake. Runs via REST API.
The network rule and external access integration are created once, then altered on subsequent applies (ALTER NETWORK RULE … SET VALUE_LIST = (…)). That means changes take effect without redeploying the SPCS service — the rule object identity is preserved so the EAI binding stays valid.
allow-all
snowclaw network allow-all
Switches to unrestricted-egress mode. Applies VALUE_LIST = ('0.0.0.0:443', '0.0.0.0:80') — Snowflake's documented catch-all pattern, which only supports ports 443 and 80.
Behind a red warning panel + explicit confirm (defaults to "No"). Your saved allowlist is preserved so restrict restores it.
restrict
snowclaw network restrict
Disables allow-all and re-applies your saved allowlist. One-command way back to safety.