vpn-deploy
Guided VPN deployment wizard. Use when user says 'deploy VPN', 'deploy my VPN', 'set up VPN', 'install VPN'. Also use when…
VPN troubleshooting decision tree. Use when user reports VPN problems: 'VPN not working', 'can't connect', 'stopped working', 'no internet through VPN', 'slow VPN', 'troubleshoot'. Also use when deployment fails.
$ npx -y skills add Sergei-thinker/vpn-setup --skill vpn-troubleshoot --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/vpn-troubleshootContext preview
The summary Claude sees to decide when to auto-load this skill.
VPN troubleshooting decision tree. Use when user reports VPN problems: 'VPN not working', 'can't connect', 'stopped working', 'no internet through VPN', 'slow VPN', 'troubleshoot'. Also use when deployment fails.
name: vpn-troubleshoot description: "VPN troubleshooting decision tree. Use when user reports VPN problems: 'VPN not working', 'can't connect', 'stopped working', 'no internet through VPN', 'slow VPN', 'troubleshoot'. Also use when deployment fails."
Decision tree for diagnosing and fixing VPN infrastructure problems. For beginners — specific commands and solutions, not abstract methodology.
Use when the user reports ANY VPN problem:
DIAGNOSE BEFORE FIXING. RUN THE COMMAND BEFORE CLAIMING THE RESULT.
Never suggest a fix without first running diagnostics. Never claim "fixed" without verifying.
Run: `python ssh_exec.py status`
| Result | Diagnosis | Action | |--------|-----------|--------| | Success (shows xray info) | SSH works | Go to Step 2 | | "Connection refused" | Port blocked or SSH not running | Go to Branch A | | "Authentication failed" | Wrong credentials | Go to Branch B | | "Connection timed out" | VPS down or IP wrong | Go to Branch C | | "No such file: .env" | Missing config | Tell user to create `.env` from `.env.example` |
1. Check current SSH port in `.env` (`VPN_SSH_PORT`) 2. If port is 22: TSPU often blocks port 22 to foreign IPs
3. If port is 49152 and still refused:
1. Check `.env` for `VPN_SSH_KEY` and `VPN_SSH_PASS` 2. If using key: verify the key file exists at the specified path 3. If using password: ask user to verify password is correct (no extra spaces) 4. Common issue: key is for a different server (user changed VPS but kept old key)
1. Ask user: "Is your VPS running? Check in your provider's dashboard." 2. Try ping: `ping -c 3 <VPN_HOST from .env>` 3. If ping works but SSH doesn't: firewall blocks SSH port 4. If ping fails: VPS is down, IP is wrong, or ISP blocks the IP entirely
---
From `ssh_exec.py status` output, check xray process status.
| Result | Action | |--------|--------| | xray: "running" | Go to Step 3 | | xray: "stopped" or not found | Restart: `python ssh_exec.py restart` | | After restart still not running | Check logs: `python ssh_exec.py logs` |
**Common log errors:**
---
Ask user: "Does your VPN client (v2rayN/Shadowrocket/v2rayNG) show 'Connected'?"
| Result | Action | |--------|--------| | Yes, connected | Go to Step 4 | | No, cannot connect at all | Go to Branch D | | Connects then disconnects | Go to Branch E |
1. **Check which port:** ask which VLESS URI the user imported (port 443, 8443, or 2053) 2. **Try another port:**
3. **If NO port works:**
4. **Client-specific issues:**
1. Check logs: `python ssh_exec.py logs -n 50` 2. Look for repeated connection/disconnection patterns 3. Common cause: TSPU actively probing the connection
---
Ask user: "Open 2ip.ru in your browser. What country does it show?"
| Result | Action | |--------|--------| | Shows VPS country (Sweden/Netherlands/etc) | VPN works correctly. Go to Step 5 for optimization | | Shows Russia | Go to Branch F | | Page doesn't load at all | Go to Branch G |
1. **TUN mode check (critical!):**
2. **Split routing check:**
3. **Core type (v2rayN only):**
1. **DNS issue?**
2. **Routing issue?**
English: Multi-layer VPN system (VLESS Reality + Russian relay VPS + WebRTC) for bypassing Russian internet censorship (ТСПУ/DPI). Designed to be deployed automatically via Claude Code. See below for Russian documentation.
Guided VPN deployment wizard. Use when user says 'deploy VPN', 'deploy my VPN', 'set up VPN', 'install VPN'. Also use when…
Infrastructure security audit for VPN server. Use when user asks 'check security', 'is my VPN safe', 'audit security', 'security…
Post-deployment verification checklist for VPN. Use AUTOMATICALLY after any deployment action (deploy, rebuild, restart) and…