sing-box-node-check

Validates sing-box proxy node configurations after port, UUID, or certificate changes.

Updated Jul 3, 2026
One-click install
npx skills add https://github.com/CHENHUI-X/toolbox --skill sing-box-node-check-chenhui-x
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sing-box-node-check
Source: https://github.com/CHENHUI-X/toolbox/tree/main/custom-skills/devops/sing-box-node-check
Command: npx skills add https://github.com/CHENHUI-X/toolbox --skill sing-box-node-check-chenhui-x

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? After changing a sing-box proxy node configuration (port, UUID, password, certificate, or service restart), nodes can silently fail because subscription parameters drift out of sync with the server config, firewalls block new ports, or certificates expire. This Skill provides a mandatory post-change checklist that catches these silent failures before users notice. ## Core Features & Use Cases - Config Consistency Verification: Compares subscription output against sb.json for UUIDs, passwords, Reality keys, short-ids, and WebSocket paths across VLESS, VMess, TUIC, Hysteria2, and AnyTLS inbounds. - Three-Layer Port Checks: Verifies sing-box is listening, UFW allows the port, and GCP firewall rules permit traffic, including the TCP/UDP distinction. - Certificate & Reachability Validation: Checks VMess TLS certificate expiry and confirms external reachability via conntrack [ASSURED] entries rather than unreliable local loopback tests. - Use Case: After rotating a UUID on a VLESS node, run the full checklist to sync the VMess ws path, update the subscription, restart services, and confirm external connectivity. ## Quick Start Run the full sing-box node verification checklist after I changed the VLESS port and UUID on my GCP server.

Frequently Asked Questions about sing-box-node-check

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a sing-box node still works after changing the port?

Check three layers: confirm sing-box listens on the new port with ss -tlnp and ss -ulnp, allow the port in UFW, and add a GCP firewall rule for it. Then verify external reachability via conntrack [ASSURED] entries rather than testing your own public IP locally.

Why does my VMess node silently stop working after changing the UUID?

The VMess WebSocket transport path embeds the UUID, so changing the UUID without updating ws-opts.path breaks the node silently. You must manually sync the path in both the subscription and sb.json transport configuration.

Does changing a TUIC password require updating anything else?

Yes, TUIC uses two credentials: uuid and password. Both fields must be updated together in the server config and subscription, unlike Hysteria2 or AnyTLS which only use a password.

Why does my proxy pass local tests but fail from external networks?

GCP does not support hairpin NAT, so testing your own public IP from the same machine gives unreliable results. Check /proc/net/nf_conntrack for external IPs with [ASSURED] entries, which confirm true bidirectional connectivity.

What causes Reality handshake x509 errors on sing-box nodes?

Reality x509 errors occur when the subscription's sni/servername no longer matches sb.json, often after an external script or second machine modified the config. Diff sb.json against subscription parameters and sync the subscription to the current server values.