Purpose
Establish a secure, verified path when access is blocked by geo/IP policy, then resume the blocked workflow safely and audibly.
Primary outcomes:
- detect and classify block behavior,
- switch to a valid tunnel path with explicit user consent,
- verify public IP, region, and DNS safety posture,
- re-run blocked task with bounded retries,
- return an auditable connection report.
This is an orchestration skill. It does not guarantee legal access to restricted services.
Required Installed Skills
Core diagnostics/orchestration:
shell-scripting (inspected latest: 1.0.0)
curl-http (inspected latest: 1.0.0)
Tunnel path options (at least one):
- provider CLI path (NordVPN / Mullvad / ExpressVPN) via shell orchestration
wireguard (inspected latest: 1.0.0)
tailscale (inspected latest: 1.0.0)
Safety and verification extensions:
dns (inspected latest: 1.0.0)
ipinfo (inspected latest: 1.0.0)
moltguard (inspected latest: 6.0.2, optional but recommended)
Install/update:
npx -y clawhub@latest install shell-scripting
npx -y clawhub@latest install curl-http
npx -y clawhub@latest install wireguard
npx -y clawhub@latest install tailscale
npx -y clawhub@latest install dns
npx -y clawhub@latest install ipinfo
npx -y clawhub@latest install moltguard
npx -y clawhub@latest update --all
Verify:
npx -y clawhub@latest list
Required Credentials and Access
Required access:
- valid account/session for selected tunnel path
- local executable for selected path (
nordvpn/mullvad/expressvpn or wg or tailscale)
Optional keys:
MOLTGUARD_API_KEY (if MoltGuard remote detection mode is enabled)
IPINFO_TOKEN (optional, higher quota geolocation verification)
Preflight:
command -v nordvpn || command -v mullvad || command -v expressvpn || command -v wg || command -v tailscale
echo "$MOLTGUARD_API_KEY" | wc -c
echo "$IPINFO_TOKEN" | wc -c
Mandatory behavior:
- Never fail silently on missing keys/auth.
- Always return
MissingAPIKeys and/or MissingCredentials with blocked stages.
- Continue with non-blocked diagnostics and mark output as
Partial when needed.
Compliance Gate (Mandatory)
Before any tunnel switch, confirm and record:
- user authorization to modify network routing,
- acknowledgment of legal/terms responsibility,
- stated purpose for geo-switch (testing, parity checks, privacy hardening).
If acknowledgment is missing:
- do not execute switching commands,
- return diagnostics-only output.
Inputs the LM Must Collect First
blocked_url or blocked_endpoint
blocked_task_name (example: prediction-market-arbitrage)
target_region
tunnel_path (provider-cli, wireguard, tailscale-exit-node)
provider_or_profile (provider name, WG profile, or exit-node name)
risk_mode (diagnose-only, switch-and-verify, switch-and-resume)
kill_switch_required (yes/no)
max_retries (default: 2)
Do not execute switching before tunnel path and target region are explicit.
Tool Responsibilities
shell-scripting
Use as control plane:
- executable detection,
- connect/disconnect wrappers,
- retry and cleanup logic,
- deterministic logging.
curl-http
Use for protocol-level evidence:
- baseline and post-switch HTTP checks,
403/geo-block signature capture,
- header and status comparisons.
wireguard
Use when deterministic profile-based tunnels are required:
- controlled profile activation,
- route and AllowedIPs sanity expectations,
- DNS handling awareness in tunnel config.
tailscale
Use for tailnet and exit-node path:
tailscale up --exit-node=<node>,
- connectivity validation via
tailscale ping/status,
- fast fallback among available exit nodes.
dns
Use for DNS leak and propagation sanity guidance:
- resolver checks,
- authoritative vs cached record reasoning,
- explicit leak-risk interpretation when DNS path remains local.
ipinfo
Use for geo-attestation:
- validate post-switch country/region/ASN,
- compare with baseline,
- provide confidence level for geo-alignment.
moltguard
Use as prompt/tool security guardrail:
- sanitize sensitive prompt/tool content,
- detect prompt-injection patterns in fetched content,
- reduce accidental secret leakage in workflow logs.
Important limitation:
- MoltGuard is not a VPN manager and not a full network leak detector.
Canonical Causal Signal Chain
Block Detection
- baseline request to blocked endpoint,
- classify as
geo_block, ip_block, auth_block, or other_http_error.
Baseline Snapshot
- capture pre-switch public IP, country, and resolver context.
Tunnel Path Selection
- choose one path:
- provider CLI,
- WireGuard profile,
- Tailscale exit node.
- verify binary/auth/profile availability before connect.
Tunnel Activation
- connect selected path,
- confirm session state from tool output,
- enforce kill-switch preference if available.
Geo and IP Verification
- compare pre/post public IP,
- verify target country best-effort (
ipinfo.io + optional token),
- record confidence if country mismatches.
DNS Safety Check
- check resolver behavior and detect obvious DNS bypass patterns,
- flag risk if DNS appears untunneled in full-tunnel expectation.
Access Retest
- retry blocked endpoint,
- compare HTTP status/content signatures against baseline.
Task Resumption
- if retest passes, resume blocked workflow automatically (
switch-and-resume mode),
- otherwise rotate endpoint/profile once within retry budget and stop with evidence.
Suggested verification commands:
curl -s ifconfig.me
curl -s https://ipinfo.io/json
curl -I "${BLOCKED_URL}"
Leak and Safety Checks
Minimum checks before success:
- public IP changed,
- target country aligned (or deviation explicitly explained),
- endpoint moved from blocked to reachable/expected-auth state,
- DNS path does not contradict tunnel expectations,
- no unresolved high-risk MoltGuard warning (if enabled).
If kill-switch is required but not supported/verified:
- return
Needs Review and avoid high-risk task resumption.
Output Contract
Always return:
BlockDiagnosis
- block type
- baseline HTTP evidence
TunnelPath
- selected path and rationale
- provider/profile/exit node
TunnelStatus
- connect state
- pre/post IP
- target region match
DNSSafety
- resolver observation
- leak risk assessment (
low|medium|high)
SecurityStatus
- MoltGuard mode (
enabled, gateway-only, disabled)
- unresolved warnings
AccessRetest
- post-switch result
- improvement vs baseline
TaskResumption
- resumed or blocked
- reason
NextActions
- exact commands or account steps for unresolved blockers
Quality Gates
Before final output, verify:
- diagnosis is evidence-based,
- pre/post network evidence is present,
- retry count respected,
- missing credentials/keys clearly disclosed,
- provider/path limitations explicitly stated.
If any gate fails, return Needs Revision with concrete missing checks.
Failure Handling
- Missing tunnel binary/profile: return
MissingCredentials with concrete install/profile steps.
- Missing VPN account/auth session: return
MissingCredentials, skip switching stage.
- Missing
MOLTGUARD_API_KEY in detection mode: return MissingAPIKeys, continue with gateway-only or disabled mode.
- Tunnel connected but geo mismatch persists: one bounded retry with different endpoint/profile, then stop.
- Endpoint still blocked after retry: return full evidence bundle and manual-decision path.
Guardrails
- Never claim legal or terms compliance on behalf of user.
- Never claim secure state without pre/post verification.
- Never unbounded-loop region hopping.
- Never hide ambiguous or failed access states.
1---2name: vpn-23description: Meta-skill for secure network tunnel setup, geo-access diagnostics, and leak-aware task resumption by orchestrating shell-scripting, curl-http, wireguard, tailscale, dns, ipinfo, and moltguard. Use when users need controlled VPN switching, region verification, DNS safety checks, and automatic retry of previously blocked workflows.4---56# Purpose78Establish a secure, verified path when access is blocked by geo/IP policy, then resume the blocked workflow safely and audibly.910Primary outcomes:111. detect and classify block behavior,122. switch to a valid tunnel path with explicit user consent,133. verify public IP, region, and DNS safety posture,144. re-run blocked task with bounded retries,155. return an auditable connection report.1617This is an orchestration skill. It does not guarantee legal access to restricted services.1819# Required Installed Skills2021Core diagnostics/orchestration:22- `shell-scripting` (inspected latest: `1.0.0`)23- `curl-http` (inspected latest: `1.0.0`)2425Tunnel path options (at least one):26- provider CLI path (NordVPN / Mullvad / ExpressVPN) via shell orchestration27- `wireguard` (inspected latest: `1.0.0`)28- `tailscale` (inspected latest: `1.0.0`)2930Safety and verification extensions:31- `dns` (inspected latest: `1.0.0`)32- `ipinfo` (inspected latest: `1.0.0`)33- `moltguard` (inspected latest: `6.0.2`, optional but recommended)3435Install/update:3637```bash38npx -y clawhub@latest install shell-scripting39npx -y clawhub@latest install curl-http40npx -y clawhub@latest install wireguard41npx -y clawhub@latest install tailscale42npx -y clawhub@latest install dns43npx -y clawhub@latest install ipinfo44npx -y clawhub@latest install moltguard45npx -y clawhub@latest update --all46```4748Verify:4950```bash51npx -y clawhub@latest list52```5354# Required Credentials and Access5556Required access:57- valid account/session for selected tunnel path58- local executable for selected path (`nordvpn`/`mullvad`/`expressvpn` or `wg` or `tailscale`)5960Optional keys:61- `MOLTGUARD_API_KEY` (if MoltGuard remote detection mode is enabled)62- `IPINFO_TOKEN` (optional, higher quota geolocation verification)6364Preflight:6566```bash67command -v nordvpn || command -v mullvad || command -v expressvpn || command -v wg || command -v tailscale68echo "$MOLTGUARD_API_KEY" | wc -c69echo "$IPINFO_TOKEN" | wc -c70```7172Mandatory behavior:73- Never fail silently on missing keys/auth.74- Always return `MissingAPIKeys` and/or `MissingCredentials` with blocked stages.75- Continue with non-blocked diagnostics and mark output as `Partial` when needed.7677# Compliance Gate (Mandatory)7879Before any tunnel switch, confirm and record:80- user authorization to modify network routing,81- acknowledgment of legal/terms responsibility,82- stated purpose for geo-switch (testing, parity checks, privacy hardening).8384If acknowledgment is missing:85- do not execute switching commands,86- return diagnostics-only output.8788# Inputs the LM Must Collect First8990- `blocked_url` or `blocked_endpoint`91- `blocked_task_name` (example: `prediction-market-arbitrage`)92- `target_region`93- `tunnel_path` (`provider-cli`, `wireguard`, `tailscale-exit-node`)94- `provider_or_profile` (provider name, WG profile, or exit-node name)95- `risk_mode` (`diagnose-only`, `switch-and-verify`, `switch-and-resume`)96- `kill_switch_required` (`yes/no`)97- `max_retries` (default: 2)9899Do not execute switching before tunnel path and target region are explicit.100101# Tool Responsibilities102103## shell-scripting104105Use as control plane:106- executable detection,107- connect/disconnect wrappers,108- retry and cleanup logic,109- deterministic logging.110111## curl-http112113Use for protocol-level evidence:114- baseline and post-switch HTTP checks,115- `403`/geo-block signature capture,116- header and status comparisons.117118## wireguard119120Use when deterministic profile-based tunnels are required:121- controlled profile activation,122- route and AllowedIPs sanity expectations,123- DNS handling awareness in tunnel config.124125## tailscale126127Use for tailnet and exit-node path:128- `tailscale up --exit-node=<node>`,129- connectivity validation via `tailscale ping`/status,130- fast fallback among available exit nodes.131132## dns133134Use for DNS leak and propagation sanity guidance:135- resolver checks,136- authoritative vs cached record reasoning,137- explicit leak-risk interpretation when DNS path remains local.138139## ipinfo140141Use for geo-attestation:142- validate post-switch country/region/ASN,143- compare with baseline,144- provide confidence level for geo-alignment.145146## moltguard147148Use as prompt/tool security guardrail:149- sanitize sensitive prompt/tool content,150- detect prompt-injection patterns in fetched content,151- reduce accidental secret leakage in workflow logs.152153Important limitation:154- MoltGuard is not a VPN manager and not a full network leak detector.155156# Canonical Causal Signal Chain1571581. `Block Detection`159- baseline request to blocked endpoint,160- classify as `geo_block`, `ip_block`, `auth_block`, or `other_http_error`.1611622. `Baseline Snapshot`163- capture pre-switch public IP, country, and resolver context.1641653. `Tunnel Path Selection`166- choose one path:167 - provider CLI,168 - WireGuard profile,169 - Tailscale exit node.170- verify binary/auth/profile availability before connect.1711724. `Tunnel Activation`173- connect selected path,174- confirm session state from tool output,175- enforce kill-switch preference if available.1761775. `Geo and IP Verification`178- compare pre/post public IP,179- verify target country best-effort (`ipinfo.io` + optional token),180- record confidence if country mismatches.1811826. `DNS Safety Check`183- check resolver behavior and detect obvious DNS bypass patterns,184- flag risk if DNS appears untunneled in full-tunnel expectation.1851867. `Access Retest`187- retry blocked endpoint,188- compare HTTP status/content signatures against baseline.1891908. `Task Resumption`191- if retest passes, resume blocked workflow automatically (`switch-and-resume` mode),192- otherwise rotate endpoint/profile once within retry budget and stop with evidence.193194Suggested verification commands:195196```bash197curl -s ifconfig.me198curl -s https://ipinfo.io/json199curl -I "${BLOCKED_URL}"200```201202# Leak and Safety Checks203204Minimum checks before success:205- public IP changed,206- target country aligned (or deviation explicitly explained),207- endpoint moved from blocked to reachable/expected-auth state,208- DNS path does not contradict tunnel expectations,209- no unresolved high-risk MoltGuard warning (if enabled).210211If kill-switch is required but not supported/verified:212- return `Needs Review` and avoid high-risk task resumption.213214# Output Contract215216Always return:217218- `BlockDiagnosis`219 - block type220 - baseline HTTP evidence221222- `TunnelPath`223 - selected path and rationale224 - provider/profile/exit node225226- `TunnelStatus`227 - connect state228 - pre/post IP229 - target region match230231- `DNSSafety`232 - resolver observation233 - leak risk assessment (`low|medium|high`)234235- `SecurityStatus`236 - MoltGuard mode (`enabled`, `gateway-only`, `disabled`)237 - unresolved warnings238239- `AccessRetest`240 - post-switch result241 - improvement vs baseline242243- `TaskResumption`244 - resumed or blocked245 - reason246247- `NextActions`248 - exact commands or account steps for unresolved blockers249250# Quality Gates251252Before final output, verify:253- diagnosis is evidence-based,254- pre/post network evidence is present,255- retry count respected,256- missing credentials/keys clearly disclosed,257- provider/path limitations explicitly stated.258259If any gate fails, return `Needs Revision` with concrete missing checks.260261# Failure Handling262263- Missing tunnel binary/profile: return `MissingCredentials` with concrete install/profile steps.264- Missing VPN account/auth session: return `MissingCredentials`, skip switching stage.265- Missing `MOLTGUARD_API_KEY` in detection mode: return `MissingAPIKeys`, continue with gateway-only or disabled mode.266- Tunnel connected but geo mismatch persists: one bounded retry with different endpoint/profile, then stop.267- Endpoint still blocked after retry: return full evidence bundle and manual-decision path.268269# Guardrails270271- Never claim legal or terms compliance on behalf of user.272- Never claim secure state without pre/post verification.273- Never unbounded-loop region hopping.274- Never hide ambiguous or failed access states.